]> git.ipfire.org Git - thirdparty/gcc.git/blame - libcpp/ChangeLog
ChangeLog: Fix whitespace.
[thirdparty/gcc.git] / libcpp / ChangeLog
CommitLineData
f1450211
JM
12009-03-28 Joseph Myers <joseph@codesourcery.com>
2
3 * Makefile.in (po/$(PACKAGE).pot): Use $(mkinstalldirs) not
4 mkinstalldirs.
5
8f5929e1
JJ
62009-03-18 Jakub Jelinek <jakub@redhat.com>
7
8 * include/cpplib.h (struct cpp_dir): Reorder fields for 64-bit hosts.
9
4bb09c26
JM
102009-02-21 Joseph Myers <joseph@codesourcery.com>
11
12 * lex.c (lex_string): Return a CPP_LESS token for missing '>' in a
13 header name.
14 (_cpp_lex_direct): Handle this.
15
68c9ab45
RG
162009-02-15 Richard Guenther <rguenther@suse.de>
17
18 Revert last change.
19
601b3e1a
RG
202009-02-13 Richard Guenther <rguenther@suse.de>
21
22 * configure.ac: Enable LFS.
23 * configure: Re-generate.
24 * config.in: Likewise.
25
fc0cd180
BE
262009-01-05 Ben Elliston <bje@au.ibm.com>
27
28 * Makefile.in (.po.gmo): Use mkinstalldirs, not test -d || mkdir.
29 (.po.pox): Likewise.
30 (po/$(PACKAGE).pot): Likewise.
31
db89a3be
AO
322008-12-10 Alexandre Oliva <aoliva@redhat.com>
33
34 PR target/37033
35 * pch.c (cpp_valid_state): Improve message for poisoned symbols.
36 Allow for differences in __GCC_HAVE_DWARF2_CFI_ASM.
37
cc955282
JM
382008-11-29 Joseph Myers <joseph@codesourcery.com>
39
40 * lex.c (cpp_token_len): Use 6 as default length.
41
47960aaf
MLI
422008-10-31 Manuel López-Ibáñez <manu@gcc.gnu.org>
43
44 * expr.c (struct op): Add location.
45 (_cpp_parse_expr): Propagate locations throught the stack
46 of expressions.
47 (reduce): Likewise.
48 (check_promotion): Use explicit location in errors.
49
631d0d36
MG
502008-10-05 Matthew Gingell <gingell@adacore.com>
51 Arnaud Charlet <charlet@adacore.com>
52
53 * include/cpplib.h (cpp_comments, cpp_comment_table): New structs.
54 (cpp_get_comments): New function.
55 * internal.h (struct cpp_reader): Add comments field.
56 * init.c (cpp_destroy): Free comments.
57 * lex.c (store_comment, cpp_get_comments): New functions.
58 (comments): New struct.
59 (save_comment): Store comments in comments struct.
60
c047ce93
SB
612008-09-18 Simon Baldwin <simonb@google.com>
62
63 * include/cpplib.h (struct cpp_options): Add new boolean flag
64 warn_builtin_macro_redefined.
65 * init.c (cpp_create_reader): Initialize warn_builtin_macro_redefined.
66 * (struct builtin_operator): Split out from previous struct builtin,
67 enhance extra const correctness.
68 * (struct builtin_macro): Split out from previous struct builtin, add
69 new always_warn_if_redefined flag, enhance const correctness.
70 * (mark_named_operators): Use struct builtin_operator.
71 * (cpp_init_special_builtins): Use struct builtin_macro, add NODE_WARN
72 to builtins selectively.
73 * macro.c (warn_of_redefinition): Return false if a builtin macro
74 is not flagged with NODE_WARN.
75
affa55c6
JJ
762008-07-31 Jakub Jelinek <jakub@redhat.com>
77
78 PR preprocessor/36649
79 * files.c (struct report_missing_guard_data): New type.
80 (report_missing_guard): Put paths into an array instead of printing
81 them right away. Return 1 rather than 0.
82 (report_missing_guard_cmp): New function.
83 (_cpp_report_missing_guards): Sort and print paths gathered by
84 report_missing_guard callback.
85
3b8f20a1
MLI
862008-07-22 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
87
88 PR 28079
89 * directives.c (strtolinenum): Handle overflow.
90 (do_line): Give a warning if line number overflowed.
91 (do_linemarker): Update call to strtolinenum.
92
1bb64668
MLI
932008-07-21 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
94
95 * include/line-map.h (linenum_type): New typedef.
96 (struct line_map): Use it.
97 (SOURCE_LINE): Second arguments is a LOCATION not a LINE.
98 (SOURCE_COLUMN): Likewise.
99 * macro.c (_cpp_builtin_macro_text): Use linenum_type. Don't store
100 source_location values in a variable of type linenum_type.
101 * directives.c (struct if_stack): Use linenum_type.
102 (strtoul_for_line): Rename as strtolinenum.
103 (do_line): Use linenum_type.
104 (do_linemarker): Use linenum_type and strtolinenum.
105 (_cpp_do_file_change): Use linenum_t.
106 * line-map.c (linemap_add): Likewise.
107 (linemap_line_start): Likewise.
108 * traditional.c (struct fun_macro): 'line' is a source_location.
109 * errors.c (print_location): Use linenum_type.
110 * directives-only.c (_cpp_preprocess_dir_only): Likewise.
111 * internal.h (CPP_INCREMENT_LINE): Likewise.
112 * lex.c (_cpp_skip_block_comment): Use source_location.
113
5950c3c9
BE
1142008-07-14 Ben Elliston <bje@au.ibm.com>
115
116 * include/cpplib.h (NODE_CONDITIONAL): New.
117 (struct cpp_callbacks): New macro_to_expand field.
118 (struct cpp_hashnode): Adjust size of flags and type fields.
119 (cpp_peek_token): Prototype.
120 * lex.c (cpp_peek_token): New function.
121 (_cpp_temp_token): Protect pre-existing lookaheads.
122 * macro.c (cpp_get_token): Expand any conditional macros.
123 (_cpp_backup_tokens_direct): New.
124 (_cpp_backup_tokens): Call _cpp_backup_tokens_direct.
125 (warn_of_redefinition): Silently allow redefined conditional
126 macros.
127 (_cpp_create_definition): Remove the conditional flag when a user
128 defines one of the conditional macros.
129 * internal.h (_cpp_backup_tokens_direct): New prototype.
130
e85edc9e
AH
1312008-06-13 Andrew Haley <aph@redhat.com>
132
133 PR preprocessor/33305
134 * macro.c (replace_args): Print a warning for empty macro
135 arguments in C89 and C++.
136
18c04407
RW
1372008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
138
139 * Makefile.in ($(srcdir)/aclocal.m4): Update dependencies.
140 * configure: Regenerate.
141
2d09b640
RW
1422008-06-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
143
144 * Makefile.in (datarootdir): New variable.
145
0b7c73cc
L
1462008-06-12 H.J. Lu <hongjiu.lu@intel.com>
147
148 PR preprocessor/36479
149 * charset.c (cpp_interpret_string_notranslate): Also set
150 narrow_cset_desc.width.
151
cd985f66
JM
1522008-06-07 Joseph Myers <joseph@codesourcery.com>
153
154 * configure.ac (parisc*64*-*-*): Remove.
155 * configure: Regenerate.
156
d750887f
TT
1572008-05-30 Tom Tromey <tromey@redhat.com>
158
159 PR preprocessor/36320:
160 * internal.h (_cpp_parse_expr): Update.
161 * expr.c (_cpp_parse_expr): Add 'is_if' argument. Update error
162 messages.
163 * directives.c (do_if): Update.
164 (do_elif): Require expression if processing group.
165
c100de59
DS
1662008-05-30 Danny Smith <dannysmith@users.sourceforge.net>
167
168 * include/cpplib.h (struct cpp_dir): Add new field, canonical_name.
169
5d6342eb
TT
1702008-05-21 Tom Tromey <tromey@redhat.com>
171
172 PR preprocessor/27777:
173 * lex.c (cpp_output_line_to_string): New function.
174 * internal.h (_cpp_begin_message): Don't declare.
175 * errors.c (_cpp_begin_message): Now static.
176 * include/cpplib.h (cpp_output_line_to_string): Declare.
177 * directives.c (do_diagnostic): Rewrote. Use
178 cpp_output_line_to_string. Don't use _cpp_begin_message.
179
dae4174e
TT
1802008-05-21 Tom Tromey <tromey@redhat.com>
181
182 * include/symtab.h (HT_ALLOCED): Remove.
183 (ht_purge): Declare.
184 * symtab.c (DELETED): New define.
185 (ht_lookup): Update comment.
186 (ht_lookup_with_hash): Handle deleted entries. Remove HT_ALLOCED
187 code. Use subobject allocator for strings, if it exists.
188 (ht_expand): Handle deleted entries.
189 (ht_forall): Likewise.
190 (ht_purge): New function.
191 (ht_dump_statistics): Print deletion statistics.
192
899015a0
TT
1932008-05-13 Tom Tromey <tromey@redhat.com>
194
195 PR preprocessor/22168:
196 * include/cpplib.h (struct cpp_options) <objc>: Update
197 documentation.
198 * expr.c (eval_token): Warn for use of assertions.
199 * directives.c (directive_diagnostics): Warn about extensions.
200 (DEPRECATED): New define.
201 (DIRECTIVE_TABLE): Use it.
202
71c10038
TT
2032008-05-06 Tom Tromey <tromey@redhat.com>
204
205 PR preprocessor/35313, PR preprocessor/36088:
206 * expr.c (optab) <QUERY, COMMA>: Set precedence to 4.
207 (reduce) <case CPP_QUERY>: Special case CPP_COMMA and CPP_COLON.
208
2bd0fe3d
DM
2092008-05-04 David S. Miller <davem@davemloft.net>
210
211 * configure.ac (sparc*-*-*): Always set need_64bit_hwint to yes.
212 * configure: Regenerate.
213
28f68625
DF
2142008-04-22 Daniel Franke <franke.daniel@gmail.com>
215
216 * include/cpplib.h (cpp_define_formatted): New.
217 * directives.c (cpp_define_formatted): New.
218
688e7a53
TT
2192008-04-21 Tom Tromey <tromey@redhat.com>
220
221 PR libcpp/33415:
222 * charset.c (_cpp_convert_input): Add buffer_start argument.
223 Ignore UTF-8 BOM if seen.
224 * internal.h (_cpp_convert_input): Add argument.
225 * files.c (struct _cpp_file) <buffer_start>: New field.
226 (destroy_cpp_file): Free buffer_start, not buffer.
227 (_cpp_pop_file_buffer): Likewise.
228 (read_file_guts): Update.
229
b6baa67d
KVH
2302008-04-18 Kris Van Hees <kris.van.hees@oracle.com>
231
232 * include/cpp-id-data.h (UC): Was U, conflicts with U"..." literal.
233 * include/cpplib.h (CHAR16, CHAR32, STRING16, STRING32): New tokens.
234 (struct cpp_options): Added uliterals.
235 (cpp_interpret_string): Update prototype.
236 (cpp_interpret_string_notranslate): Idem.
237 * charset.c (init_iconv_desc): New width member in cset_converter.
238 (cpp_init_iconv): Add support for char{16,32}_cset_desc.
239 (convert_ucn): Idem.
240 (emit_numeric_escape): Idem.
241 (convert_hex): Idem.
242 (convert_oct): Idem.
243 (convert_escape): Idem.
244 (converter_for_type): New function.
245 (cpp_interpret_string): Use converter_for_type, support u and U prefix.
246 (cpp_interpret_string_notranslate): Match changed prototype.
247 (wide_str_to_charconst): Use converter_for_type.
248 (cpp_interpret_charconst): Add support for CPP_CHAR{16,32}.
249 * directives.c (linemarker_dir): Macro U changed to UC.
250 (parse_include): Idem.
251 (register_pragma_1): Idem.
252 (restore_registered_pragmas): Idem.
253 (get__Pragma_string): Support CPP_STRING{16,32}.
254 * expr.c (eval_token): Support CPP_CHAR{16,32}.
255 * init.c (struct lang_flags): Added uliterals.
256 (lang_defaults): Idem.
257 * internal.h (struct cset_converter) <width>: New field.
258 (struct cpp_reader) <char16_cset_desc>: Idem.
259 (struct cpp_reader) <char32_cset_desc>: Idem.
260 * lex.c (digraph_spellings): Macro U changed to UC.
261 (OP, TK): Idem.
262 (lex_string): Add support for u'...', U'...', u"..." and U"...".
263 (_cpp_lex_direct): Idem.
264 * macro.c (_cpp_builtin_macro_text): Macro U changed to UC.
265 (stringify_arg): Support CPP_CHAR{16,32} and CPP_STRING{16,32}.
266
deb984e6
PB
2672008-04-18 Paolo Bonzini <bonzini@gnu.org>
268
269 PR bootstrap/35457
270 * aclocal.m4: Regenerate.
271 * configure: Regenerate.
272
bf048bea
TT
2732008-04-17 Tom Tromey <tromey@redhat.com>
274
275 PR libcpp/34866:
276 * errors.c (cpp_error): Don't reference a token before the start
277 of the current run.
278
7f27b0f8
TT
2792008-04-16 Tom Tromey <tromey@redhat.com>
280
281 * Makefile.in (TAGS_SOURCES): New variable.
282 (TAGS): New target.
283
a1fcb9a1
KK
2842008-04-11 Kaz Kojima <kkojima@gcc.gnu.org>
285
286 * configure.ac: (need_64bit_hwint): Need 64bit hwint for sh-*-*
287 and shbe-*-*.
288 * configure: Rebuilt.
289
93d45d9e
JM
2902008-04-02 Joseph Myers <joseph@codesourcery.com>
291
292 * include/cpplib.h (struct cpp_callbacks): Add used_define,
293 used_undef and before_define.
294 (NODE_USED): Define.
295 * directives.c (do_define, do_undef, undefine_macros, do_ifdef,
296 do_ifndef, cpp_pop_definition): Handle new flag and use new
297 callbacks.
298 * expr.c (parse_defined): Handle new flag and use new callbacks.
299 * macro.c (enter_macro_context, _cpp_free_definition): Handle new
300 flag and use new callbacks.
301
d4c32e1d
JJ
3022008-04-01 Jakub Jelinek <jakub@redhat.com>
303
304 PR pch/13675
305 * files.c (struct _cpp_file): Remove pch field.
306 (pch_open_file): Don't set file->pch, just file->pchname.
307 (should_stack_file): After pfile->cb.read_pch call
308 free pchname and clear pchname, don't close file->fd.
309 Test file->pchname instead of file->pch. Don't close fd after cb.
310 (_cpp_stack_include): Test file->pchname instead of file->pch.
311
161031e3
TT
3122008-03-28 Tom Tromey <tromey@redhat.com>
313
314 * Makefile.in (POSTCOMPILE): New variable.
315 (.c.o): Use it.
316
14ccf800
TT
3172008-03-13 Tom Tromey <tromey@redhat.com>
318
319 PR libcpp/35322:
320 * directives.c (destringize_and_run): Set pfile->directive.
321
830465c6
MM
3222008-03-06 Markus Milleder <markus.milleder@generali.at>
323
324 PR preprocessor/35458
325 * mkdeps.c (munge): Quote '#' with a '\'.
326
d482a073
RW
3272008-02-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
328
329 PR preprocessor/35379
330 * mkdeps.c (deps_write): Ensure the first target always appears
331 in the first column, without leading backslash newline. Avoid
332 some more extra whitespace.
333
185a6cc1
TS
3342008-02-25 Thiemo Seufer <ths@mips.com>
335
d482a073 336 * Makefile.in ($(srcdir)/config.in): Depend on configure.ac.
185a6cc1 337
2bf41bf0
TT
3382008-02-19 Tom Tromey <tromey@redhat.com>
339
340 * traditional.c (lex_identifier): Use CPP_HASHNODE.
341 * lex.c (lex_identifier): Use CPP_HASHNODE.
342 * include/line-map.h (LINEMAP_POSITION_FOR_COLUMN): Wrap in
343 do-while.
344 * identifiers.c (alloc_node): Change return type.
345 (_cpp_init_hashtable): Don't cast 'alloc_node'.
346 (proxy_assertion_broken): New declaration.
347 (cpp_forall_identifiers): Move comment.
348 * line-map.c (linemap_add): Comment fix.
349 (linemap_line_start): Indentation fix.
350
765d600a
JJ
3512008-01-25 Jakub Jelinek <jakub@redhat.com>
352
353 PR preprocessor/34692
354 * macro.c (collect_args): Add pragma_buff argument. Push
355 CPP_PRAGMA ... CPP_PRAGMA_EOL tokens to *pragma_buff, rather
356 than into arguments. Reset prevent_expansion and parsing_args
357 state at CPP_PRAGMA_EOL/CPP_EOF.
358 (funlike_invocation_p): Add pragma_buff argument, pass it through
359 to collect_args.
360 (enter_macro_context): Add result argument. Adjust
361 funlike_invocation_p caller. Emit all deferred pragma tokens
362 gathered during collect_args before the expansion, add a padding
363 token. Return 2 instead of 1 if any pragma tokens were prepended.
364 (cpp_get_token): If enter_macro_context returns 2, don't return
365 a padding token, instead cycle to grab CPP_PRAGMA token.
366 * directives.c (_cpp_handle_directive): If was_parsing_args
367 in deferred pragma, leave parsing_args and prevent_expansion as is.
368
ec46053b
TT
3692008-01-22 Tom Tromey <tromey@redhat.com>
370
765d600a 371 PR c++/34859
ec46053b
TT
372 * macro.c (_cpp_create_definition): Handle __STDC_LIMIT_MACROS and
373 __STDC_CONSTANT_MACROS.
374
681c6ab0
FF
3752008-01-07 Fred Fish <fnf@specifix.com>
376
765d600a 377 PR preprocessor/30363
681c6ab0
FF
378 * traditional.c (replace_args_and_push): Add local variable
379 cxtquote, calculate the replacement text size assuming a
380 worst case of every input character quoted with backslash,
381 and properly handle output quoting of quote characters in
382 actual arguments used in function-like macros.
383
33ae4837
TT
3842008-01-03 Tom Tromey <tromey@redhat.com>
385
765d600a 386 PR preprocessor/34602
33ae4837
TT
387 * directives.c (do_line): Don't try to spell EOF token.
388 (do_linemarker): Add comment.
389
675575f5
DD
3902007-12-11 DJ Delorie <dj@redhat.com>
391
392 * charset.c (convert_using_iconv): Close out any shift states,
393 returning to the initial state.
394
97f6bd40
TT
3952007-12-06 Tom Tromey <tromey@redhat.com>
396
765d600a 397 PR c/29172
97f6bd40
TT
398 * internal.h (struct cpp_reader) <file_hash_entries>: Changed
399 type.
400 <file_hash_entries_allocated, file_hash_entries_used>: Removed.
401 * files.c (FILE_HASH_POOL_SIZE): New macro.
402 (struct file_hash_entry_pool): New.
403 (destroy_all_cpp_files): New function.
404 (allocate_file_hash_entries): Allocate a file_hash_entry_pool.
405 (new_file_hash_entry): Update.
406 (free_file_hash_entries): New function.
407 (_cpp_cleanup_files): Call free_file_hash_entries and
408 destroy_all_cpp_files.
409 (cpp_clear_file_cache): New function.
410 * include/cpplib.h (cpp_clear_file_cache): Declare.
411
d56a25e1
TT
4122007-12-03 Tom Tromey <tromey@redhat.com>
413
765d600a 414 PR preprocessor/34288
d56a25e1
TT
415 * configure.ac, config.in: Rebuilt.
416 * configure.ac: Check for ssize_t.
417
607f74e9
TT
4182007-11-30 Tom Tromey <tromey@redhat.com>
419
765d600a 420 PR preprocessor/32868
607f74e9
TT
421 * macro.c (_cpp_create_definition): Special case
422 __STDC_FORMAT_MACROS.
423
b0f4807f
MM
4242007-11-16 Michael Matz <matz@suse.de>
425
426 * files.c (search_path_head): Fix check for absolute paths.
427
f1e20710
TT
4282007-11-11 Tom Tromey <tromey@redhat.com>
429
765d600a 430 PR c++/17557
f1e20710
TT
431 * include/cpplib.h (cpp_included_before): Declare.
432 * files.c (struct file_hash_entry) <location>: New field.
433 (_cpp_find_file): Initialize new field.
434 (make_cpp_dir): Likewise.
435 (cpp_included_before): New function.
436
f373b44d
TT
4372007-11-01 Tom Tromey <tromey@redhat.com>
438
765d600a 439 PR preprocessor/30805
f373b44d
TT
440 * macro.c (paste_tokens): Handle padding token.
441 (paste_tokens): Don't abort unless padding has PASTE_LEFT flag.
442
5b9a40df
TT
4432007-10-31 Tom Tromey <tromey@redhat.com>
444
765d600a 445 PR preprocessor/30786
5b9a40df
TT
446 * macro.c (builtin_macro): Return result of _cpp_do__Pragma.
447 * directives.c (_cpp_do__Pragma): Return error status.
448 * internal.h (_cpp_do__Pragma): Update.
449 * directives.c (get__Pragma_string): Back up if EOF seen.
450
5ffeb913
TT
4512007-09-06 Tom Tromey <tromey@redhat.com>
452
453 * internal.h (struct cpp_reader) <invocation_location>: New
454 field.
455 (struct cpp_reader) <set_invocation_location>: Likewise.
456 * init.c (cpp_set_line_map): New function.
457 * line-map.c (linemap_add): Use linemap's allocator.
458 * include/line-map.h (GTY): Define.
459 (line_map_realloc): New typedef.
460 (struct line_map): Mark with GTY.
461 (struct line_maps): Likewise.
462 (struct line_maps) <maps>: Likewise.
463 (struct line_maps) <reallocator>: New field.
464 * include/symtab.h (GTY): Conditionally define.
465 * include/cpplib.h (cpp_set_line_map): Declare.
466 (cpp_get_token_with_location): Declare.
467 * macro.c (cpp_get_token): Set invocation_location on the reader.
468 (cpp_get_token_with_location): New function.
469
ac6b1c67
CF
4702007-08-30 Chao-ying Fu <fu@mips.com>
471
472 * expr.c (interpret_float_suffix): Support hr, r, lr, llr, uhr, ur,
473 ulr, ullr, hk, k, lk, llk, uhk, uk, ulk, ullk.
474 (cpp_classify_number): Support decimal fixed-point constants without
475 exponents.
476 Warn about fixed-point constants when -pedantic.
477 * include/cpplib.h (CPP_N_SMALL, CPP_N_MEDIUM, CPP_N_LARGE): Change
478 comments to support fixed-point values.
479 (CPP_N_FRACT, CPP_N_ACCUM): Define.
480
cda5e672
TT
4812007-08-18 Tom Tromey <tromey@redhat.com>
482
765d600a 483 PR preprocessor/32974
cda5e672
TT
484 * directives.c (parse_include): Don't check for EOL when
485 processing #pragma dependency.
486
ccfc4c91
OW
4872007-07-30 Ollie Wild <aaw@google.com>
488
489 * directives-only.c: New file.
490 * internal.h (struct _cpp_dir_only_callbacks): New.
491 (_cpp_preprocess_dir_only): New function.
492 * directives.c (_cpp_handle_directive): Check directives_only before
493 disabling execution of indented directives.
494 * files.c (_cpp_stack_file): Add directives_only check.
495 * include/cpplib.h (struct cpp_options): Add directives_only.
496 (cpp_init_special_builtins): New function.
497 * init.c (cpp_init_special_builtins): New function.
498 (cpp_init_builtins): Move builtin_array initialization to
499 cpp_init_special_builtins.
500 (post_options): Check directives_only before setting
501 pfile->state.prevent_expansion = 1.
502 * macro.c (_cpp_builtin_macro_text): Print an error if __COUNTER__
503 is expanded inside a directive while -fdirectives-only is enabled.
504 * Makefile.in (libcpp_a_OBJS): Add directives-only.o.
505 (libcpp_a_SOURCES): Add directives-only.c.
506
a206413a
UB
5072007-07-04 Uros Bizjak <ubizjak@gmail.com>
508
509 * traditional.c (_cpp_scan_out_logical_line): Initialize
510 fmacro.args, fmacro.node, fmacro.offset, fmacro.line and
511 fmacro.args to prevent 'may be used uninitialized' warning.
512
c77cd3d1
UB
5132007-07-03 Uros Bizjak <ubizjak@gmail.com>
514
515 * include/cpplib.h (CPP_N_WIDTH_MD, CPP_N_MD_W, CPP_N_MD_Q):
516 Add new constants.
517 * expr.c (interpret_float_suffix): Process 'w', 'W', 'q' and 'Q'
518 suffixes. Return CPP_N_MD_W for 'w' or 'W' suffixes and CPP_N_MD_Q
519 for 'q' or 'Q' suffixes.
520
66938a1d
DS
5212007-06-17 Danny Smith <dannysmith@users.sourceforge.net
522
e1311401 523 * files.c (open_file): Correct typo.
66938a1d 524
71995ede
VP
5252007-06-16 Vladimir Prus <vladimir@codesourcery.com>
526
e1311401 527 * files.c (open_file): Prevent the call
71995ede
VP
528 for stat from overwriting errno.
529
84152c25
VP
5302007-06-09 Vladimir Prus <vladimir@codesourcery.com>
531
e1311401 532 * files.c (open_file): Account for the
84152c25
VP
533 fact that on windows, opening a directory gives
534 EACCES.
535
f7fd775f
JW
5362007-06-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de>
537
538 PR preprocessor/23479
539 * expr.c (cpp_classify_number): Implement 0b-prefixed binary
540 integer constants.
541 (append_digit): Likewise.
542 * include/cpplib.h: Add CPP_N_BINARY, to be used for 0b-prefixed
543 binary integer constants.
544
ed0e74e0
DK
5452007-05-31 Dave Korn <dave.korn@artimi.com>
546
547 PR preprocessor/14331
548 * lex.c (_cpp_get_fresh_line): Don't warn if no newline at EOF.
549
a702045a
OW
5502007-05-24 Ollie Wild <aaw@google.com>
551
552 * macro.c (_cpp_builtin_macro_text): Handle BT_COUNTER.
553 * pch.c (cpp_write_pch_deps): Save __COUNTER__ state.
554 (cpp_write_pch_state): Save __COUNTER__ state.
555 (cpp_valid_state): Check valid __COUNTER__ state.
556 (cpp_read_state): Read new __COUNTER__ state.
557 * include/cpplib.h (enum builtin_type): Add BT_COUNTER enumerator.
558 * init.c (builtin_array): Add __COUNTER__/BT_COUNTER.
559 * internal.h (struct cpp_reader): Add counter member.
560
126e073b
SM
5612007-05-23 Simon Martin <simartin@users.sourceforge.net>
562
563 PR preprocessor/20077
564 * macro.c (create_iso_definition): Fixed the method to determine
565 whether the token-pasting operator appears at the beginning or the end
566 of a macro.
567
0b4cafec
ILT
5682007-05-21 Ian Lance Taylor <iant@google.com>
569
570 * internal.h (struct cpp_reader): Add new fields:
571 nonexistent_file_hash and nonexistent_file_ob.
572 * files.c: Include "obstack.h".
573 (find_file_in_dir): Before trying to open the file, look up the
574 path name in the hash table of nonexistent files. After failing
575 to open the file, add the path name to the hash table.
576 (_cpp_find_file): Cache the results of looking up the file name
577 starting with the quote and bracket chain heads, if we can.
578 (nonexistent_file_hash_eq): New static function.
579 (_cpp_init_files): Initialize pfile->nonexistent_file_hash and
580 pfile->nonexistent_file_ob.
581 (_cpp_cleanup_files): Free pfile->nonexistent_file_hash and
582 pfile->nonexistent_file_ob.
583
30e04921
JJ
5842007-05-14 Janis Johnson <janis187@us.ibm.com>
585
5a6bb57e
JJ
586 * expr.c (cpp_classify_number): Warn about dfp constant for -pedantic.
587
30e04921
JJ
588 PR c/31924
589 * expr.c (interpret_float_suffix): Check for invalid suffix.
590
22a8a52d
EC
5912007-05-02 Eric Christopher <echristo@apple.com>
592
593 * expr.c (num_div_op): Don't overflow if the result is
594 zero.
595
fca35e1b
TT
5962007-05-02 Tom Tromey <tromey@redhat.com>
597
765d600a 598 PR preprocessor/28709
fca35e1b
TT
599 * macro.c (paste_tokens): Remove PASTE_LEFT from the old lhs.
600
4cd97075
MM
6012007-03-30 Michael Meissner <michael.meissner@amd.com>
602
603 * directives.c (lex_macro_node_from_str): Fix alloca call to be
604 type correct.
605
121de39f
RH
6062007-03-30 Richard Henderson <rth@redhat.com>
607
608 * directives.c (lex_macro_node_from_str): New.
609 (cpp_push_definition, cpp_pop_definition): New.
610 * include/cpplib.h (cpp_push_definition, cpp_pop_definition): Declare.
611
4fcb360b
BM
6122007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
613
614 * Makefile.in: Add dummy install-pdf target.
615
67e64439
TT
6162007-01-30 Tom Tromey <tromey@redhat.com>
617
765d600a 618 PR preprocessor/30468
67e64439
TT
619 * mkdeps.c (apply_vpath): Strip successive '/'s if we stripped
620 './'.
621
ee380365
TT
6222007-01-30 Tom Tromey <tromey@redhat.com>
623
765d600a 624 PR preprocessor/29966
ee380365
TT
625 * macro.c (lex_expansion_token): Save and restore cpp_reader's
626 cur_token.
627 (_cpp_create_definition): Don't restore cur_token here.
628 * lex.c (_cpp_lex_token): Added assertion.
629
024abeb3
TT
6302007-01-27 Tom Tromey <tromey@redhat.com>
631
632 * configure: Rebuilt.
633
ee1c2a10
TT
6342007-01-12 Tom Tromey <tromey@redhat.com>
635
765d600a 636 PR preprocessor/28227
ee1c2a10
TT
637 * directives.c (lex_macro_node): Added 'is_def_or_undef'
638 argument.
639 (do_define): Update.
640 (do_undef): Update.
641 (do_ifdef): Update.
642 (do_ifndef): Update.
643
67214c16
PB
6442007-01-11 Paolo Bonzini <bonzini@gnu.org>
645
646 * configure: Regenerate.
647
1aa6ca40
PB
6482007-01-11 Paolo Bonzini <bonzini@gnu.org>
649
650 * configure: Regenerate.
651
705e2d28
TT
6522007-01-04 Tom Tromey <tromey@redhat.com>
653
765d600a 654 PR preprocessor/28165
705e2d28
TT
655 * internal.h (cpp_in_primary_file): New function.
656 * directives.c (do_include_next): Use cpp_in_primary_file.
657 (do_pragma_once): Likewise.
658 (do_pragma_system_header): Likewise.
659
7af45bd4
ILT
6602006-12-29 Ian Lance Taylor <iant@google.com>
661
662 * lex.c (_cpp_clean_line): Add uses of __builtin_expect. Don't
663 look backward at the end of the line unless we saw a backslash.
664
9d30f270
JJ
6652006-12-29 Jakub Jelinek <jakub@redhat.com>
666
667 PR preprocessor/29612
668 * directives.c (do_linemarker): Set pfile->buffer->sysp always, not
669 only when new_sysp is non-zero.
670
30b0edc0
TT
6712006-12-28 Tom Tromey <tromey@redhat.com>
672
765d600a 673 PR preprocessor/30001
30b0edc0
TT
674 * charset.c (_cpp_convert_input): Check that to.len is greater
675 than zero.
676
85d9c13c
TS
6772006-11-20 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
678
679 * configure.ac (need_64bit_hwint): Need 64bit hwint for SPU.
83cc06b2 680 * configure: Rebuilt.
85d9c13c 681
dfafdaa6
DG
6822006-11-01 Douglas Gregor <doug.gregor@gmail.com>
683
684 * include/cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X
685 for experimental C++0x mode.
686 * init.c (lang_defaults): Add defaults for C++0x modes. C++0x has
687 adopted the preprocessor changes introduced in C99.
688
0f45f0f5
JM
6892006-10-29 Joseph Myers <joseph@codesourcery.com>
690
691 * configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux*
692 depending on --enable-targets=all.
693 * configure: Regenerate.
694
de000d22
JJ
6952006-10-12 Jakub Jelinek <jakub@redhat.com>
696
697 PR preprocessor/28709
698 * macro.c (paste_tokens): Do error reporting here, use BUF with the
699 spelled LHS token as opposed to spelling it again.
700 (paste_all_tokens): Don't report errors here, just break on failure.
701
b5422ad7
BM
7022006-10-10 Brooks Moses <bmoses@stanford.edu>
703
704 * Makefile.in: Added empty "pdf" target.
705
aaf50ff2
GK
7062006-09-22 Geoffrey Keating <geoffk@apple.com>
707
708 * configure.ac: Make need_64_bit_hwint case for x86-darwin
709 match exactly the glob in gcc/config.gcc.
710 * configure: Regenerate.
711
c663e301
JM
7122006-09-13 Joseph S. Myers <joseph@codesourcery.com>
713
714 PR c/28768
715 PR preprocessor/14634
716 * lex.c (lex_string): Pedwarn for unterminated literals.
717
f7288899
EC
7182006-09-08 Eric Christopher <echristo@apple.com>
719
720 * configure.ac: Add 64-bit HWI support for i?86-darwin.
721
b52dbbf8
SE
7222006-08-14 Steve Ellcey <sje@cup.hp.com>
723
724 PR c++/28288
725 PR c++/14556
726 * include/cpplib.h: Remove <?, >?, <?=, and >?= tokens.
727 (CPP_LAST_EQ): Change.
728 (CPP_LAST_PUNCTUATOR): Change.
729 * expr.c (cpp_operator): Remove MIN and MAX.
730 (reduce): Remove CPP_MIN and CPP_MAX.
731 (num_binary_op): Ditto.
732 * lex.c (_cpp_lex_direct): Ditto.
733 (cpp_avoid_paste): Remove ? as legal symbol after > or <.
734
1c90c6f9
JJ
7352006-06-09 Jakub Jelinek <jakub@redhat.com>
736
737 PR preprocessor/27746
738 * directives.c (do_pragma): Handle pragma with valid namespace
739 and invalid name coming from macro expansion.
740 * directives.c (destringize_and_run): Initialize next field in
741 context.
742
743 PR c/27747
744 PR c++/27748
745 * directives.c (destringize_and_run): Set NO_EXPAND on the
746 tokens.
747
748 * macro.c (_cpp_backup_tokens): Fix comment typo.
749
5c3c3683
DJ
7502006-05-31 Daniel Jacobowitz <dan@codesourcery.com>
751
752 * Makefile.in (CATALOGS): Add po/ prefix.
753 * configure: Regenerated.
754
b2bd74bc
CD
7552006-05-23 Carlos O'Donell <carlos@codesourcery.com>
756
757 * Makefile.in: Add install-html target. Add install-html to .PHONY
758
be8ac3e2
GZ
7592006-02-17 Grigory Zagorodnev <grigory_zagorodnev@linux.intel.com>
760
761 * macro.c (_cpp_builtin_macro_text): Handle BT_TIMESTAMP.
762 * files.c (_cpp_get_file_stat): New function.
763 * include/cpplib.h (builtin_type): Add BT_TIMESTAMP.
764 * init.c (builtin_array): Add support for __TIMESTAMP__/BT_TIMESTAMP.
765 * internal.h (_cpp_get_file_stat): Prototype.
766 (struct cpp_buffer): Add timestamp.
767
83900997
JJ
7682006-01-23 Jakub Jelinek <jakub@redhat.com>
769
770 PR preprocessor/25717
771 * init.c (cpp_init_builtins): If __STDC__ will not change value
772 between system headers and other sources, define it as a normal
773 macro rather than a builtin.
774 * macro.c (_cpp_builtin_macro_text) <case BT_STDC>: Only check
775 cpp_in_system_header condition.
776
7772006-01-05 Paolo Bonzini <bonzini@gnu.org>
9220c30c
PB
778
779 * Makefile.in: Use -MMD instead of -MD.
780
bc4071dd
RH
7812006-01-04 Dmitry Kurochkin <dmitry.kurochkin@gmail.com>
782 Richard Henderson <rth@redhat.com>
783
784 Merge from gomp branch:
785 * directives.c (struct pragma_entry): Add is_deferred. Add ident
786 entry to value union.
787 (end_directive): Don't eat the line if in_deferred_pragma.
788 (run_directive): Remove pragma hacks.
789 (insert_pragma_entry): Remove.
790 (new_pragma_entry): New.
791 (register_pragma_1): Split out of register_pragma. Only handle
792 the lookup tree and return the new entry.
793 (cpp_register_pragma): Fill in the pragma entry here.
794 (cpp_register_deferred_pragma): New.
795 (register_pragma_internal): New.
796 (_cpp_init_internal_pragmas): Use register_pragma_internal.
797 (do_pragma): Allow pragma expansion after namespace. For deferred
798 pragmas, don't slurp the line into a string.
799 (destringize_and_run): Save tokens for deferred pragmas.
800 (cpp_handle_deferred_pragma): Remove.
801 * macro.c (builtin_macro): Remove pragma token hack.
802 (_cpp_push_token_context): Rename from push_token_context and export.
803 * internal.h (struct lexer_state): Add pragma_allow_expansion.
804 (_cpp_push_token_context): Declare.
805 * lex.c (_cpp_lex_token): Allow _cpp_handle_directive to return
806 a token. Update the line number correctly if so.
807 (_cpp_lex_direct): Emit CPP_PRAGMA_EOL tokens.
808 (cpp_token_val_index): Return CPP_TOKEN_FLD_PRAGMA for pragmas.
809 * include/cpplib.h (PRAGMA_EOL): New.
810 (CPP_TOKEN_FLD_PRAGMA): New.
811 (struct cpp_token): Add val.pragma.
812 (struct cpp_options): Remove defer_pragmas.
813 (cpp_handle_deferred_pragma): Remove.
814 (cpp_register_deferred_pragma): Declare.
815
d09e893f
JJ
8162006-01-01 Jakub Jelinek <jakub@redhat.com>
817
818 PR c++/25294
819 * directives.c (do_pragma): If pragma line ends with multi-line
820 block comment, end the saved deferred pragma string before that
821 comment. Handle embedded '\0' chars on the pragma line.
822
ab84748a
VR
8232005-12-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
824
825 PR c++/23333
826 * include/cpplib.h: Add PURE_ZERO to flags for the cpp_token structure.
827
ad6ed77e
JG
8282005-12-07 Jon Grimm <jgrimm2@us.ibm.com>
829 Ben Elliston <bje@au.ibm.com>
830
831 * include/cpplib.h (CPP_N_DFLOAT): New.
832 * expr.c (interpret_float_suffix): Identify df, dd, and dl
833 suffixes as decimal floating point constants.
834 (cpp_classify_number): Disallow hexadecimal DFP constants.
835
ba096620 8362005-11-14 Gerald Pfeifer <gerald@pfeifer.com>
bc4071dd 837 Ian Lance Taylor <ian@airs.com>
ba096620
GP
838
839 * include/cpplib.h (struct cpp_callbacks): Annotate error with
840 ATTRIBUTE_FPTR_PRINTF(3,0) instead of ATTRIBUTE_PRINTF(3,0).
841
456b8ce5
UB
8422005-11-09 Per Bothner <per@bothner.com>
843 Uros Bizjak <uros@kss-loka.si>
f7288899 844
456b8ce5
UB
845 PR c/24101
846 * init.c (read_original_filename): Temporarily set
847 state.in_directive before calling _cpp_lex_direct for
848 CPP_HASH tokens.
849
5571f74f
JW
8502005-11-03 James E Wilson <wilson@specifix.com>
851
852 PR preprocessor/24202
853 * files.c (_cpp_pop_file_buffer): Set buffer_valid to false.
854
a63607ed
JM
8552005-11-04 Joseph S. Myers <joseph@codesourcery.com>
856
857 * include/cpplib.h (struct cpp_callbacks): Make error take
858 va_list* parameter.
859 * errors.c (cpp_error): Update call to callback.
860
651ed942
AP
8612005-11-03 Andrew Pinski <pinskia@physics.uc.edu>
862
863 PR preprocessor/22042
864 * macro.c (_cpp_builtin_macro_text): Lower the needed max
865 buffer size.
866 (cpp_quote_string): Don't octalify non printable
867 charactors.
868
178b58b5
JM
8692005-11-03 Joseph S. Myers <joseph@codesourcery.com>
870
871 PR c++/17964
872 * include/cpplib.h (struct cpp_options): Add client_diagnostic.
873 (struct cpp_callbacks): Add error.
874 * errors.c (cpp_error): If client_diagnostic, use error callback.
875 * charset.c (convert_escape): Don't use %03o in diagnostic.
876
3ee5ed11 8772005-10-21 James E Wilson <wilson@specifix.com>
6568f34b
JW
878
879 PR preprocessor/15220
880 * files.c (_cpp_find_file): New parameter angle_brackets. Fix all
881 callers. Pass to open_file_failed.
882 (open_file_failed): New parameter angle_brackets. Fix all callers.
883 Use in print_dep assignment.
884 * init.c (cpp_read_main_file): Pass additional arg to _cpp_find_file.
885 * internal.h (_cpp_find_file): Add new parm to declaration.
f7288899 886
077fc835
KH
8872005-10-08 Kazu Hirata <kazu@codesourcery.com>
888
889 * configure.ac: Require 64-bit int for arm*-*-*eabi*.
890 * configure: Regenerate.
891
cbc43ae0
ILT
8922005-10-04 Ian Lance Taylor <ian@airs.com>
893
894 PR preprocessor/13726
895 * directives.c (check_eol_return_comments): New static function.
896 (parse_include): Add buf parameter. Change all callers.
897 (do_include_common): If not discard comments, turn on
898 save_comments. Pass collected comments to include callback.
899 * include/cpplib.h (struct cpp_callbacks): Add new parameter to
900 include callback: cpp_token list.
901
af15a2fe
JM
9022005-09-20 Joseph S. Myers <joseph@codesourcery.com>
903
904 * include/cpplib.h (struct cpp_options): Add extended_identifiers.
905 * init.c (struct lang_flags, lang_defaults): Add
906 extended_identifiers.
907 (cpp_set_lang): Use it.
908 * lex.c (forms_identifier_p): Check extended_identifiers.
909
f5eab47e
JJ
9102005-08-30 Jakub Jelinek <jakub@redhat.com>
911
912 PR preprocessor/20348
913 PR preprocessor/20356
914 * files.c (_cpp_find_file, search_cache): Revert 2004-06-26 and
915 2004-06-05 changes.
916
467129e6
KG
9172005-07-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
918
919 * configure.ac (ACX_PROG_CC_WARNING_OPTS): add
920 -Wmissing-format-attribute.
921
922 * configure: Regenerate.
923
200031d1
KC
9242005-06-29 Kelley Cook <kcook@gcc.gnu.org>
925
926 * all files: Update FSF address in copyright headers.
927 * makeucnid.c (write_copyright): Update outputted FSF address.
928
f610dd5f
ZW
9292005-06-13 Zack Weinberg <zack@codesourcery.com>
930
931 * configure.ac: Invoke ZW_CREATE_DEPDIR and
932 ZW_PROG_COMPILER_DEPENDENCIES.
933 * aclocal.m4, configure: Regenerate.
934 * Makefile.in (DEPMODE, DEPDIR, depcomp, COMPILE.base, COMPILE):
935 New variables.
936 (distclean): Clean up $(DEPDIR) and its contents.
937 (.c.o): Use $(COMPILE).
938 Include $(DEPDIR)/*.Po for most object->header dependencies.
939
c3f829c1
GDR
9402005-05-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
941
942 * configure.ac: Check declarations for asprintf and vasprintf.
943 * config.in: Regenerate.
944 * configure: Likewise.
945
946 * charset.c (conversion_loop): Use XRESIZEVEC.
947 (convert_no_conversion): Likewise.
948 (convert_using_iconv): Likewise.
949 (init_iconv_desc): Cast return value of alloca.
950 (cpp_host_to_exec_charset): Use XNEWVEC.
951 (emit_numeric_escape): Use XRESIZEVEC.
952 (cpp_interpret_string): Use XNEWVEC.
953 (cpp_interpret_string): Use XRESIZEVEC.
954 (_cpp_interpret_identifier): Cast return value of alloca.
955 (_cpp_convert_input): Use XNEWVEC and XRESIZEVEC.
956 * directives.c (glue_header_name): Use XNEWVEC and XRESIZEVEC.
957 (parse_include): Use XNEWVEC.
958 (insert_pragma_entry): Rename local variable "new" to
f610dd5f 959 "new_entry".
c3f829c1
GDR
960 (save_registered_pragmas): Cast return value of xmemdup.
961 (destringize_and_run): Same for alloca.
962 (parse_assertion): Likewise.
963 (do_assert): Cast allocated storage to proper type.
964 (cpp_define): Likewise.
965 (_cpp_define_builtin): Likewise.
966 (cpp_undef): Likewise.
967 (handle_assertion): Likewise.
968 (cpp_push_buffer): Rename local variable "new" to "new_buffer".
969 * expr.c (CPP_UPLUS): Cast value to type cpp_ttype.
970 (CPP_UMINUS): Likewise.
971 (struct cpp_operator): Rename from struct operator.
972 (_cpp_expand_op_stack): Use XRESIZEVEC.
973 * files.c (pch_open_file): Use XNEWVEC.
974 (pch_open_file): Use XRESIZEVEC.
975 (read_file_guts): Use XNEWVEC and XRESIZEVEC.
976 (dir_name_of_file): Use XNEWVEC.
977 (make_cpp_file): Use XCNEW.
978 (make_cpp_dir): Likewise.
979 (allocate_file_hash_entries): USE XNEWVEC.
980 (cpp_included): Cast return value of htab_find_with_hash.
981 (append_file_to_dir): Use XNEWVEC.
982 (read_filename_string): Likewise. Use XRESIZEVEC too.
983 (read_name_map): Cast return value of alloca. Use XRESIZEVEC.
984 (remap_filename): Use XNEWVEC.
985 (struct pchf_entry): Move definition out of struct pchf_data.
986 (_cpp_save_file_entries): Use XCNEWVAR.
987 (_cpp_read_file_entries): Use XNEWVAR.
988 * identifiers.c (alloc_node): Use XOBNEW.
989 * init.c (cpp_create_reader): Use XCNEW.
990 (cpp_init_builtins): Cast of b->value to enum builtin_type.
991 (read_original_directory): Cast return value of alloca.
992 * lex.c (add_line_note): Use XRESIZEVEC.
993 (warn_about_normalization): Use XNEWVEC.
994 (_cpp_lex_direct): Cast node->directive_index to (enum cpp_ttype).
995 (new_buff): Use XNEWVEC.
996 * line-map.c (linemap_add): Use XRESIZEVEC.
997 * macro.c (builtin_macro): Cast return value of alloca.
998 (paste_tokens): Likewise.
999 (expand_arg): Use XNEWVEC and XRESIZEVEC.
1000 (_cpp_save_parameter): Use XRESIZEVEC.
1001 (create_iso_definition): Cast allocated storage to proper type.
1002 (_cpp_create_definition): Likewise.
1003 (cpp_macro_definition): Use XRESIZEVEC.
1004 * makedepend.c (add_clm): Use XNEW.
1005 (add_dir): Likewise.
1006 * mkdeps.c (munge): Use XNEWVEC.
1007 (deps_init): Use XCNEW.
1008 (deps_add_target): Use XRESIZEVEC.
1009 (deps_add_default_target): Cast return value of alloca.
1010 (deps_add_dep): Use XRESIZEVEC.
1011 (deps_add_vpath): Likewise. Use XNEWVEC too.
1012 (deps_restore): Likewise.
1013 * pch.c (save_idents): Use XNEW and XNEWVEC.
1014 (cpp_save_state): Use XNEW.
1015 (count_defs): Cast return value of htab_find.
1016 (write_defs): Likewise.
1017 (cpp_write_pch_deps): Use XNEWVEC.
1018 (collect_ht_nodes): Use XRESIZEVEC.
1019 (cpp_valid_state): Use XNEWVEC.
1020 (save_macros): Use XRESIZEVEC. Cast return value of xmemdup.
1021 * symtab.c (ht_create): Use XCNEW.
1022 (ht_lookup_with_hash): Cast return value of obstack_copy0.
1023 (ht_expand): Use XCNEWVEC.
1024 * system.h (HAVE_DESIGNATED_INITIALIZERS): False if __cplusplus.
1025 (bool): Do not define if __cplusplus.
1026
1ed17cd5
ZW
10272005-05-12 Zack Weinberg <zack@codesourcery.com>
1028
1029 * directives.c (#sccs table entry): Mark IN_I, consistent with #ident.
1030 (do_sccs): Delete function definition, #define to do_ident.
1031 (do_ident): Don't hardwire directive name.
1032
5a8c20ce
RK
10332005-05-12 Ryota Kunisawa <kunisawa@access.co.jp>
1034
1035 PR bootstrap/21230
1036 * configure: Regenerate.
1037
473c5bc9
AP
10382005-04-27 Andris Pavenis <pavenis@latnet.lv>
1039
1040 * files.c: Include io.h for DJGPP to get prototype of setmode.
1041
c1fc5047
PB
10422005-04-19 Per Bothner <per@bothner.com>
1043
1044 PR preprocessor/20907
1045 * line-map.c (linemap_line_start): Fix bug when we need to increse
1046 column_bits but can re-use the current line_map.
1047
042630ad
KG
10482005-04-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1049
1050 * system.h (fopen, fdopen, freopen): Define these to the unlocked
1051 libiberty functions.
1052
0d667716
KG
10532005-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1054
1055 * configure.ac (libcpp_UNLOCKED_FUNCS): New.
1056 (AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for libcpp_UNLOCKED_FUNCS.
1057 * system.h (putchar, getc, getchar, clearerr, feof, fileno,
1058 fflush, fgetc, fgets, ferror, fread): Redefine to the associated
1059 _unlocked function.
1060 (fwrite_unlocked): Fix prototype.
1ed17cd5 1061
0d667716
KG
1062 * configure, config.in: Regenerate.
1063
cae064e7
JJ
10642005-04-05 Jakub Jelinek <jakub@redhat.com>
1065
1066 PR preprocessor/19475
1067 * macro.c (create_iso_definition): For < ISO C99, don't
1068 pedwarn if there is no whitespace between macro name and its
1069 replacement, but the replacement starts with a basic character
1070 set character.
1071
cbada204
AJ
10722005-03-28 Andreas Jaeger <aj@suse.de>
1073
1074 * lex.c (warn_about_normalization): Cast field width to int to
1075 avoid warning.
1076
f42eccdb
JM
10772005-03-19 Joseph S. Myers <joseph@codesourcery.com>
1078
1079 * configure.ac: Consistently use solaris2.1[0-9]* instead of
1080 solaris2.1[0-9].
1081 * configure: Regenerate.
1082
c79e602b
GK
10832005-03-15 Geoffrey Keating <geoffk@apple.com>
1084
1085 * charset.c (_cpp_valid_ucn): In identifiers, reject a partial
1086 UCN rather than printing an error.
1087
50668cf6
GK
10882005-03-14 Geoffrey Keating <geoffk@apple.com>
1089
6baba9bb
GK
1090 * lex.c (forms_identifier_p): Disable UCNs in C89 mode.
1091
10922005-03-14 Geoffrey Keating <geoffk@apple.com>
1ed17cd5 1093
50668cf6
GK
1094 * init.c (cpp_create_reader): Default warn_normalize to normalized_C.
1095 * charset.c: Update for new format of ucnid.h.
1096 (ucn_valid_in_identifier): Update for new format of ucnid.h.
1097 Add NST parameter, and update it; update callers.
1098 (cpp_valid_ucn): Add NST parameter, update callers. Replace abort
1099 with cpp_error.
1100 (convert_ucn): Pass normalize_state to cpp_valid_ucn.
1101 * internal.h (struct normalize_state): New.
1102 (INITIAL_NORMALIZE_STATE): New.
1103 (NORMALIZE_STATE_RESULT): New.
1104 (NORMALIZE_STATE_UPDATE_IDNUM): New.
1105 (_cpp_valid_ucn): New.
1106 * lex.c (warn_about_normalization): New.
1107 (forms_identifier_p): Add normalize_state parameter, update callers.
1108 (lex_identifier): Add normalize_state parameter, update callers. Keep
1109 the state current.
1110 (lex_number): Likewise.
1111 (_cpp_lex_direct): Pass normalize_state to subroutines. Check
1112 it with warn_about_normalization.
1113 * makeucnid.c: New.
1114 * ucnid.h: Replace.
1115 * ucnid.pl: Remove.
1116 * ucnid.tab: Make appropriate for input to makeucnid.c. Remove
1117 comments about obsolete version of C++.
1118 * include/cpplib.h (enum cpp_normalize_level): New.
1119 (struct cpp_options): Add warn_normalize field.
1120
47e20491
GK
11212005-03-11 Geoffrey Keating <geoffk@apple.com>
1122
1123 * directives.c (glue_header_name): Update call to cpp_spell_token.
1124 * internal.h (_cpp_interpret_identifier): New.
1125 * charset.c (_cpp_interpret_identifier): New.
1126 (_cpp_valid_ucn): Allow UCN version of '$'.
1127 * lex.c (lex_identifier): Add extra parameter to indicate if initial
1128 character was '$' or '\'. Support identifiers with UCNs.
1129 (forms_identifier_p): Allow UCNs.
1130 (_cpp_lex_direct): Pass extra parameter to lex_identifier.
1131 (utf8_to_ucn): New.
1132 (cpp_spell_token): Add FORSTRING parameter. Use it.
1133 (cpp_token_as_text): Update call to cpp_spell_token.
1134 (cpp_output_token): Write UCNs back out.
1135 (stringify_arg): Update call to cpp_spell_token.
1136 (paste_tokens): Likewise.
1137 (cpp_macro_definition): Likewise.
1138 * macro.c (stringify_arg): Likewise.
1139 (paste_tokens): Likewise.
1140 (cpp_macro_definition): Likewise.
1141 * include/cpplib.h: Add parameter to cpp_spell_token.
1142
73096711
JJ
11432005-03-04 Jakub Jelinek <jakub@redhat.com>
1144
1145 PR bootstrap/20282
1146 PR bootstrap/20305
1147 * macro.c (replace_args, cpp_get_token): Copy whole
1148 cpp_token_u instead of just cpp_string field from it.
1149
2203a881
DP
11502005-02-28 Devang Patel <dpatel@apple.com>
1151
1152 * directives.c (do_line): Save sysp early before line table is
1153 realloc'ed.
1ed17cd5 1154
c5ff069d
ZW
11552005-02-20 Zack Weinberg <zack@codesourcery.com>
1156
1157 PR 18785
1158 * charset.c (LAST_POSSIBLY_BASIC_SOURCE_CHAR): New helper macro.
1159 (cpp_host_to_exec_charset): New function.
1160 * include/cpplib.h: Declare cpp_host_to_exec_charset.
1161
04c90eea
DP
11622005-02-19 Devang Patel <dpatel@apple.com>
1163
1164 * charset.c (_cpp_convert_input): Check '\r' before inserting
1165 '\n' at the end.
c5ff069d 1166
6da55c00
EC
11672005-02-15 Eric Christopher <echristo@redhat.com>
1168
1169 PR preprocessor/19077
1170 * macro.c (cpp_macro_definition): Move handling of whitespace
1171 to PREV_WHITE conditional. Remove overloading of len
1172 variable.
1173
31c3e631
KH
11742005-02-14 Kazu Hirata <kazu@cs.umass.edu>
1175
1176 * directives.c, files.c, init.c, internal.h, macro.c, pch.c,
1177 traditional.c: Update copyright.
1178
be0f1e54
PB
11792005-02-14 Paolo Bonzini <bonzini@gnu.org>
1180
1181 PR bootstrap/19818
1182 * configure.ac: Check for declaration of basename and getopt.
1183 * config.in: Regenerate.
1184 * configure: Regenerate.
1185 * internal.h (ustrcspn): New.
1186 * macro.c (create_iso_definition): Fix allocation of memory.
1187 (padding_token): Add cast to remove const-ness.
1188 * pch.c (cpp_read_state): Use ustrcspn.
1189
ecddfb39
MS
11902005-02-08 Mike Stump <mrs@apple.com>
1191
1192 * files.c (pchf_adder): Remove.
1193 (struct pchf_adder_info): Likewise.
1194 (_cpp_save_file_entries): Write out all files so that #import works.
1195
9fcdd891
JM
11962005-01-23 Joseph S. Myers <joseph@codesourcery.com>
1197
1198 * configure: Regenerate.
1199
ecfd72e7
TS
12002005-01-11 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
1201
1202 * include/cpplib.h (c_lang): Fix comment to say cpp_create_reader.
1203
6c25a4f7 1204 * include/cpplib.h: Also update copyright years.
c5ff069d 1205
942926ad
GK
12062005-01-03 Geoffrey Keating <geoffk@apple.com>
1207
1208 * files.c (_cpp_find_file): Add files found by search_path_exhausted
1209 to the list of all files.
1210
a2566ae9
GDR
12112005-01-01 Gabriel Dos Reis <gdr@integrable-solutions.net>
1212
1213 * internal.h: Update references to Cpp lib filenames.
1214 * directives.c: Likewise.
1215 * init.c: Likewise.
1216 * macro.c: Likewise.
1217 * traditional.c: Likewise.
1218
1b449375
EB
12192004-12-15 Eric Botcazou <ebotcazou@libertysurf.fr>
1220
1221 PR preprocessor/15167
1222 * files.c (destroy_cpp_file): New function.
1223 (should_stack_file): Make a new file if the
1224 compared file is still stacked.
1225
28303828
NN
12262004-11-28 Nathanael Nerode <neroden@gcc.gnu.org>
1227
c5ff069d 1228 PR preprocessor/17610
28303828
NN
1229 * directives.c (do_include_common): Error out if an empty filename
1230 is given for #include (or #include_next or #import).
1231
c812785a
RS
12322004-11-27 Roger Sayle <roger@eyesopen.com>
1233 Zack Weinberg <zack@codesourcery.com>
1234
1235 * internal.h: Replace all uses of uchar with unsigned char.
1236 * include/cpp-id-data.h: Likewise. Guard typedef of uchar
1237 with !IN_GCC, so uchar is only defined whilst building libcpp.
1238
f91eaa01
KC
12392004-11-24 Kelley Cook <kcook@gcc.gnu.org>
1240
1241 * aclocal.m4: Regenerate.
1242
f78ce0c2
RS
12432004-11-24 Roger Sayle <roger@eyesopen.com>
1244
1245 PR preprocessor/15824
1246 * configure.ac: Correct HAVE_UCHAR test to #include <sys/types.h>
1247 directly, instead of the non-existant "system.h" and "ansidecl.h".
1248 * configure: Regenerate.
1249
b5b3e36a 12502004-11-23 Daniel Jacobowitz <dan@codesourcery.com>
c5ff069d 1251 Joseph Myers <joseph@codesourcery.com>
b5b3e36a
DJ
1252
1253 * internal.h (struct lexer_state): Add in_deferred_pragma.
1254 * directives.c (struct pragma_entry): Add allow_expansion.
1255 (insert_pragma_entry): Take allow_expansion flag.
1256 (register_pragma): Likewise.
1257 (cpp_register_pragma): Likewise.
1258 (_cpp_init_internal_pragmas): Update calls to cpp_register_pragma.
1259 (do_pragma): Honor allow_expansion.
1260 (cpp_handle_deferred_pragma): Set in_deferred_pragma.
1261 * include/cpplib.h (cpp_register_pragma): Update prototype.
1262
a8e68029 12632004-11-18 Daniel Jacobowitz <dan@codesourcery.com>
c5ff069d 1264 Mark Mitchell <mark@codesourcery.com>
a8e68029
DJ
1265
1266 * configure.ac (i[34567]86-*-solaris2.1[0-9]*): Set
1267 need_64bit_hwint=yes.
1268 * configure: Regenerate.
1269
50f47ee0
JM
12702004-11-09 Joseph S. Myers <joseph@codesourcery.com>
1271
1272 * Makefile.in ($(PACKAGE).pot): New rule. Depend on
1273 po/$(PACKAGE).pot.
1274 (po/$(PACKAGE).pot): Use ":" instead of "," in --keyword
1275 arguments. Add keywords _, N_, SYNTAX_ERROR and SYNTAX_ERROR2.
1276 Remove local srcdir path from generated file.
1277
968e08d6 12782004-11-04 Zack Weinberg <zack@codesourcery.com>
c5ff069d 1279 Gerald Pfeifer <gerald@pfeifer.com>
968e08d6
ZW
1280
1281 * internal.h (HAVE_ICONV): Undefine if we do not have HAVE_ICONV_H
1282 as well.
1283
3da3d587
ZW
12842004-10-27 Zack Weinberg <zack@codesourcery.com>
1285
1286 PR 18075
1287 * directives.c (do_pragma): Do not defer pragmas which are unknown.
1288 (cpp_handle_deferred_pragma): Add cast to silence warning.
1289
ac24fc25
JM
12902004-10-14 Joseph S. Myers <jsm@polyomino.org.uk>
1291
1292 * errors.c (_cpp_begin_message): Print "error: " for errors.
1293
7731405b
AJ
12942004-10-10 Andreas Jaeger <aj@suse.de>
1295
1296 * makedepend.c: Include mkdeps.h for prototype of deps_add_vpath.
1297 * Makefile.in (makedepend.o): Add dependency on mkdeps.h.
1298
646544e3
AP
12992004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
1300
1301 * pch.c (cpp_write_pch_state): Remove variable z as it is not
1302 used.
1303 (cpp_read_state): Remove unused variables, m, d and mac_count.
1304
67a74146
PB
13052004-09-29 Per Bothner <per@bothner.com>
1306
1307 * directives.c (cpp_handle_deferred_pragma): Save, clear and restore
1308 cb.line_change. Otherwise do_pragma will call the line_change
1309 call-back with a meaningless line number.
1310
018a4785
ZW
13112004-09-24 Zack Weinberg <zack@codesourcery.com>
1312
1313 * configure.ac: Move AC_PROG_MAKE_SET, AC_PROG_INSTALL to
1314 programs cluster. Use ACX_PROG_CC_WARNING_OPTS,
1315 ACX_PROG_CC_WARNING_ALMOST_PEDANTIC, ACX_PROG_CC_WARNINGS_ARE_ERRORS.
1316 * aclocal.m4, configure: Regenerate.
1317 * init.c: Include localedir.h.
1318 * Makefile.in (WARN_CFLAGS, ALL_CFLAGS): New variables.
1319 (DEFS): Delete.
1320 (.c.o): Use $(ALL_CFLAGS).
1321 (localedir.h, localedir.hs): New rules.
1322 (clean): Use rm -rf to remove directories.
1323 (distclean): Also delete localedir.h and localedir.hs.
1324 (init.o): Update dependencies.
1325
88fa57d7
KC
13262004-09-22 Kelley Cook <kcook@gcc.gnu.org>
1327
1328 * Makefile.in (aclocal.m4): Update dependencies.
1329 * configure.ac (AC_CONFIG_MACRO_DIR): New.
1330 * aclocal.m4, configure: Regenerate.
1331
8f8e9aa5
ZW
13322004-09-17 Zack Weinberg <zack@codesourcery.com>
1333
a29f62d9
ZW
1334 * charset.c (_cpp_destroy_iconv, emit_numeric_escape)
1335 (_cpp_convert_input, _cpp_default_encoding): Add comments.
1336 Some other comments in this file also tweaked.
1337
8f8e9aa5
ZW
1338 * directives.c (do_pragma): Save current buffer position
1339 before lexing the pragma keywords; don't call
1340 _cpp_backup_tokens in the defer_pragmas case.
1341
a2981930
PB
13422004-09-15 Per Bothner <per@bothner.com>
1343
1344 * include/line-map.h (line_map_start): Add parameter names so
1345 preceding comment makes sense.
1346 (linemap_add): Remove from comment mention of non-existing parameter.
1347
21b11495
ZW
13482004-09-09 Matt Austern <austern@apple.com>
1349 Zack Weinberg <zack@codesourcery.com>
1350
1351 * include/cpplib.h (TTYPE_TABLE): Remove CPP_ and SPELL_
1352 prefixes throughout. Add entry for PRAGMA. Remove
1353 unnecessary "= 0" from EQ.
1354 (enum cpp_ttype): Adjust OP and TK definitions to restore
1355 prefixes, via token-paste.
1356 (CPP_LAST_EQ, CPP_FIRST_DIGRAPH, CPP_LAST_PUNCTUATOR, CPP_LAST_CPP_OP):
1357 Change from #defines to additional cpp_ttype enumerators.
1358 (struct cpp_options): Add defer_pragmas.
1359 (cpp_handle_deferred_pragma): Prototype new interface.
1360
1361 * internal.h (struct cpp_reader): Add directive_result.
1362 * directives.c (struct pragma_entry): Add is_internal field;
1363 give boolean fields type bool.
1364 (start_directive): Initialize pfile->directive_result.type.
1365 (_cpp_do__Pragma): Likewise.
1366 (run_directive): Do not crash if pfile->buffer->prev is NULL.
1367 (insert_pragma_entry): Add 'internal' argument; set new->is_internal
1368 from it.
1369 (register_pragma): New static function, bulk of former
1370 cpp_register_pragma here; add 'internal' argument, pass along
1371 to insert_pragma_entry.
1372 (cpp_register_pragma): Now a wrapper around register_pragma which
1373 always passes false for 'internal' argument.
1374 (_cpp_init_internal_pragmas): Call register_pragma directly, passing
1375 true for 'internal'.
1376 (do_pragma): If CPP_OPTION (pfile, defer_pragmas) and this isn't
1377 an internal pragma, save text till the end of the line as a CPP_PRAGMA
1378 token instead of executing the pragma.
1379 (cpp_handle_deferred_pragma): New interface.
1380 * lex.c (token_spellings): Adjust OP and TK definitions to
1381 match changes to cpplib.h.
1382 (_cpp_lex_token): Check for a directive-result token and
1383 return it if present.
1384 (cpp_token_val_index): Handle CPP_PRAGMA.
1385 * macro.c (cpp_builtin_macro_text): Correct comment.
1386 (builtin_macro): Handle directive-result tokens from _cpp_do__Pragma.
1387
0fd9e8dd
SB
13882004-09-06 Serge Belyshev <belyshev@lubercy.com>
1389
1390 PR preprocessor/14699
1391 * symtab.c (ht_dump_statistics): Change type of sum_of_squares
1392 from size_t to double.
1393
39b8ce7f
AS
13942004-08-28 Andreas Schwab <schwab@suse.de>
1395 Andreas Jaeger <aj@suse.de>
1396
1397 * configure.ac: Set PACKAGE correctly.
1398 * configure: Regenerated.
1399
5d1f4b27
PB
14002004-08-25 Paolo Bonzini <bonzini@gnu.org>
1401
1402 * Makefile.in: Add back top_builddir.
1403
078e3ffe
PB
14042004-08-25 Paolo Bonzini <bonzini@gnu.org>
1405
1406 * configure.ac: Replace Automake macro invocations
1407 with manual Autoconf checks and substitutions.
1408 * configure: Regenerate.
1409 * aclocal.m4: Regenerate.
1410 * config.in: Regenerate.
1411 * Makefile.am: Removed.
1412 * Makefile.in: Heavy simplification and reorganization.
1413
b3f8d95d
MM
14142004-08-09 Mark Mitchell <mark@codesourcery.com>
1415
1416 * configure.ac (arm*-*-eabi*): New target.
1417 (arm*-*-symbianelf*): Likewise.
1418 * configure: Regenerated.
1419
72bb2c39
BI
14202004-07-24 Bernardo Innocenti <bernie@develer.com>
1421
1422 * internal.h (xnew, xcnew, xnewvec, xcnewvec, xobnew): Remove.
1423 * directives.c: Use XNEW-family macros from libiberty.
1424 * lex.c: Likewise.
1425 * macro.c: Likewise.
1426 * cpplib.h (cpp_deps_style): Export enum with name.
1427
21b11495 14282004-07-23 Matthias Klose <doko@debian.org>
72bb2c39 1429
21b11495 1430 * init.c (init_library): Use PACKAGE for the text domain.
85eac2a0 1431
a23ee064
AP
14322004-07-16 Andris Pavenis <pavenis@latnet.lv>
1433
1434 PR preprocessor/16366
1435 * internal.h (struct cpp_reader): New field dir_hash.
1436 * files.c (make_cpp_dir): Use dir_hash, not file_hash.
1437 (_cpp_init_files, _cpp_cleanup_files): Update for new field.
1438
a09d4744
NB
14392004-07-04 Neil Booth <neil@duron.akihabara.co.uk>
1440
1441 PR preprocessor/16192
1442 PR preprocessor/15913
1443 PR preprocessor/15572
1444 * expr.c (_cpp_parse_expr): Handle remaining cases where an
1445 expression is missing.
1446 * init.c (post_options): Traditional cpp doesn't do // comments.
1447
f58f7def
PB
14482004-06-30 Per Bothner <per@bothner.com>
1449
1450 * include/line-map.h (fileline): Remove old typedef.
1451 * internal.h (struct cpp_reader): Use source_location typedef instead.
1452
e83d8d43
ZW
14532004-06-26 Zack Weinberg <zack@codesourcery.com>
1454
1455 Partially revert patch of 2004-06-05.
1456 * files.c (search_cache): Remove pfile argument. Don't check
1457 for file that would be found by "" or <> search here...
1458 (_cpp_find_file): ...do it here, before calling find_file_in_dir.
1459 Do not apply directory-of-current-file correction to files
1460 found by this check. Rearrange code slightly.
1461
c0d578e6
GK
14622004-06-21 Geoffrey Keating <geoffk@apple.com>
1463
1464 * files.c (should_stack_file): Correct swapped parameters to call
1465 to cb.read_pch.
1466 * pch.c (cpp_valid_state): Handle -fpreprocessed.
1467
159d5224
PB
14682004-06-15 Paolo Bonzini <bonzini@gnu.org>
1469
1470 * Makefile.in: Regenerate with automake 1.8.5.
1471 * aclocal.m4: Likewise.
1472 * configure: Regenerate.
1473
2fac9c01
ZW
14742004-06-11 Zack Weinberg <zack@codesourcery.com>
1475
1476 * configure.ac: Don't invoke ACX_HEADER_STDBOOL.
1477 * configure, config.in: Regenerate.
1478 * system.h: Unconditionally define bool as unsigned char,
1479 BOOL_BITFIELD as unsigned int.
1480 * .cvsignore: New file.
1481
d8044160
GK
14822004-06-09 Geoffrey Keating <geoffk@apple.com>
1483
1484 * traditional.c (push_replacement_text): Set macro->traditional.
1485 (save_replacement_text): Likewise.
1486 * pch.c (cpp_write_pch_state): Don't write list of defined macros.
1487 (struct save_macro_item): Delete.
1488 (struct save_macro_data): Use a character array not the previous
1489 structured format.
1490 (save_macros): Save macro as text not as internal structures.
1491 (cpp_prepare_state): Update for changes to save_macro_data.
1492 (cpp_read_state): Don't read macros defined in PCH. Restore
2cf22451 1493 -D macros as text.
d8044160
GK
1494 * macro.c (create_iso_definition): Honour alloc_subobject.
1495 Clear traditional flag.
1496 (_cpp_create_definition): Honour alloc_subobject.
1497 * lex.c (cpp_token_val_index): New.
1498 * internal.h: Include cpp-id-data.h.
1499 (uchar): Move definition to cpp-id-data.h.
1500 (U): Likewise.
1501 (cpp_macro): Likewise.
1502 * directives.c (struct answer): Move to cpp-id-data.h.
1503 (do_assert): Honour alloc_subobject.
2cf22451
ZW
1504
1505 * include/symtab.h (struct ht): Add field 'alloc_subobject'.
1506 * include/cpplib.h (struct cpp_string): Add GTY marker.
1507 (enum cpp_token_fld_kind): New.
1508 (struct cpp_token): Add GTY markers.
1509 (cpp_token_val_index): Prototype.
1510 (CPP_HASHNODE_VALUE_IDX): New.
1511 (struct cpp_hashnode): Don't skip fields of 'value' when marking.
1512 * include/cpp-id-data.h: New file.
d8044160 1513
0ca8e815
PB
15142004-06-09 Paolo Bonzini <bonzini@gnu.org>
1515
1516 * Makefile.am (all-local): New.
1517 * Makefile.in: Regenerate.
1518
b51fa00f
RS
15192004-06-06 Roger Sayle <roger@eyesopen.com>
1520
1521 * Makefile.am (LIBICONV): Declare.
1522 (makedepend_LDADD): Use LIBICONV.
1523 * Makefile.in: Regenerate.
1524
5e2f3f39
AP
15252004-06-05 Andrew Pinski <pinskia@physics.uc.edu>
1526
1527 * Makefile.am (LIBINTL): Declare
1528 (makedepend_LDADD): Use LIBINTL.
1529 * Makefile.in: Regenerate.
1530
c6e83800
ZW
15312004-06-05 Zack Weinberg <zack@codesourcery.com>
1532
1533 * Makefile.am: Add makedepend.
1534 * Makefile.in, aclocal.m4: Regenerate.
1535 * charset.c: Insert a space to avoid a warning.
1536 * directives.c: Include mkdeps.h.
1537 (_cpp_handle_directive): Reenable macro expander if appropriate.
1538 (undefine_macros): Inline body of _cpp_free_definition for speed.
1539 Do not call undef callback or _cpp_warn_if_unused_macro.
1540 (cpp_get_deps): New interface.
1541 * files.c (search_cache): Add pfile argument. Check for file
1542 that would be found by "" or <> search here...
1543 (_cpp_find_file): ...not here. Correct recorded start_dir of
1544 files found by directory-of-current-file search that would be
1545 found by "" or <> search.
1546 * init.c (cpp_add_dependency_target): Delete.
1547 * internal.h (struct lexer_state): Add discarding_output flag.
1548 * lex.c (lex_identifier): Compute hash function while scanning.
1549 * macro.c (cpp_scan_nooutput): Disable macro expansion outside
1550 directives.
1551 * makedepend.c: New file.
1552 * mkdeps.c (struct deps): Add vpath vector.
1553 (apply_vpath, deps_add_vpath): New function.
1554 (deps_free): Free vpath vector.
1555 (deps_add_dep, deps_add_target): Use apply_vpath.
1556 * symtab.c (calc_hash): Use HT_HASHSTEP and HT_FINISH.
1557 (ht_lookup_with_hash): New function.
1558 * cpplib.h, mkdeps.h: Update prototypes.
1559 * symtab.h: Update prototypes.
1560 (HT_HASHSTEP, HT_FINISH): New macros.
1561
b453c95f
GK
15622004-05-29 Geoffrey Keating <geoffk@apple.com>
1563
1564 * symtab.c (ht_create): Set entries_owned.
1565 (ht_destroy): Honour entries_owned.
1566 (ht_expand): Likewise.
1567 (ht_load): New.
2cf22451
ZW
1568 * include/symtab.h (struct ht): New field 'entries_owned'
1569 (ht_load): New prototype.
b453c95f 1570
963e23c5
PB
15712004-05-26 Paolo Bonzini <bonzini@gnu.org>
1572
1573 PR bootstrap/15651
1574 * configure.ac: Fix m4 quoting when picking
1575 the size of HOST_WIDE_INT.
1576 * configure: Regenerate.
1577
0429bc77
PB
15782004-05-25 Paolo Bonzini <bonzini@gnu.org>
1579
1580 * Makefile.am: the correct directory for
1581 gettext include files is given by @INCINTL@.
1582 * Makefile.in: Regenerate.
1583
c86dd7db
PB
15842004-05-24 Paolo Bonzini <bonzini@gnu.org>
1585
1586 * system.h [!ENABLE_NLS]: dgettext takes two
1587 parameters.
1588
4f4e53dd
PB
15892004-05-23 Paolo Bonzini <bonzini@gnu.org>
1590
1591 Moved libcpp from the gcc subdirectory to the toplevel.
1592 * Makefile.am: New file.
1593 * Makefile.in: Regenerate.
1594 * configure.ac: New file.
1595 * configure: Regenerate.
1596 * config.in: Regenerate.
1597 * charset.c: Moved from gcc/cppcharset.c. Add note about
1598 brokenness of input charset detection. Adjust for change
1599 in name of cppucnid.h.
1600 * errors.c: Moved from gcc/cpperror.c. Do not include intl.h.
1601 * expr.c: Moved from gcc/cppexp.c.
1602 * files.c: Moved from gcc/cppfiles.c. Do not include intl.h.
1603 Remove #define of O_BINARY, it is in system.h.
1604 * identifiers.c: Moved from gcc/cpphash.c.
1605 * internal.h: Moved from gcc/cpphash.h. Change header
1606 guard name. All other files adjusted to match name change.
1607 * init.c: Moved from gcc/cppinit.c.
1608 (init_library) [ENABLE_NLS]: Call bindtextdomain.
1609 * lex.c: Moved from gcc/cpplex.c.
1610 * directives.c: Moved from gcc/cpplib.c.
1611 * macro.c: Moved from gcc/cppmacro.c.
1612 * pch.c: Moved from gcc/cpppch.c. Do not include intl.h.
1613 * traditional.c: Moved from gcc/cpptrad.c.
1614 * ucnid.h: Moved from gcc/cppucnid.h. Change header
1615 guard name.
1616 * ucnid.pl: Moved from gcc/cppucnid.pl.
1617 * ucnid.tab: Moved from gcc/cppucnid.tab. Change header
1618 guard name.
1619 * symtab.c: Moved from gcc/hashtable.c.
1620 * line-map.c: Moved from gcc. Do not include intl.h.
1621 * mkdeps.c: Moved from gcc.
1622 * system.h: New file.
2cf22451
ZW
1623 * include/cpplib.h: Moved from gcc. Change header guard name.
1624 * include/line-map.h: Moved from gcc. Change header guard name.
1625 * include/mkdeps.h: Moved from gcc. Change header guard name.
1626 * include/symtab.h: Moved from gcc/hashtable.h. Change header
1627 guard name.