OSDN Git Service

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