]> git.ipfire.org Git - thirdparty/gcc.git/blame - libcpp/ChangeLog
alias.c (record_set, [...]): Constify.
[thirdparty/gcc.git] / libcpp / ChangeLog
CommitLineData
a206413a
UB
12007-07-04 Uros Bizjak <ubizjak@gmail.com>
2
3 * traditional.c (_cpp_scan_out_logical_line): Initialize
4 fmacro.args, fmacro.node, fmacro.offset, fmacro.line and
5 fmacro.args to prevent 'may be used uninitialized' warning.
6
c77cd3d1
UB
72007-07-03 Uros Bizjak <ubizjak@gmail.com>
8
9 * include/cpplib.h (CPP_N_WIDTH_MD, CPP_N_MD_W, CPP_N_MD_Q):
10 Add new constants.
11 * expr.c (interpret_float_suffix): Process 'w', 'W', 'q' and 'Q'
12 suffixes. Return CPP_N_MD_W for 'w' or 'W' suffixes and CPP_N_MD_Q
13 for 'q' or 'Q' suffixes.
14
66938a1d
DS
152007-06-17 Danny Smith <dannysmith@users.sourceforge.net
16
e1311401 17 * files.c (open_file): Correct typo.
66938a1d 18
71995ede
VP
192007-06-16 Vladimir Prus <vladimir@codesourcery.com>
20
e1311401 21 * files.c (open_file): Prevent the call
71995ede
VP
22 for stat from overwriting errno.
23
84152c25
VP
242007-06-09 Vladimir Prus <vladimir@codesourcery.com>
25
e1311401 26 * files.c (open_file): Account for the
84152c25
VP
27 fact that on windows, opening a directory gives
28 EACCES.
29
f7fd775f
JW
302007-06-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
31
32 PR preprocessor/23479
33 * expr.c (cpp_classify_number): Implement 0b-prefixed binary
34 integer constants.
35 (append_digit): Likewise.
36 * include/cpplib.h: Add CPP_N_BINARY, to be used for 0b-prefixed
37 binary integer constants.
38
ed0e74e0
DK
392007-05-31 Dave Korn <dave.korn@artimi.com>
40
41 PR preprocessor/14331
42 * lex.c (_cpp_get_fresh_line): Don't warn if no newline at EOF.
43
a702045a
OW
442007-05-24 Ollie Wild <aaw@google.com>
45
46 * macro.c (_cpp_builtin_macro_text): Handle BT_COUNTER.
47 * pch.c (cpp_write_pch_deps): Save __COUNTER__ state.
48 (cpp_write_pch_state): Save __COUNTER__ state.
49 (cpp_valid_state): Check valid __COUNTER__ state.
50 (cpp_read_state): Read new __COUNTER__ state.
51 * include/cpplib.h (enum builtin_type): Add BT_COUNTER enumerator.
52 * init.c (builtin_array): Add __COUNTER__/BT_COUNTER.
53 * internal.h (struct cpp_reader): Add counter member.
54
126e073b
SM
552007-05-23 Simon Martin <simartin@users.sourceforge.net>
56
57 PR preprocessor/20077
58 * macro.c (create_iso_definition): Fixed the method to determine
59 whether the token-pasting operator appears at the beginning or the end
60 of a macro.
61
0b4cafec
ILT
622007-05-21 Ian Lance Taylor <iant@google.com>
63
64 * internal.h (struct cpp_reader): Add new fields:
65 nonexistent_file_hash and nonexistent_file_ob.
66 * files.c: Include "obstack.h".
67 (find_file_in_dir): Before trying to open the file, look up the
68 path name in the hash table of nonexistent files. After failing
69 to open the file, add the path name to the hash table.
70 (_cpp_find_file): Cache the results of looking up the file name
71 starting with the quote and bracket chain heads, if we can.
72 (nonexistent_file_hash_eq): New static function.
73 (_cpp_init_files): Initialize pfile->nonexistent_file_hash and
74 pfile->nonexistent_file_ob.
75 (_cpp_cleanup_files): Free pfile->nonexistent_file_hash and
76 pfile->nonexistent_file_ob.
77
30e04921
JJ
782007-05-14 Janis Johnson <janis187@us.ibm.com>
79
5a6bb57e
JJ
80 * expr.c (cpp_classify_number): Warn about dfp constant for -pedantic.
81
30e04921
JJ
82 PR c/31924
83 * expr.c (interpret_float_suffix): Check for invalid suffix.
84
22a8a52d
EC
852007-05-02 Eric Christopher <echristo@apple.com>
86
87 * expr.c (num_div_op): Don't overflow if the result is
88 zero.
89
fca35e1b
TT
902007-05-02 Tom Tromey <tromey@redhat.com>
91
92 PR preprocessor/28709:
93 * macro.c (paste_tokens): Remove PASTE_LEFT from the old lhs.
94
4cd97075
MM
952007-03-30 Michael Meissner <michael.meissner@amd.com>
96
97 * directives.c (lex_macro_node_from_str): Fix alloca call to be
98 type correct.
99
121de39f
RH
1002007-03-30 Richard Henderson <rth@redhat.com>
101
102 * directives.c (lex_macro_node_from_str): New.
103 (cpp_push_definition, cpp_pop_definition): New.
104 * include/cpplib.h (cpp_push_definition, cpp_pop_definition): Declare.
105
4fcb360b
BM
1062007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
107
108 * Makefile.in: Add dummy install-pdf target.
109
67e64439
TT
1102007-01-30 Tom Tromey <tromey@redhat.com>
111
112 PR preprocessor/30468:
113 * mkdeps.c (apply_vpath): Strip successive '/'s if we stripped
114 './'.
115
ee380365
TT
1162007-01-30 Tom Tromey <tromey@redhat.com>
117
118 PR preprocessor/29966:
119 * macro.c (lex_expansion_token): Save and restore cpp_reader's
120 cur_token.
121 (_cpp_create_definition): Don't restore cur_token here.
122 * lex.c (_cpp_lex_token): Added assertion.
123
024abeb3
TT
1242007-01-27 Tom Tromey <tromey@redhat.com>
125
126 * configure: Rebuilt.
127
ee1c2a10
TT
1282007-01-12 Tom Tromey <tromey@redhat.com>
129
130 PR preprocessor/28227:
131 * directives.c (lex_macro_node): Added 'is_def_or_undef'
132 argument.
133 (do_define): Update.
134 (do_undef): Update.
135 (do_ifdef): Update.
136 (do_ifndef): Update.
137
67214c16
PB
1382007-01-11 Paolo Bonzini <bonzini@gnu.org>
139
140 * configure: Regenerate.
141
1aa6ca40
PB
1422007-01-11 Paolo Bonzini <bonzini@gnu.org>
143
144 * configure: Regenerate.
145
705e2d28
TT
1462007-01-04 Tom Tromey <tromey@redhat.com>
147
148 PR preprocessor/28165:
149 * internal.h (cpp_in_primary_file): New function.
150 * directives.c (do_include_next): Use cpp_in_primary_file.
151 (do_pragma_once): Likewise.
152 (do_pragma_system_header): Likewise.
153
7af45bd4
ILT
1542006-12-29 Ian Lance Taylor <iant@google.com>
155
156 * lex.c (_cpp_clean_line): Add uses of __builtin_expect. Don't
157 look backward at the end of the line unless we saw a backslash.
158
9d30f270
JJ
1592006-12-29 Jakub Jelinek <jakub@redhat.com>
160
161 PR preprocessor/29612
162 * directives.c (do_linemarker): Set pfile->buffer->sysp always, not
163 only when new_sysp is non-zero.
164
30b0edc0
TT
1652006-12-28 Tom Tromey <tromey@redhat.com>
166
167 PR preprocessor/30001:
168 * charset.c (_cpp_convert_input): Check that to.len is greater
169 than zero.
170
85d9c13c
TS
1712006-11-20 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
172
173 * configure.ac (need_64bit_hwint): Need 64bit hwint for SPU.
83cc06b2 174 * configure: Rebuilt.
85d9c13c 175
dfafdaa6
DG
1762006-11-01 Douglas Gregor <doug.gregor@gmail.com>
177
178 * include/cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X
179 for experimental C++0x mode.
180 * init.c (lang_defaults): Add defaults for C++0x modes. C++0x has
181 adopted the preprocessor changes introduced in C99.
182
0f45f0f5
JM
1832006-10-29 Joseph Myers <joseph@codesourcery.com>
184
185 * configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux*
186 depending on --enable-targets=all.
187 * configure: Regenerate.
188
de000d22
JJ
1892006-10-12 Jakub Jelinek <jakub@redhat.com>
190
191 PR preprocessor/28709
192 * macro.c (paste_tokens): Do error reporting here, use BUF with the
193 spelled LHS token as opposed to spelling it again.
194 (paste_all_tokens): Don't report errors here, just break on failure.
195
b5422ad7
BM
1962006-10-10 Brooks Moses <bmoses@stanford.edu>
197
198 * Makefile.in: Added empty "pdf" target.
199
aaf50ff2
GK
2002006-09-22 Geoffrey Keating <geoffk@apple.com>
201
202 * configure.ac: Make need_64_bit_hwint case for x86-darwin
203 match exactly the glob in gcc/config.gcc.
204 * configure: Regenerate.
205
c663e301
JM
2062006-09-13 Joseph S. Myers <joseph@codesourcery.com>
207
208 PR c/28768
209 PR preprocessor/14634
210 * lex.c (lex_string): Pedwarn for unterminated literals.
211
f7288899
EC
2122006-09-08 Eric Christopher <echristo@apple.com>
213
214 * configure.ac: Add 64-bit HWI support for i?86-darwin.
215
b52dbbf8
SE
2162006-08-14 Steve Ellcey <sje@cup.hp.com>
217
218 PR c++/28288
219 PR c++/14556
220 * include/cpplib.h: Remove <?, >?, <?=, and >?= tokens.
221 (CPP_LAST_EQ): Change.
222 (CPP_LAST_PUNCTUATOR): Change.
223 * expr.c (cpp_operator): Remove MIN and MAX.
224 (reduce): Remove CPP_MIN and CPP_MAX.
225 (num_binary_op): Ditto.
226 * lex.c (_cpp_lex_direct): Ditto.
227 (cpp_avoid_paste): Remove ? as legal symbol after > or <.
228
1c90c6f9
JJ
2292006-06-09 Jakub Jelinek <jakub@redhat.com>
230
231 PR preprocessor/27746
232 * directives.c (do_pragma): Handle pragma with valid namespace
233 and invalid name coming from macro expansion.
234 * directives.c (destringize_and_run): Initialize next field in
235 context.
236
237 PR c/27747
238 PR c++/27748
239 * directives.c (destringize_and_run): Set NO_EXPAND on the
240 tokens.
241
242 * macro.c (_cpp_backup_tokens): Fix comment typo.
243
5c3c3683
DJ
2442006-05-31 Daniel Jacobowitz <dan@codesourcery.com>
245
246 * Makefile.in (CATALOGS): Add po/ prefix.
247 * configure: Regenerated.
248
b2bd74bc
CD
2492006-05-23 Carlos O'Donell <carlos@codesourcery.com>
250
251 * Makefile.in: Add install-html target. Add install-html to .PHONY
252
be8ac3e2
GZ
2532006-02-17 Grigory Zagorodnev <grigory_zagorodnev@linux.intel.com>
254
255 * macro.c (_cpp_builtin_macro_text): Handle BT_TIMESTAMP.
256 * files.c (_cpp_get_file_stat): New function.
257 * include/cpplib.h (builtin_type): Add BT_TIMESTAMP.
258 * init.c (builtin_array): Add support for __TIMESTAMP__/BT_TIMESTAMP.
259 * internal.h (_cpp_get_file_stat): Prototype.
260 (struct cpp_buffer): Add timestamp.
261
83900997
JJ
2622006-01-23 Jakub Jelinek <jakub@redhat.com>
263
264 PR preprocessor/25717
265 * init.c (cpp_init_builtins): If __STDC__ will not change value
266 between system headers and other sources, define it as a normal
267 macro rather than a builtin.
268 * macro.c (_cpp_builtin_macro_text) <case BT_STDC>: Only check
269 cpp_in_system_header condition.
270
2712006-01-05 Paolo Bonzini <bonzini@gnu.org>
9220c30c
PB
272
273 * Makefile.in: Use -MMD instead of -MD.
274
bc4071dd
RH
2752006-01-04 Dmitry Kurochkin <dmitry.kurochkin@gmail.com>
276 Richard Henderson <rth@redhat.com>
277
278 Merge from gomp branch:
279 * directives.c (struct pragma_entry): Add is_deferred. Add ident
280 entry to value union.
281 (end_directive): Don't eat the line if in_deferred_pragma.
282 (run_directive): Remove pragma hacks.
283 (insert_pragma_entry): Remove.
284 (new_pragma_entry): New.
285 (register_pragma_1): Split out of register_pragma. Only handle
286 the lookup tree and return the new entry.
287 (cpp_register_pragma): Fill in the pragma entry here.
288 (cpp_register_deferred_pragma): New.
289 (register_pragma_internal): New.
290 (_cpp_init_internal_pragmas): Use register_pragma_internal.
291 (do_pragma): Allow pragma expansion after namespace. For deferred
292 pragmas, don't slurp the line into a string.
293 (destringize_and_run): Save tokens for deferred pragmas.
294 (cpp_handle_deferred_pragma): Remove.
295 * macro.c (builtin_macro): Remove pragma token hack.
296 (_cpp_push_token_context): Rename from push_token_context and export.
297 * internal.h (struct lexer_state): Add pragma_allow_expansion.
298 (_cpp_push_token_context): Declare.
299 * lex.c (_cpp_lex_token): Allow _cpp_handle_directive to return
300 a token. Update the line number correctly if so.
301 (_cpp_lex_direct): Emit CPP_PRAGMA_EOL tokens.
302 (cpp_token_val_index): Return CPP_TOKEN_FLD_PRAGMA for pragmas.
303 * include/cpplib.h (PRAGMA_EOL): New.
304 (CPP_TOKEN_FLD_PRAGMA): New.
305 (struct cpp_token): Add val.pragma.
306 (struct cpp_options): Remove defer_pragmas.
307 (cpp_handle_deferred_pragma): Remove.
308 (cpp_register_deferred_pragma): Declare.
309
d09e893f
JJ
3102006-01-01 Jakub Jelinek <jakub@redhat.com>
311
312 PR c++/25294
313 * directives.c (do_pragma): If pragma line ends with multi-line
314 block comment, end the saved deferred pragma string before that
315 comment. Handle embedded '\0' chars on the pragma line.
316
ab84748a
VR
3172005-12-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
318
319 PR c++/23333
320 * include/cpplib.h: Add PURE_ZERO to flags for the cpp_token structure.
321
ad6ed77e
JG
3222005-12-07 Jon Grimm <jgrimm2@us.ibm.com>
323 Ben Elliston <bje@au.ibm.com>
324
325 * include/cpplib.h (CPP_N_DFLOAT): New.
326 * expr.c (interpret_float_suffix): Identify df, dd, and dl
327 suffixes as decimal floating point constants.
328 (cpp_classify_number): Disallow hexadecimal DFP constants.
329
ba096620 3302005-11-14 Gerald Pfeifer <gerald@pfeifer.com>
bc4071dd 331 Ian Lance Taylor <ian@airs.com>
ba096620
GP
332
333 * include/cpplib.h (struct cpp_callbacks): Annotate error with
334 ATTRIBUTE_FPTR_PRINTF(3,0) instead of ATTRIBUTE_PRINTF(3,0).
335
456b8ce5
UB
3362005-11-09 Per Bothner <per@bothner.com>
337 Uros Bizjak <uros@kss-loka.si>
f7288899 338
456b8ce5
UB
339 PR c/24101
340 * init.c (read_original_filename): Temporarily set
341 state.in_directive before calling _cpp_lex_direct for
342 CPP_HASH tokens.
343
5571f74f
JW
3442005-11-03 James E Wilson <wilson@specifix.com>
345
346 PR preprocessor/24202
347 * files.c (_cpp_pop_file_buffer): Set buffer_valid to false.
348
a63607ed
JM
3492005-11-04 Joseph S. Myers <joseph@codesourcery.com>
350
351 * include/cpplib.h (struct cpp_callbacks): Make error take
352 va_list* parameter.
353 * errors.c (cpp_error): Update call to callback.
354
651ed942
AP
3552005-11-03 Andrew Pinski <pinskia@physics.uc.edu>
356
357 PR preprocessor/22042
358 * macro.c (_cpp_builtin_macro_text): Lower the needed max
359 buffer size.
360 (cpp_quote_string): Don't octalify non printable
361 charactors.
362
178b58b5
JM
3632005-11-03 Joseph S. Myers <joseph@codesourcery.com>
364
365 PR c++/17964
366 * include/cpplib.h (struct cpp_options): Add client_diagnostic.
367 (struct cpp_callbacks): Add error.
368 * errors.c (cpp_error): If client_diagnostic, use error callback.
369 * charset.c (convert_escape): Don't use %03o in diagnostic.
370
3ee5ed11 3712005-10-21 James E Wilson <wilson@specifix.com>
6568f34b
JW
372
373 PR preprocessor/15220
374 * files.c (_cpp_find_file): New parameter angle_brackets. Fix all
375 callers. Pass to open_file_failed.
376 (open_file_failed): New parameter angle_brackets. Fix all callers.
377 Use in print_dep assignment.
378 * init.c (cpp_read_main_file): Pass additional arg to _cpp_find_file.
379 * internal.h (_cpp_find_file): Add new parm to declaration.
f7288899 380
077fc835
KH
3812005-10-08 Kazu Hirata <kazu@codesourcery.com>
382
383 * configure.ac: Require 64-bit int for arm*-*-*eabi*.
384 * configure: Regenerate.
385
cbc43ae0
ILT
3862005-10-04 Ian Lance Taylor <ian@airs.com>
387
388 PR preprocessor/13726
389 * directives.c (check_eol_return_comments): New static function.
390 (parse_include): Add buf parameter. Change all callers.
391 (do_include_common): If not discard comments, turn on
392 save_comments. Pass collected comments to include callback.
393 * include/cpplib.h (struct cpp_callbacks): Add new parameter to
394 include callback: cpp_token list.
395
af15a2fe
JM
3962005-09-20 Joseph S. Myers <joseph@codesourcery.com>
397
398 * include/cpplib.h (struct cpp_options): Add extended_identifiers.
399 * init.c (struct lang_flags, lang_defaults): Add
400 extended_identifiers.
401 (cpp_set_lang): Use it.
402 * lex.c (forms_identifier_p): Check extended_identifiers.
403
f5eab47e
JJ
4042005-08-30 Jakub Jelinek <jakub@redhat.com>
405
406 PR preprocessor/20348
407 PR preprocessor/20356
408 * files.c (_cpp_find_file, search_cache): Revert 2004-06-26 and
409 2004-06-05 changes.
410
467129e6
KG
4112005-07-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
412
413 * configure.ac (ACX_PROG_CC_WARNING_OPTS): add
414 -Wmissing-format-attribute.
415
416 * configure: Regenerate.
417
200031d1
KC
4182005-06-29 Kelley Cook <kcook@gcc.gnu.org>
419
420 * all files: Update FSF address in copyright headers.
421 * makeucnid.c (write_copyright): Update outputted FSF address.
422
f610dd5f
ZW
4232005-06-13 Zack Weinberg <zack@codesourcery.com>
424
425 * configure.ac: Invoke ZW_CREATE_DEPDIR and
426 ZW_PROG_COMPILER_DEPENDENCIES.
427 * aclocal.m4, configure: Regenerate.
428 * Makefile.in (DEPMODE, DEPDIR, depcomp, COMPILE.base, COMPILE):
429 New variables.
430 (distclean): Clean up $(DEPDIR) and its contents.
431 (.c.o): Use $(COMPILE).
432 Include $(DEPDIR)/*.Po for most object->header dependencies.
433
c3f829c1
GDR
4342005-05-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
435
436 * configure.ac: Check declarations for asprintf and vasprintf.
437 * config.in: Regenerate.
438 * configure: Likewise.
439
440 * charset.c (conversion_loop): Use XRESIZEVEC.
441 (convert_no_conversion): Likewise.
442 (convert_using_iconv): Likewise.
443 (init_iconv_desc): Cast return value of alloca.
444 (cpp_host_to_exec_charset): Use XNEWVEC.
445 (emit_numeric_escape): Use XRESIZEVEC.
446 (cpp_interpret_string): Use XNEWVEC.
447 (cpp_interpret_string): Use XRESIZEVEC.
448 (_cpp_interpret_identifier): Cast return value of alloca.
449 (_cpp_convert_input): Use XNEWVEC and XRESIZEVEC.
450 * directives.c (glue_header_name): Use XNEWVEC and XRESIZEVEC.
451 (parse_include): Use XNEWVEC.
452 (insert_pragma_entry): Rename local variable "new" to
f610dd5f 453 "new_entry".
c3f829c1
GDR
454 (save_registered_pragmas): Cast return value of xmemdup.
455 (destringize_and_run): Same for alloca.
456 (parse_assertion): Likewise.
457 (do_assert): Cast allocated storage to proper type.
458 (cpp_define): Likewise.
459 (_cpp_define_builtin): Likewise.
460 (cpp_undef): Likewise.
461 (handle_assertion): Likewise.
462 (cpp_push_buffer): Rename local variable "new" to "new_buffer".
463 * expr.c (CPP_UPLUS): Cast value to type cpp_ttype.
464 (CPP_UMINUS): Likewise.
465 (struct cpp_operator): Rename from struct operator.
466 (_cpp_expand_op_stack): Use XRESIZEVEC.
467 * files.c (pch_open_file): Use XNEWVEC.
468 (pch_open_file): Use XRESIZEVEC.
469 (read_file_guts): Use XNEWVEC and XRESIZEVEC.
470 (dir_name_of_file): Use XNEWVEC.
471 (make_cpp_file): Use XCNEW.
472 (make_cpp_dir): Likewise.
473 (allocate_file_hash_entries): USE XNEWVEC.
474 (cpp_included): Cast return value of htab_find_with_hash.
475 (append_file_to_dir): Use XNEWVEC.
476 (read_filename_string): Likewise. Use XRESIZEVEC too.
477 (read_name_map): Cast return value of alloca. Use XRESIZEVEC.
478 (remap_filename): Use XNEWVEC.
479 (struct pchf_entry): Move definition out of struct pchf_data.
480 (_cpp_save_file_entries): Use XCNEWVAR.
481 (_cpp_read_file_entries): Use XNEWVAR.
482 * identifiers.c (alloc_node): Use XOBNEW.
483 * init.c (cpp_create_reader): Use XCNEW.
484 (cpp_init_builtins): Cast of b->value to enum builtin_type.
485 (read_original_directory): Cast return value of alloca.
486 * lex.c (add_line_note): Use XRESIZEVEC.
487 (warn_about_normalization): Use XNEWVEC.
488 (_cpp_lex_direct): Cast node->directive_index to (enum cpp_ttype).
489 (new_buff): Use XNEWVEC.
490 * line-map.c (linemap_add): Use XRESIZEVEC.
491 * macro.c (builtin_macro): Cast return value of alloca.
492 (paste_tokens): Likewise.
493 (expand_arg): Use XNEWVEC and XRESIZEVEC.
494 (_cpp_save_parameter): Use XRESIZEVEC.
495 (create_iso_definition): Cast allocated storage to proper type.
496 (_cpp_create_definition): Likewise.
497 (cpp_macro_definition): Use XRESIZEVEC.
498 * makedepend.c (add_clm): Use XNEW.
499 (add_dir): Likewise.
500 * mkdeps.c (munge): Use XNEWVEC.
501 (deps_init): Use XCNEW.
502 (deps_add_target): Use XRESIZEVEC.
503 (deps_add_default_target): Cast return value of alloca.
504 (deps_add_dep): Use XRESIZEVEC.
505 (deps_add_vpath): Likewise. Use XNEWVEC too.
506 (deps_restore): Likewise.
507 * pch.c (save_idents): Use XNEW and XNEWVEC.
508 (cpp_save_state): Use XNEW.
509 (count_defs): Cast return value of htab_find.
510 (write_defs): Likewise.
511 (cpp_write_pch_deps): Use XNEWVEC.
512 (collect_ht_nodes): Use XRESIZEVEC.
513 (cpp_valid_state): Use XNEWVEC.
514 (save_macros): Use XRESIZEVEC. Cast return value of xmemdup.
515 * symtab.c (ht_create): Use XCNEW.
516 (ht_lookup_with_hash): Cast return value of obstack_copy0.
517 (ht_expand): Use XCNEWVEC.
518 * system.h (HAVE_DESIGNATED_INITIALIZERS): False if __cplusplus.
519 (bool): Do not define if __cplusplus.
520
1ed17cd5
ZW
5212005-05-12 Zack Weinberg <zack@codesourcery.com>
522
523 * directives.c (#sccs table entry): Mark IN_I, consistent with #ident.
524 (do_sccs): Delete function definition, #define to do_ident.
525 (do_ident): Don't hardwire directive name.
526
5a8c20ce
RK
5272005-05-12 Ryota Kunisawa <kunisawa@access.co.jp>
528
529 PR bootstrap/21230
530 * configure: Regenerate.
531
473c5bc9
AP
5322005-04-27 Andris Pavenis <pavenis@latnet.lv>
533
534 * files.c: Include io.h for DJGPP to get prototype of setmode.
535
c1fc5047
PB
5362005-04-19 Per Bothner <per@bothner.com>
537
538 PR preprocessor/20907
539 * line-map.c (linemap_line_start): Fix bug when we need to increse
540 column_bits but can re-use the current line_map.
541
042630ad
KG
5422005-04-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
543
544 * system.h (fopen, fdopen, freopen): Define these to the unlocked
545 libiberty functions.
546
0d667716
KG
5472005-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
548
549 * configure.ac (libcpp_UNLOCKED_FUNCS): New.
550 (AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for libcpp_UNLOCKED_FUNCS.
551 * system.h (putchar, getc, getchar, clearerr, feof, fileno,
552 fflush, fgetc, fgets, ferror, fread): Redefine to the associated
553 _unlocked function.
554 (fwrite_unlocked): Fix prototype.
1ed17cd5 555
0d667716
KG
556 * configure, config.in: Regenerate.
557
cae064e7
JJ
5582005-04-05 Jakub Jelinek <jakub@redhat.com>
559
560 PR preprocessor/19475
561 * macro.c (create_iso_definition): For < ISO C99, don't
562 pedwarn if there is no whitespace between macro name and its
563 replacement, but the replacement starts with a basic character
564 set character.
565
cbada204
AJ
5662005-03-28 Andreas Jaeger <aj@suse.de>
567
568 * lex.c (warn_about_normalization): Cast field width to int to
569 avoid warning.
570
f42eccdb
JM
5712005-03-19 Joseph S. Myers <joseph@codesourcery.com>
572
573 * configure.ac: Consistently use solaris2.1[0-9]* instead of
574 solaris2.1[0-9].
575 * configure: Regenerate.
576
c79e602b
GK
5772005-03-15 Geoffrey Keating <geoffk@apple.com>
578
579 * charset.c (_cpp_valid_ucn): In identifiers, reject a partial
580 UCN rather than printing an error.
581
50668cf6
GK
5822005-03-14 Geoffrey Keating <geoffk@apple.com>
583
6baba9bb
GK
584 * lex.c (forms_identifier_p): Disable UCNs in C89 mode.
585
5862005-03-14 Geoffrey Keating <geoffk@apple.com>
1ed17cd5 587
50668cf6
GK
588 * init.c (cpp_create_reader): Default warn_normalize to normalized_C.
589 * charset.c: Update for new format of ucnid.h.
590 (ucn_valid_in_identifier): Update for new format of ucnid.h.
591 Add NST parameter, and update it; update callers.
592 (cpp_valid_ucn): Add NST parameter, update callers. Replace abort
593 with cpp_error.
594 (convert_ucn): Pass normalize_state to cpp_valid_ucn.
595 * internal.h (struct normalize_state): New.
596 (INITIAL_NORMALIZE_STATE): New.
597 (NORMALIZE_STATE_RESULT): New.
598 (NORMALIZE_STATE_UPDATE_IDNUM): New.
599 (_cpp_valid_ucn): New.
600 * lex.c (warn_about_normalization): New.
601 (forms_identifier_p): Add normalize_state parameter, update callers.
602 (lex_identifier): Add normalize_state parameter, update callers. Keep
603 the state current.
604 (lex_number): Likewise.
605 (_cpp_lex_direct): Pass normalize_state to subroutines. Check
606 it with warn_about_normalization.
607 * makeucnid.c: New.
608 * ucnid.h: Replace.
609 * ucnid.pl: Remove.
610 * ucnid.tab: Make appropriate for input to makeucnid.c. Remove
611 comments about obsolete version of C++.
612 * include/cpplib.h (enum cpp_normalize_level): New.
613 (struct cpp_options): Add warn_normalize field.
614
47e20491
GK
6152005-03-11 Geoffrey Keating <geoffk@apple.com>
616
617 * directives.c (glue_header_name): Update call to cpp_spell_token.
618 * internal.h (_cpp_interpret_identifier): New.
619 * charset.c (_cpp_interpret_identifier): New.
620 (_cpp_valid_ucn): Allow UCN version of '$'.
621 * lex.c (lex_identifier): Add extra parameter to indicate if initial
622 character was '$' or '\'. Support identifiers with UCNs.
623 (forms_identifier_p): Allow UCNs.
624 (_cpp_lex_direct): Pass extra parameter to lex_identifier.
625 (utf8_to_ucn): New.
626 (cpp_spell_token): Add FORSTRING parameter. Use it.
627 (cpp_token_as_text): Update call to cpp_spell_token.
628 (cpp_output_token): Write UCNs back out.
629 (stringify_arg): Update call to cpp_spell_token.
630 (paste_tokens): Likewise.
631 (cpp_macro_definition): Likewise.
632 * macro.c (stringify_arg): Likewise.
633 (paste_tokens): Likewise.
634 (cpp_macro_definition): Likewise.
635 * include/cpplib.h: Add parameter to cpp_spell_token.
636
73096711
JJ
6372005-03-04 Jakub Jelinek <jakub@redhat.com>
638
639 PR bootstrap/20282
640 PR bootstrap/20305
641 * macro.c (replace_args, cpp_get_token): Copy whole
642 cpp_token_u instead of just cpp_string field from it.
643
2203a881
DP
6442005-02-28 Devang Patel <dpatel@apple.com>
645
646 * directives.c (do_line): Save sysp early before line table is
647 realloc'ed.
1ed17cd5 648
c5ff069d
ZW
6492005-02-20 Zack Weinberg <zack@codesourcery.com>
650
651 PR 18785
652 * charset.c (LAST_POSSIBLY_BASIC_SOURCE_CHAR): New helper macro.
653 (cpp_host_to_exec_charset): New function.
654 * include/cpplib.h: Declare cpp_host_to_exec_charset.
655
04c90eea
DP
6562005-02-19 Devang Patel <dpatel@apple.com>
657
658 * charset.c (_cpp_convert_input): Check '\r' before inserting
659 '\n' at the end.
c5ff069d 660
6da55c00
EC
6612005-02-15 Eric Christopher <echristo@redhat.com>
662
663 PR preprocessor/19077
664 * macro.c (cpp_macro_definition): Move handling of whitespace
665 to PREV_WHITE conditional. Remove overloading of len
666 variable.
667
31c3e631
KH
6682005-02-14 Kazu Hirata <kazu@cs.umass.edu>
669
670 * directives.c, files.c, init.c, internal.h, macro.c, pch.c,
671 traditional.c: Update copyright.
672
be0f1e54
PB
6732005-02-14 Paolo Bonzini <bonzini@gnu.org>
674
675 PR bootstrap/19818
676 * configure.ac: Check for declaration of basename and getopt.
677 * config.in: Regenerate.
678 * configure: Regenerate.
679 * internal.h (ustrcspn): New.
680 * macro.c (create_iso_definition): Fix allocation of memory.
681 (padding_token): Add cast to remove const-ness.
682 * pch.c (cpp_read_state): Use ustrcspn.
683
ecddfb39
MS
6842005-02-08 Mike Stump <mrs@apple.com>
685
686 * files.c (pchf_adder): Remove.
687 (struct pchf_adder_info): Likewise.
688 (_cpp_save_file_entries): Write out all files so that #import works.
689
9fcdd891
JM
6902005-01-23 Joseph S. Myers <joseph@codesourcery.com>
691
692 * configure: Regenerate.
693
ecfd72e7
TS
6942005-01-11 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
695
696 * include/cpplib.h (c_lang): Fix comment to say cpp_create_reader.
697
6c25a4f7 698 * include/cpplib.h: Also update copyright years.
c5ff069d 699
942926ad
GK
7002005-01-03 Geoffrey Keating <geoffk@apple.com>
701
702 * files.c (_cpp_find_file): Add files found by search_path_exhausted
703 to the list of all files.
704
a2566ae9
GDR
7052005-01-01 Gabriel Dos Reis <gdr@integrable-solutions.net>
706
707 * internal.h: Update references to Cpp lib filenames.
708 * directives.c: Likewise.
709 * init.c: Likewise.
710 * macro.c: Likewise.
711 * traditional.c: Likewise.
712
1b449375
EB
7132004-12-15 Eric Botcazou <ebotcazou@libertysurf.fr>
714
715 PR preprocessor/15167
716 * files.c (destroy_cpp_file): New function.
717 (should_stack_file): Make a new file if the
718 compared file is still stacked.
719
28303828
NN
7202004-11-28 Nathanael Nerode <neroden@gcc.gnu.org>
721
c5ff069d 722 PR preprocessor/17610
28303828
NN
723 * directives.c (do_include_common): Error out if an empty filename
724 is given for #include (or #include_next or #import).
725
c812785a
RS
7262004-11-27 Roger Sayle <roger@eyesopen.com>
727 Zack Weinberg <zack@codesourcery.com>
728
729 * internal.h: Replace all uses of uchar with unsigned char.
730 * include/cpp-id-data.h: Likewise. Guard typedef of uchar
731 with !IN_GCC, so uchar is only defined whilst building libcpp.
732
f91eaa01
KC
7332004-11-24 Kelley Cook <kcook@gcc.gnu.org>
734
735 * aclocal.m4: Regenerate.
736
f78ce0c2
RS
7372004-11-24 Roger Sayle <roger@eyesopen.com>
738
739 PR preprocessor/15824
740 * configure.ac: Correct HAVE_UCHAR test to #include <sys/types.h>
741 directly, instead of the non-existant "system.h" and "ansidecl.h".
742 * configure: Regenerate.
743
b5b3e36a 7442004-11-23 Daniel Jacobowitz <dan@codesourcery.com>
c5ff069d 745 Joseph Myers <joseph@codesourcery.com>
b5b3e36a
DJ
746
747 * internal.h (struct lexer_state): Add in_deferred_pragma.
748 * directives.c (struct pragma_entry): Add allow_expansion.
749 (insert_pragma_entry): Take allow_expansion flag.
750 (register_pragma): Likewise.
751 (cpp_register_pragma): Likewise.
752 (_cpp_init_internal_pragmas): Update calls to cpp_register_pragma.
753 (do_pragma): Honor allow_expansion.
754 (cpp_handle_deferred_pragma): Set in_deferred_pragma.
755 * include/cpplib.h (cpp_register_pragma): Update prototype.
756
a8e68029 7572004-11-18 Daniel Jacobowitz <dan@codesourcery.com>
c5ff069d 758 Mark Mitchell <mark@codesourcery.com>
a8e68029
DJ
759
760 * configure.ac (i[34567]86-*-solaris2.1[0-9]*): Set
761 need_64bit_hwint=yes.
762 * configure: Regenerate.
763
50f47ee0
JM
7642004-11-09 Joseph S. Myers <joseph@codesourcery.com>
765
766 * Makefile.in ($(PACKAGE).pot): New rule. Depend on
767 po/$(PACKAGE).pot.
768 (po/$(PACKAGE).pot): Use ":" instead of "," in --keyword
769 arguments. Add keywords _, N_, SYNTAX_ERROR and SYNTAX_ERROR2.
770 Remove local srcdir path from generated file.
771
968e08d6 7722004-11-04 Zack Weinberg <zack@codesourcery.com>
c5ff069d 773 Gerald Pfeifer <gerald@pfeifer.com>
968e08d6
ZW
774
775 * internal.h (HAVE_ICONV): Undefine if we do not have HAVE_ICONV_H
776 as well.
777
3da3d587
ZW
7782004-10-27 Zack Weinberg <zack@codesourcery.com>
779
780 PR 18075
781 * directives.c (do_pragma): Do not defer pragmas which are unknown.
782 (cpp_handle_deferred_pragma): Add cast to silence warning.
783
ac24fc25
JM
7842004-10-14 Joseph S. Myers <jsm@polyomino.org.uk>
785
786 * errors.c (_cpp_begin_message): Print "error: " for errors.
787
7731405b
AJ
7882004-10-10 Andreas Jaeger <aj@suse.de>
789
790 * makedepend.c: Include mkdeps.h for prototype of deps_add_vpath.
791 * Makefile.in (makedepend.o): Add dependency on mkdeps.h.
792
646544e3
AP
7932004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
794
795 * pch.c (cpp_write_pch_state): Remove variable z as it is not
796 used.
797 (cpp_read_state): Remove unused variables, m, d and mac_count.
798
67a74146
PB
7992004-09-29 Per Bothner <per@bothner.com>
800
801 * directives.c (cpp_handle_deferred_pragma): Save, clear and restore
802 cb.line_change. Otherwise do_pragma will call the line_change
803 call-back with a meaningless line number.
804
018a4785
ZW
8052004-09-24 Zack Weinberg <zack@codesourcery.com>
806
807 * configure.ac: Move AC_PROG_MAKE_SET, AC_PROG_INSTALL to
808 programs cluster. Use ACX_PROG_CC_WARNING_OPTS,
809 ACX_PROG_CC_WARNING_ALMOST_PEDANTIC, ACX_PROG_CC_WARNINGS_ARE_ERRORS.
810 * aclocal.m4, configure: Regenerate.
811 * init.c: Include localedir.h.
812 * Makefile.in (WARN_CFLAGS, ALL_CFLAGS): New variables.
813 (DEFS): Delete.
814 (.c.o): Use $(ALL_CFLAGS).
815 (localedir.h, localedir.hs): New rules.
816 (clean): Use rm -rf to remove directories.
817 (distclean): Also delete localedir.h and localedir.hs.
818 (init.o): Update dependencies.
819
88fa57d7
KC
8202004-09-22 Kelley Cook <kcook@gcc.gnu.org>
821
822 * Makefile.in (aclocal.m4): Update dependencies.
823 * configure.ac (AC_CONFIG_MACRO_DIR): New.
824 * aclocal.m4, configure: Regenerate.
825
8f8e9aa5
ZW
8262004-09-17 Zack Weinberg <zack@codesourcery.com>
827
a29f62d9
ZW
828 * charset.c (_cpp_destroy_iconv, emit_numeric_escape)
829 (_cpp_convert_input, _cpp_default_encoding): Add comments.
830 Some other comments in this file also tweaked.
831
8f8e9aa5
ZW
832 * directives.c (do_pragma): Save current buffer position
833 before lexing the pragma keywords; don't call
834 _cpp_backup_tokens in the defer_pragmas case.
835
a2981930
PB
8362004-09-15 Per Bothner <per@bothner.com>
837
838 * include/line-map.h (line_map_start): Add parameter names so
839 preceding comment makes sense.
840 (linemap_add): Remove from comment mention of non-existing parameter.
841
21b11495
ZW
8422004-09-09 Matt Austern <austern@apple.com>
843 Zack Weinberg <zack@codesourcery.com>
844
845 * include/cpplib.h (TTYPE_TABLE): Remove CPP_ and SPELL_
846 prefixes throughout. Add entry for PRAGMA. Remove
847 unnecessary "= 0" from EQ.
848 (enum cpp_ttype): Adjust OP and TK definitions to restore
849 prefixes, via token-paste.
850 (CPP_LAST_EQ, CPP_FIRST_DIGRAPH, CPP_LAST_PUNCTUATOR, CPP_LAST_CPP_OP):
851 Change from #defines to additional cpp_ttype enumerators.
852 (struct cpp_options): Add defer_pragmas.
853 (cpp_handle_deferred_pragma): Prototype new interface.
854
855 * internal.h (struct cpp_reader): Add directive_result.
856 * directives.c (struct pragma_entry): Add is_internal field;
857 give boolean fields type bool.
858 (start_directive): Initialize pfile->directive_result.type.
859 (_cpp_do__Pragma): Likewise.
860 (run_directive): Do not crash if pfile->buffer->prev is NULL.
861 (insert_pragma_entry): Add 'internal' argument; set new->is_internal
862 from it.
863 (register_pragma): New static function, bulk of former
864 cpp_register_pragma here; add 'internal' argument, pass along
865 to insert_pragma_entry.
866 (cpp_register_pragma): Now a wrapper around register_pragma which
867 always passes false for 'internal' argument.
868 (_cpp_init_internal_pragmas): Call register_pragma directly, passing
869 true for 'internal'.
870 (do_pragma): If CPP_OPTION (pfile, defer_pragmas) and this isn't
871 an internal pragma, save text till the end of the line as a CPP_PRAGMA
872 token instead of executing the pragma.
873 (cpp_handle_deferred_pragma): New interface.
874 * lex.c (token_spellings): Adjust OP and TK definitions to
875 match changes to cpplib.h.
876 (_cpp_lex_token): Check for a directive-result token and
877 return it if present.
878 (cpp_token_val_index): Handle CPP_PRAGMA.
879 * macro.c (cpp_builtin_macro_text): Correct comment.
880 (builtin_macro): Handle directive-result tokens from _cpp_do__Pragma.
881
0fd9e8dd
SB
8822004-09-06 Serge Belyshev <belyshev@lubercy.com>
883
884 PR preprocessor/14699
885 * symtab.c (ht_dump_statistics): Change type of sum_of_squares
886 from size_t to double.
887
39b8ce7f
AS
8882004-08-28 Andreas Schwab <schwab@suse.de>
889 Andreas Jaeger <aj@suse.de>
890
891 * configure.ac: Set PACKAGE correctly.
892 * configure: Regenerated.
893
5d1f4b27
PB
8942004-08-25 Paolo Bonzini <bonzini@gnu.org>
895
896 * Makefile.in: Add back top_builddir.
897
078e3ffe
PB
8982004-08-25 Paolo Bonzini <bonzini@gnu.org>
899
900 * configure.ac: Replace Automake macro invocations
901 with manual Autoconf checks and substitutions.
902 * configure: Regenerate.
903 * aclocal.m4: Regenerate.
904 * config.in: Regenerate.
905 * Makefile.am: Removed.
906 * Makefile.in: Heavy simplification and reorganization.
907
b3f8d95d
MM
9082004-08-09 Mark Mitchell <mark@codesourcery.com>
909
910 * configure.ac (arm*-*-eabi*): New target.
911 (arm*-*-symbianelf*): Likewise.
912 * configure: Regenerated.
913
72bb2c39
BI
9142004-07-24 Bernardo Innocenti <bernie@develer.com>
915
916 * internal.h (xnew, xcnew, xnewvec, xcnewvec, xobnew): Remove.
917 * directives.c: Use XNEW-family macros from libiberty.
918 * lex.c: Likewise.
919 * macro.c: Likewise.
920 * cpplib.h (cpp_deps_style): Export enum with name.
921
21b11495 9222004-07-23 Matthias Klose <doko@debian.org>
72bb2c39 923
21b11495 924 * init.c (init_library): Use PACKAGE for the text domain.
85eac2a0 925
a23ee064
AP
9262004-07-16 Andris Pavenis <pavenis@latnet.lv>
927
928 PR preprocessor/16366
929 * internal.h (struct cpp_reader): New field dir_hash.
930 * files.c (make_cpp_dir): Use dir_hash, not file_hash.
931 (_cpp_init_files, _cpp_cleanup_files): Update for new field.
932
a09d4744
NB
9332004-07-04 Neil Booth <neil@duron.akihabara.co.uk>
934
935 PR preprocessor/16192
936 PR preprocessor/15913
937 PR preprocessor/15572
938 * expr.c (_cpp_parse_expr): Handle remaining cases where an
939 expression is missing.
940 * init.c (post_options): Traditional cpp doesn't do // comments.
941
f58f7def
PB
9422004-06-30 Per Bothner <per@bothner.com>
943
944 * include/line-map.h (fileline): Remove old typedef.
945 * internal.h (struct cpp_reader): Use source_location typedef instead.
946
e83d8d43
ZW
9472004-06-26 Zack Weinberg <zack@codesourcery.com>
948
949 Partially revert patch of 2004-06-05.
950 * files.c (search_cache): Remove pfile argument. Don't check
951 for file that would be found by "" or <> search here...
952 (_cpp_find_file): ...do it here, before calling find_file_in_dir.
953 Do not apply directory-of-current-file correction to files
954 found by this check. Rearrange code slightly.
955
c0d578e6
GK
9562004-06-21 Geoffrey Keating <geoffk@apple.com>
957
958 * files.c (should_stack_file): Correct swapped parameters to call
959 to cb.read_pch.
960 * pch.c (cpp_valid_state): Handle -fpreprocessed.
961
159d5224
PB
9622004-06-15 Paolo Bonzini <bonzini@gnu.org>
963
964 * Makefile.in: Regenerate with automake 1.8.5.
965 * aclocal.m4: Likewise.
966 * configure: Regenerate.
967
2fac9c01
ZW
9682004-06-11 Zack Weinberg <zack@codesourcery.com>
969
970 * configure.ac: Don't invoke ACX_HEADER_STDBOOL.
971 * configure, config.in: Regenerate.
972 * system.h: Unconditionally define bool as unsigned char,
973 BOOL_BITFIELD as unsigned int.
974 * .cvsignore: New file.
975
d8044160
GK
9762004-06-09 Geoffrey Keating <geoffk@apple.com>
977
978 * traditional.c (push_replacement_text): Set macro->traditional.
979 (save_replacement_text): Likewise.
980 * pch.c (cpp_write_pch_state): Don't write list of defined macros.
981 (struct save_macro_item): Delete.
982 (struct save_macro_data): Use a character array not the previous
983 structured format.
984 (save_macros): Save macro as text not as internal structures.
985 (cpp_prepare_state): Update for changes to save_macro_data.
986 (cpp_read_state): Don't read macros defined in PCH. Restore
2cf22451 987 -D macros as text.
d8044160
GK
988 * macro.c (create_iso_definition): Honour alloc_subobject.
989 Clear traditional flag.
990 (_cpp_create_definition): Honour alloc_subobject.
991 * lex.c (cpp_token_val_index): New.
992 * internal.h: Include cpp-id-data.h.
993 (uchar): Move definition to cpp-id-data.h.
994 (U): Likewise.
995 (cpp_macro): Likewise.
996 * directives.c (struct answer): Move to cpp-id-data.h.
997 (do_assert): Honour alloc_subobject.
2cf22451
ZW
998
999 * include/symtab.h (struct ht): Add field 'alloc_subobject'.
1000 * include/cpplib.h (struct cpp_string): Add GTY marker.
1001 (enum cpp_token_fld_kind): New.
1002 (struct cpp_token): Add GTY markers.
1003 (cpp_token_val_index): Prototype.
1004 (CPP_HASHNODE_VALUE_IDX): New.
1005 (struct cpp_hashnode): Don't skip fields of 'value' when marking.
1006 * include/cpp-id-data.h: New file.
d8044160 1007
0ca8e815
PB
10082004-06-09 Paolo Bonzini <bonzini@gnu.org>
1009
1010 * Makefile.am (all-local): New.
1011 * Makefile.in: Regenerate.
1012
b51fa00f
RS
10132004-06-06 Roger Sayle <roger@eyesopen.com>
1014
1015 * Makefile.am (LIBICONV): Declare.
1016 (makedepend_LDADD): Use LIBICONV.
1017 * Makefile.in: Regenerate.
1018
5e2f3f39
AP
10192004-06-05 Andrew Pinski <pinskia@physics.uc.edu>
1020
1021 * Makefile.am (LIBINTL): Declare
1022 (makedepend_LDADD): Use LIBINTL.
1023 * Makefile.in: Regenerate.
1024
c6e83800
ZW
10252004-06-05 Zack Weinberg <zack@codesourcery.com>
1026
1027 * Makefile.am: Add makedepend.
1028 * Makefile.in, aclocal.m4: Regenerate.
1029 * charset.c: Insert a space to avoid a warning.
1030 * directives.c: Include mkdeps.h.
1031 (_cpp_handle_directive): Reenable macro expander if appropriate.
1032 (undefine_macros): Inline body of _cpp_free_definition for speed.
1033 Do not call undef callback or _cpp_warn_if_unused_macro.
1034 (cpp_get_deps): New interface.
1035 * files.c (search_cache): Add pfile argument. Check for file
1036 that would be found by "" or <> search here...
1037 (_cpp_find_file): ...not here. Correct recorded start_dir of
1038 files found by directory-of-current-file search that would be
1039 found by "" or <> search.
1040 * init.c (cpp_add_dependency_target): Delete.
1041 * internal.h (struct lexer_state): Add discarding_output flag.
1042 * lex.c (lex_identifier): Compute hash function while scanning.
1043 * macro.c (cpp_scan_nooutput): Disable macro expansion outside
1044 directives.
1045 * makedepend.c: New file.
1046 * mkdeps.c (struct deps): Add vpath vector.
1047 (apply_vpath, deps_add_vpath): New function.
1048 (deps_free): Free vpath vector.
1049 (deps_add_dep, deps_add_target): Use apply_vpath.
1050 * symtab.c (calc_hash): Use HT_HASHSTEP and HT_FINISH.
1051 (ht_lookup_with_hash): New function.
1052 * cpplib.h, mkdeps.h: Update prototypes.
1053 * symtab.h: Update prototypes.
1054 (HT_HASHSTEP, HT_FINISH): New macros.
1055
b453c95f
GK
10562004-05-29 Geoffrey Keating <geoffk@apple.com>
1057
1058 * symtab.c (ht_create): Set entries_owned.
1059 (ht_destroy): Honour entries_owned.
1060 (ht_expand): Likewise.
1061 (ht_load): New.
2cf22451
ZW
1062 * include/symtab.h (struct ht): New field 'entries_owned'
1063 (ht_load): New prototype.
b453c95f 1064
963e23c5
PB
10652004-05-26 Paolo Bonzini <bonzini@gnu.org>
1066
1067 PR bootstrap/15651
1068 * configure.ac: Fix m4 quoting when picking
1069 the size of HOST_WIDE_INT.
1070 * configure: Regenerate.
1071
0429bc77
PB
10722004-05-25 Paolo Bonzini <bonzini@gnu.org>
1073
1074 * Makefile.am: the correct directory for
1075 gettext include files is given by @INCINTL@.
1076 * Makefile.in: Regenerate.
1077
c86dd7db
PB
10782004-05-24 Paolo Bonzini <bonzini@gnu.org>
1079
1080 * system.h [!ENABLE_NLS]: dgettext takes two
1081 parameters.
1082
4f4e53dd
PB
10832004-05-23 Paolo Bonzini <bonzini@gnu.org>
1084
1085 Moved libcpp from the gcc subdirectory to the toplevel.
1086 * Makefile.am: New file.
1087 * Makefile.in: Regenerate.
1088 * configure.ac: New file.
1089 * configure: Regenerate.
1090 * config.in: Regenerate.
1091 * charset.c: Moved from gcc/cppcharset.c. Add note about
1092 brokenness of input charset detection. Adjust for change
1093 in name of cppucnid.h.
1094 * errors.c: Moved from gcc/cpperror.c. Do not include intl.h.
1095 * expr.c: Moved from gcc/cppexp.c.
1096 * files.c: Moved from gcc/cppfiles.c. Do not include intl.h.
1097 Remove #define of O_BINARY, it is in system.h.
1098 * identifiers.c: Moved from gcc/cpphash.c.
1099 * internal.h: Moved from gcc/cpphash.h. Change header
1100 guard name. All other files adjusted to match name change.
1101 * init.c: Moved from gcc/cppinit.c.
1102 (init_library) [ENABLE_NLS]: Call bindtextdomain.
1103 * lex.c: Moved from gcc/cpplex.c.
1104 * directives.c: Moved from gcc/cpplib.c.
1105 * macro.c: Moved from gcc/cppmacro.c.
1106 * pch.c: Moved from gcc/cpppch.c. Do not include intl.h.
1107 * traditional.c: Moved from gcc/cpptrad.c.
1108 * ucnid.h: Moved from gcc/cppucnid.h. Change header
1109 guard name.
1110 * ucnid.pl: Moved from gcc/cppucnid.pl.
1111 * ucnid.tab: Moved from gcc/cppucnid.tab. Change header
1112 guard name.
1113 * symtab.c: Moved from gcc/hashtable.c.
1114 * line-map.c: Moved from gcc. Do not include intl.h.
1115 * mkdeps.c: Moved from gcc.
1116 * system.h: New file.
2cf22451
ZW
1117 * include/cpplib.h: Moved from gcc. Change header guard name.
1118 * include/line-map.h: Moved from gcc. Change header guard name.
1119 * include/mkdeps.h: Moved from gcc. Change header guard name.
1120 * include/symtab.h: Moved from gcc/hashtable.h. Change header
1121 guard name.