aboutsummaryrefslogtreecommitdiff
path: root/libcpp
AgeCommit message (Collapse)AuthorFilesLines
2006-01-23re PR preprocessor/25717 (-dD does not list all defined macros (in ↵Jakub Jelinek3-11/+22
particular, __STDC__)) PR preprocessor/25717 * init.c (cpp_init_builtins): If __STDC__ will not change value between system headers and other sources, define it as a normal macro rather than a builtin. * macro.c (_cpp_builtin_macro_text) <case BT_STDC>: Only check cpp_in_system_header condition. From-SVN: r110144
2006-01-05Makefile.in: Use -MMD instead of -MD.Paolo Bonzini2-1/+5
2006-02-05 Paolo Bonzini <bonzini@gnu.org> * Makefile.in: Use -MMD instead of -MD. From-SVN: r109373
2006-01-04directives.c (struct pragma_entry): Add is_deferred.Richard Henderson6-245/+279
libcpp/ * directives.c (struct pragma_entry): Add is_deferred. Add ident entry to value union. (end_directive): Don't eat the line if in_deferred_pragma. (run_directive): Remove pragma hacks. (insert_pragma_entry): Remove. (new_pragma_entry): New. (register_pragma_1): Split out of register_pragma. Only handle the lookup tree and return the new entry. (cpp_register_pragma): Fill in the pragma entry here. (cpp_register_deferred_pragma): New. (register_pragma_internal): New. (_cpp_init_internal_pragmas): Use register_pragma_internal. (do_pragma): Allow pragma expansion after namespace. For deferred pragmas, don't slurp the line into a string. (destringize_and_run): Save tokens for deferred pragmas. (cpp_handle_deferred_pragma): Remove. * macro.c (builtin_macro): Remove pragma token hack. (_cpp_push_token_context): Rename from push_token_context and export. * internal.h (struct lexer_state): Add pragma_allow_expansion. (_cpp_push_token_context): Declare. * lex.c (_cpp_lex_token): Allow _cpp_handle_directive to return a token. Update the line number correctly if so. (_cpp_lex_direct): Emit CPP_PRAGMA_EOL tokens. (cpp_token_val_index): Return CPP_TOKEN_FLD_PRAGMA for pragmas. * include/cpplib.h (PRAGMA_EOL): New. (CPP_TOKEN_FLD_PRAGMA): New. (struct cpp_token): Add val.pragma. (struct cpp_options): Remove defer_pragmas. (cpp_handle_deferred_pragma): Remove. (cpp_register_deferred_pragma): Declare. gcc/ * c-lex.c (c_lex_with_flags) <CPP_PRAGMA>: Smuggle pragma id via integer constant. (pragma_lex): Remove. * c-pch.c (c_common_pch_pragma): Accept the name as an argument, rather than parsing it. * c-pragma.c (handle_pragma_weak, handle_pragma_redefine_extname, handle_pragma_extern_prefix): Add %< %> quotes. (registered_pragmas): New. (c_register_pragma_1): New. (c_register_pragma): Use it. (c_register_pragma_with_expansion): Likewise. (c_invoke_pragma_handler): New. (init_pragma): Use cpp_register_deferred_pragma directly for pch_preprocess. * c-pragma.h (enum pragma_kind): New. (pragma_handler): New. (c_invoke_pragma_handler): Declare. * c-common.c (c_parse_error): Pretty print CPP_PRAGMA and CPP_PRAGMA_EOL. * c-common.h (c_common_pch_pragma): Update decl. * Makefile.in (c-parser.o): Update dependencies. (GTFILES): Add c-pragma.h. * c-parser.c (struct c_token): Add pragma_kind. (struct c_parser): Add in_pragma. (c_lex_one_token): Always initialize keyword and pragma_kind. Extract data for CPP_PRAGMA. (c_parser_peek_2nd_token): Deny CPP_PRAGMA_EOL. (c_parser_consume_token): Don't allow CPP_PRAGMA unless errors. Don't allow CPP_PRAGMA_EOL if in_pragma. (c_parser_consume_pragma): New. (c_parser_skip_until_found): Stop on CPP_PRAGMA_EOL. (c_parser_skip_to_end_of_parameter): Likewise. (c_parser_skip_to_end_of_block_or_statement): Likewise. (c_parser_skip_to_pragma_eol): New. (c_parser_external_declaration): Handle CPP_PRAGMA. (c_parser_compound_statement_nostart): Likewise. (c_parser_statement_after_labels): Likewise. (c_parser_pragma): New. (pragma_lex): Likewise. (c_parser_pragma_pch_preprocess): New. (c_parser_new): Merge into ... (c_parse_file): ... here. Call c_parser_pragma_pch_preprocess. gcc/cp/ * lex.c (handle_pragma_java_exceptions): Fix whitespace. * parser.c (struct cp_token): Add pragma_kind. (eof_token): Update to match. (struct cp_lexer): Add in_pragma; rearrange next for better packing. (cp_parser_initial_pragma): New. (cp_lexer_new_main): Use it. Don't bother clearing c_lex_return_raw_strings. (cp_lexer_get_preprocessor_token): Always initialize keyword and pragma_kind fields. Handle CPP_PRAGMA. (cp_lexer_consume_token): Don't allow CPP_PRAGMA_EOL when in_pragma is set. (cp_lexer_handle_pragma): Remove. Update callers to cp_parser_pragma. (cp_lexer_print_token) <CPP_PRAGMA>: Don't print as a string. (cp_parser_skip_to_pragma_eol): New. (cp_parser_error): Use it. (cp_parser_skip_to_closing_parenthesis): Stop at CPP_PRAGMA_EOL; rearrange with switch statement. (cp_parser_skip_to_end_of_statement): Likewise. (cp_parser_skip_to_end_of_block_or_statement): Likewise. (cp_parser_skip_to_closing_brace): Likewise. (cp_parser_skip_until_found): Likewise. (cp_parser_statement): Add in_compound argument; update callers. Use it to decide how to handle pragma parsing. (cp_parser_labeled_statement): Add in_compound argument; pass it on to cp_parser_statement. (cp_parser_statement_seq_opt): Stop at CPP_PRAGMA_EOL. (cp_parser_declaration_seq_opt): Likewise. (cp_parser_parameter_declaration): Likewise. (cp_parser_member_specification_opt): Likewise. (cp_parser_function_definition_after_decl): Likewise. (cp_parser_cache_group): Handle CPP_PRAGMA/CPP_PRAGMA_EOL pairs. (cp_parser_pragma): New. (pragma_lex): New. gcc/testsuite/ * g++.dg/parse/pragma2.C: Update expected error lines. From-SVN: r109336
2006-01-01re PR c++/25294 (Bogus "unterminated comment" error from #pragma comment)Jakub Jelinek2-4/+56
PR c++/25294 * directives.c (do_pragma): If pragma line ends with multi-line block comment, end the saved deferred pragma string before that comment. Handle embedded '\0' chars on the pragma line. * gcc.dg/pragma-pack-3.c: New test. * g++.dg/parse/pragma3.C: New test. From-SVN: r109201
2005-12-22re PR c++/23333 (accepts invalid pure specifier)Volker Reichelt2-0/+7
2005-12-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> PR c++/23333 * include/cpplib.h: Add PURE_ZERO to flags for the cpp_token structure. * c-lex.c (c_lex_with_flags): Add PURE_ZERO to cpp_flags if number is a single digit '0'. * parser.c (cp_parser_pure_specifier): Check for PURE_ZERO to identify a single '0'. * g++.dg/parse/error25.C: Add more tests. From-SVN: r108947
2005-12-07cpplib.h (CPP_N_DFLOAT): New.Jon Grimm3-2/+31
* include/cpplib.h (CPP_N_DFLOAT): New. * expr.c (interpret_float_suffix): Identify df, dd, and dl suffixes as decimal floating point constants. (cpp_classify_number): Disallow hexadecimal DFP constants. Co-Authored-By: Ben Elliston <bje@au.ibm.com> From-SVN: r108133
2005-12-06* vi.po: Update.Joseph Myers2-162/+163
From-SVN: r108117
2005-12-03* zh_CN.po: New file.Joseph Myers2-0/+854
From-SVN: r107981
2005-12-01be.po, [...]: Update.Joseph Myers14-14158/+2202
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, rw.po, sv.po, tr.po, vi.po: Update. From-SVN: r107808
2005-11-20* cpplib.pot: Regenerate.Joseph Myers2-99/+112
From-SVN: r107256
2005-11-14cpplib.h (struct cpp_callbacks): Annotate error with ↵Gerald Pfeifer2-1/+7
ATTRIBUTE_FPTR_PRINTF(3,0) instead of ATTRIBUTE_PRINTF(3,0). * include/cpplib.h (struct cpp_callbacks): Annotate error with ATTRIBUTE_FPTR_PRINTF(3,0) instead of ATTRIBUTE_PRINTF(3,0). Co-Authored-By: Ian Lance Taylor <ian@airs.com> From-SVN: r106891
2005-11-09re PR c/24101 (Segfault with preprocessed source)Uros Bizjak2-0/+10
libcpp/ PR c/24101 * init.c (read_original_filename): Temporarily set state.in_directive before calling _cpp_lex_direct for CPP_HASH tokens. gcc/ PR c/24101 * toplev.c (process_options): Initialize debug_hooks early in case lang_hooks.post_options ends up calling a debug_hook. gcc/testsuite/ PR c/24101 * gcc.dg/pr24101-1.i, gcc.dg/pr24101-2.i: New tests. * gcc.dg/dg.exp: Run main loop also for *.i files. From-SVN: r106677
2005-11-03Fix failure with pragma once where buffer is NULL and buffer_valid is true.James E Wilson2-0/+6
PR preprocessor/24202 * files.c (_cpp_pop_file_buffer): Set buffer_valid to false. From-SVN: r106472
2005-11-04cp-tree.h (cp_cpp_error), [...]): Take va_list* parameter.Joseph Myers3-2/+8
gcc/cp: * cp-tree.h (cp_cpp_error), error.c (cp_cpp_error): Take va_list* parameter. libcpp: * include/cpplib.h (struct cpp_callbacks): Make error take va_list* parameter. * errors.c (cpp_error): Update call to callback. From-SVN: r106466
2005-11-03re PR preprocessor/22042 (stringification BUG)Andrew Pinski2-13/+12
2005-11-03 Andrew Pinski <pinskia@physics.uc.edu> PR preprocessor/22042 * macro.c (_cpp_builtin_macro_text): Lower the needed max buffer size. (cpp_quote_string): Don't octalify non printable charactors. 2005-11-03 Andrew Pinski <pinskia@physics.uc.edu> PR preprocessor/22042 * gcc.dg/cpp/strify4.c: New test. From-SVN: r106463
2005-11-03re PR c++/17964 (cpp error messages contain wrong line in C++)Joseph Myers4-13/+40
gcc: PR c++/17964 * diagnostic.c (diagnostic_set_info_translated): New function. (diagnostic_set_info): Use it. Add comment. * diagnostic.h (diagnostic_set_info_translated): Declare. gcc/cp: * error.c (cp_cpp_error): New function. * cp-tree.h (cp_cpp_error): Declare. * parser.c (cp_lexer_new_main): Set CPP option client_diagnostic and error callback after lexing. gcc/testsuite: * g++.dg/cpp/string-1.C: New test. libcpp: * include/cpplib.h (struct cpp_options): Add client_diagnostic. (struct cpp_callbacks): Add error. * errors.c (cpp_error): If client_diagnostic, use error callback. * charset.c (convert_escape): Don't use %03o in diagnostic. From-SVN: r106454
2005-10-31.cvsignore are not needed for subversion, remove them.Andreas Jaeger1-1/+0
From-SVN: r106279
2005-10-21Fix date of last ChangeLog entry.Jim Wilson1-1/+1
From-SVN: r105760
2005-10-21Fix bug with -MM -MG.James E Wilson4-14/+24
PR preprocessor/15220 * files.c (_cpp_find_file): New parameter angle_brackets. Fix all callers. Pass to open_file_failed. (open_file_failed): New parameter angle_brackets. Fix all callers. Use in print_dep assignment. * init.c (cpp_read_main_file): Pass additional arg to _cpp_find_file. * internal.h (_cpp_find_file): Add new parm to declaration. From-SVN: r105757
2005-10-08configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi...Kazu Hirata3-2/+7
/ * configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi, target-qthreads, target-libjava, and targetlibobjc. * configure: Regenerate. gcc/ Merge from csl-arm-branch: 2005-09-07 Paul Brook <paul@codesourcery.com> * config/arm/linux-eabi.h (SUBTARGET_EXTRA_LINK_SPEC): Prepend a space to string. 2005-04-30 Paul Brook <paul@codesourcery.com> * config/arm/bpabi.h (TARGET_DEFAULT): Define. * config/arm/linux-eabi.h (SUBTARGET_CPU_DEFAULT): Define. 2005-03-07 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.c (arm_all_abis): Add aapcs-linux. (arm_override_options): Use TARGET_AAPCS_BASED. * config/arm/arm.h (enum arm_abi_type): Add ARM_ABI_AAPCS_LINUX. (PTRDIFF_TYPE): Use int for AAPCS. (DEFAULT_SHORT_ENUMS): Use false for aapcs-linux. * config/arm/linux-eabi.h (ARM_DEFAULT_ABI, WCHAR_TYPE): Define. (DEFAULT_SHORT_ENUMS): Delete. * doc/invoke.texi (ARM Options): Document -mabi=aapcs-linux. 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.h (DEFAULT_SHORT_ENUMS): Wrap in #ifndef. * config/arm/linux-eabi.h (DEFAULT_SHORT_ENUMS): Define to 0. * config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS): Set to -fPIC. 2004-12-03 Mark Mitchell <mark@codesourcery.com> * config/arm/linux-eabi.h (LIBGCC_SPEC): Do not define. 2004-11-22 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Use __cxa_atexit. 2004-11-19 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Add it. * config/arm/bpabi.h (FPUTYPE_DEFAULT): Undefine it before redefining it. (TARGET_OS_CPP_BUILTINS): Likeiwse. * config/arm/linux-eabi.h: New file. * config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): New macro. (LINUX_TARET_LINK_SPEC): Likewise. (LINK_SPEC): Use it. * config/arm/t-linux-eabi: New file. libcpp/ * configure.ac: Require 64-bit int for arm*-*-*eabi*. * configure: Regenerate. libstdc++/ Merge from csl-arm-branch: 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols. From-SVN: r105121
2005-10-04re PR preprocessor/13726 (cpp -C -dI loses comments on same line as #include ↵Ian Lance Taylor3-10/+83
directives) libcpp/ PR preprocessor/13726 * directives.c (check_eol_return_comments): New static function. (parse_include): Add buf parameter. Change all callers. (do_include_common): If not discard comments, turn on save_comments. Pass collected comments to include callback. * include/cpplib.h (struct cpp_callbacks): Add new parameter to include callback: cpp_token list. gcc/ PR preprocessor/13726 * c-ppoutput.c (cb_include): Add comments parameter, and print out any comments passed in. gcc/testsuite/ PR preprocessor/13726 * gcc.dg/cpp/cmdlne-dI-C.c: New test. * gcc.dg/cpp/cmdlne-dI-C.h: New file. From-SVN: r104951
2005-09-20c.opt (fextended-identifiers): New.Joseph Myers4-17/+34
gcc: * c.opt (fextended-identifiers): New. * c-opts.c (c_common_handle_option): Handle -fextended-identifiers. * doc/cpp.texi: Update documentation of extended identifiers. * doc/cppopts.texi (-fextended-identifiers): Document. gcc/testsuite: * g++.dg/cpp/ucnid-1.C, g++.dg/cpp/normalize-1.C, g++.dg/other/ucnid-1.C, gcc.dg/cpp/normalize-1.c, gcc.dg/cpp/normalize-2.c, gcc.dg/cpp/normalize-3.c, gcc.dg/cpp/normalize-4.c, gcc.dg/cpp/ucnid-1.c, gcc.dg/cpp/ucnid-2.c, gcc.dg/cpp/ucnid-3.c, gcc.dg/cpp/ucnid-4.c, gcc.dg/cpp/ucnid-5.c, gcc.dg/cpp/ucnid-7.c,gcc.dg/ucnid-1.c, gcc.dg/ucnid-2.c, gcc.dg/ucnid-3.c, gcc.dg/ucnid-4.c, gcc.dg/ucnid-5.c, gcc.dg/ucnid-6.c: Add -fextended-identifiers. * gcc.dg/cpp/ucnid-8.c: New test. libcpp: * include/cpplib.h (struct cpp_options): Add extended_identifiers. * init.c (struct lang_flags, lang_defaults): Add extended_identifiers. (cpp_set_lang): Use it. * lex.c (forms_identifier_p): Check extended_identifiers. From-SVN: r104462
2005-09-04be.po, [...]: Update.Joseph Myers14-16/+23
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, rw.po, sv.po, tr.po, vi.po: Update. From-SVN: r103829
2005-08-30re PR preprocessor/20348 (File not included when file with same name is ↵Jakub Jelinek2-51/+32
included before) PR preprocessor/20348 PR preprocessor/20356 * files.c (_cpp_find_file, search_cache): Revert 2004-06-26 and 2004-06-05 changes. * gcc.dg/cpp/pr20348.c: New test. * gcc.dg/cpp/pr20348.h: New file. * gcc.dg/cpp/inc/pr20348.h: New file. * gcc.dg/cpp/inc/pr20348-aux.h: New file. * gcc.dg/cpp/pr20356.c: New test. * gcc.dg/cpp/pr20356.h: New file. * gcc.dg/cpp/inc/pr20356.h: New file. * gcc.dg/cpp/inc/pr20356-aux.h: New file. From-SVN: r103629
2005-07-24configure.ac (ACX_PROG_CC_WARNING_OPTS): add -Wmissing-format-attribute.Kaveh R. Ghazi3-2/+11
* configure.ac (ACX_PROG_CC_WARNING_OPTS): add -Wmissing-format-attribute. * configure: Regenerate. From-SVN: r102327
2005-06-29all files: Update FSF address in copyright headers.Kelley Cook27-30/+35
2005-06-29 Kelley Cook <kcook@gcc.gnu.org> * all files: Update FSF address in copyright headers. * makeucnid.c (write_copyright): Update outputted FSF address. From-SVN: r101413
2005-06-18* tr.po, vi.po: Update.Joseph Myers3-129/+133
From-SVN: r101168
2005-06-16be.po, [...]: Update.Joseph Myers14-39/+44
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, rw.po, sv.po, tr.po, vi.po: Update. From-SVN: r101092
2005-06-15* fr.po, sv.po: Update.Joseph Myers3-6747/+180
From-SVN: r100957
2005-06-13top level:Zack Weinberg5-35/+285
* depcomp: Update from automake CVS. Add 'ia64hp' stanza. In 'cpp' stanza, support '#line' as well as '# '. config: * depstand.m4, lead-dot.m4: New files. libcpp: * configure.ac: Invoke ZW_CREATE_DEPDIR and ZW_PROG_COMPILER_DEPENDENCIES. * aclocal.m4, configure: Regenerate. * Makefile.in (DEPMODE, DEPDIR, depcomp, COMPILE.base, COMPILE): New variables. (distclean): Clean up $(DEPDIR) and its contents. (.c.o): Use $(COMPILE). Include $(DEPDIR)/*.Po for most object->header dependencies. From-SVN: r100874
2005-06-07cpplib.pot: Regenerate.Jakub Jelinek2-144/+160
* cpplib.pot: Regenerate. * gcc.pot: Regenerate. From-SVN: r100724
2005-05-28configure.ac: Check declarations for asprintf and vasprintf.Gabriel Dos Reis20-152/+405
* configure.ac: Check declarations for asprintf and vasprintf. * config.in: Regenerate. * configure: Likewise. * charset.c (conversion_loop): Use XRESIZEVEC. (convert_no_conversion): Likewise. (convert_using_iconv): Likewise. (init_iconv_desc): Cast return value of alloca. (cpp_host_to_exec_charset): Use XNEWVEC. (emit_numeric_escape): Use XRESIZEVEC. (cpp_interpret_string): Use XNEWVEC. (cpp_interpret_string): Use XRESIZEVEC. (_cpp_interpret_identifier): Cast return value of alloca. (_cpp_convert_input): Use XNEWVEC and XRESIZEVEC. * directives.c (glue_header_name): Use XNEWVEC and XRESIZEVEC. (parse_include): Use XNEWVEC. (insert_pragma_entry): Rename local variable "new" to "new_entry". (save_registered_pragmas): Cast return value of xmemdup. (destringize_and_run): Same for alloca. (parse_assertion): Likewise. (do_assert): Cast allocated storage to proper type. (cpp_define): Likewise. (_cpp_define_builtin): Likewise. (cpp_undef): Likewise. (handle_assertion): Likewise. (cpp_push_buffer): Rename local variable "new" to "new_buffer". * expr.c (CPP_UPLUS): Cast value to type cpp_ttype. (CPP_UMINUS): Likewise. (struct cpp_operator): Rename from struct operator. (_cpp_expand_op_stack): Use XRESIZEVEC. * files.c (pch_open_file): Use XNEWVEC. (pch_open_file): Use XRESIZEVEC. (read_file_guts): Use XNEWVEC and XRESIZEVEC. (dir_name_of_file): Use XNEWVEC. (make_cpp_file): Use XCNEW. (make_cpp_dir): Likewise. (allocate_file_hash_entries): USE XNEWVEC. (cpp_included): Cast return value of htab_find_with_hash. (append_file_to_dir): Use XNEWVEC. (read_filename_string): Likewise. Use XRESIZEVEC too. (read_name_map): Cast return value of alloca. Use XRESIZEVEC. (remap_filename): Use XNEWVEC. (struct pchf_entry): Move definition out of struct pchf_data. (_cpp_save_file_entries): Use XCNEWVAR. (_cpp_read_file_entries): Use XNEWVAR. * identifiers.c (alloc_node): Use XOBNEW. * init.c (cpp_create_reader): Use XCNEW. (cpp_init_builtins): Cast of b->value to enum builtin_type. (read_original_directory): Cast return value of alloca. * lex.c (add_line_note): Use XRESIZEVEC. (warn_about_normalization): Use XNEWVEC. (_cpp_lex_direct): Cast node->directive_index to (enum cpp_ttype). (new_buff): Use XNEWVEC. * line-map.c (linemap_add): Use XRESIZEVEC. * macro.c (builtin_macro): Cast return value of alloca. (paste_tokens): Likewise. (expand_arg): Use XNEWVEC and XRESIZEVEC. (_cpp_save_parameter): Use XRESIZEVEC. (create_iso_definition): Cast allocated storage to proper type. (_cpp_create_definition): Likewise. (cpp_macro_definition): Use XRESIZEVEC. * makedepend.c (add_clm): Use XNEW. (add_dir): Likewise. * mkdeps.c (munge): Use XNEWVEC. (deps_init): Use XCNEW. (deps_add_target): Use XRESIZEVEC. (deps_add_default_target): Cast return value of alloca. (deps_add_dep): Use XRESIZEVEC. (deps_add_vpath): Likewise. Use XNEWVEC too. (deps_restore): Likewise. * pch.c (save_idents): Use XNEW and XNEWVEC. (cpp_save_state): Use XNEW. (count_defs): Cast return value of htab_find. (write_defs): Likewise. (cpp_write_pch_deps): Use XNEWVEC. (collect_ht_nodes): Use XRESIZEVEC. (cpp_valid_state): Use XNEWVEC. (save_macros): Use XRESIZEVEC. Cast return value of xmemdup. * symtab.c (ht_create): Use XCNEW. (ht_lookup_with_hash): Cast return value of obstack_copy0. (ht_expand): Use XCNEWVEC. * system.h (HAVE_DESIGNATED_INITIALIZERS): False if __cplusplus. (bool): Do not define if __cplusplus. From-SVN: r100295
2005-05-12directives.c (#sccs table entry): Mark IN_I, consistent with #ident.Zack Weinberg2-11/+15
libcpp: * directives.c (#sccs table entry): Mark IN_I, consistent with #ident. (do_sccs): Delete function definition, #define to do_ident. (do_ident): Don't hardwire directive name. gcc: * doc/cpp.texi: Document that #sccs is a synonym for #ident. From-SVN: r99623
2005-05-12re PR bootstrap/21230 (bootstrap failed unless bootstrap compiler is gcc.)Ryota Kunisawa2-1/+6
config/ PR bootstrap/21230 * warnings.m4 (ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Add double quotes around GCC variable. libcpp/ PR bootstrap/21230 * configure: Regenerate. From-SVN: r99613
2005-05-12Revert latest accidental commit.Eric Botcazou1-1424/+10
From-SVN: r99610
2005-05-05* nl.po: Update.Joseph Myers2-6859/+246
From-SVN: r99277
2005-04-30Fix matmul PR18857 and supply testcasePaul Thomas1-10/+1424
From-SVN: r99041
2005-04-27From Andris Pavenis, approved by Zack Weinberg, for DJGPP build problem.Andris Pavenis2-0/+5
* files.c: Include io.h for DJGPP to get prototype of setmode. From-SVN: r98910
2005-04-27be.po, [...]: Update.Joseph Myers14-551/+17651
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, rw.po, sv.po, tr.po, vi.po: Update. From-SVN: r98845
2005-04-21re PR preprocessor/20907 (long comments throw off line numbers)Per Bothner2-1/+11
PR preprocessor/20907 * line-map.c (linemap_line_start): Fix bug when we need to increse column_bits but can re-use the current line_map. From-SVN: r98515
2005-04-19system.h (fopen, [...]): Define these to the unlocked libiberty functions.Kaveh R. Ghazi2-0/+10
fixincludes: * system.h (fopen, fdopen, freopen): Define these to the unlocked libiberty functions. gcc: * system.h (fopen, fdopen, freopen): Define these to the unlocked libiberty functions. libcpp: * system.h (fopen, fdopen, freopen): Define these to the unlocked libiberty functions. From-SVN: r98407
2005-04-11configure.ac (fixincludes_UNLOCKED_FUNCS): New.Kaveh R. Ghazi5-31/+971
fixincludes: * configure.ac (fixincludes_UNLOCKED_FUNCS): New. (AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for fixincludes_UNLOCKED_FUNCS. * system.h (putchar, getc, getchar, clearerr, feof, fileno, fflush, fgetc, fgets, ferror, fread): Redefine to the associated _unlocked function. (fwrite_unlocked): Fix prototype. * configure, config.h.in: Regenerate. gcc: PR/17092 * configure.ac (gcc_UNLOCKED_FUNCS): New. (AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for gcc_UNLOCKED_FUNCS. * system.h (putchar, getc, getchar, clearerr, feof, fileno, fflush, fgetc, fgets, ferror, fread): Redefine to the associated _unlocked function. (fwrite_unlocked): Fix prototype. * configure, config.in: Regenerate. libcpp: * configure.ac (libcpp_UNLOCKED_FUNCS): New. (AC_CHECK_FUNCS, AC_CHECK_DECLS): Check for libcpp_UNLOCKED_FUNCS. * system.h (putchar, getc, getchar, clearerr, feof, fileno, fflush, fgetc, fgets, ferror, fread): Redefine to the associated _unlocked function. (fwrite_unlocked): Fix prototype. * configure, config.in: Regenerate. From-SVN: r97986
2005-04-06rw.po: New file.Joseph Myers2-0/+971
* rw.po: New file. [[Split portion of a mixed commit.]] From-SVN: r97668.2
2005-04-05re PR preprocessor/19475 (missing whitespace after macro name in C90 or C++)Jakub Jelinek2-2/+41
PR preprocessor/19475 * macro.c (create_iso_definition): For < ISO C99, don't pedwarn if there is no whitespace between macro name and its replacement, but the replacement starts with a basic character set character. * gcc.dg/cpp/macspace1.c: New test. * gcc.dg/cpp/macspace2.c: New test. From-SVN: r97652
2005-03-29* de.po: Update.Joseph Myers2-15/+18
From-SVN: r97202
2005-03-28lex.c (warn_about_normalization): Cast field width to int to avoid warning.Andreas Jaeger2-3/+8
* lex.c (warn_about_normalization): Cast field width to int to avoid warning. From-SVN: r97126
2005-03-19config.gcc: Consistently use solaris2.1[0-9]* instead of solaris2.1[0-9].Joseph Myers3-2/+8
gcc: * config.gcc: Consistently use solaris2.1[0-9]* instead of solaris2.1[0-9]. libcpp: * configure.ac: Consistently use solaris2.1[0-9]* instead of solaris2.1[0-9]. * configure: Regenerate. From-SVN: r96743
2005-03-16charset.c (_cpp_valid_ucn): In identifiers, reject a partial UCN rather than ↵Geoffrey Keating2-4/+13
printing an error. 2005-03-15 Geoffrey Keating <geoffk@apple.com> * charset.c (_cpp_valid_ucn): In identifiers, reject a partial UCN rather than printing an error. Index: gcc/testsuite/ChangeLog 2005-03-15 Geoffrey Keating <geoffk@apple.com> * gcc.dg/cpp/ucnid-7.c: New. From-SVN: r96546
2005-03-15Index: libcpp/ChangeLogGeoffrey Keating2-1/+6
2005-03-14 Geoffrey Keating <geoffk@apple.com> * lex.c (forms_identifier_p): Disable UCNs in C89 mode. Index: gcc/testsuite/ChangeLog 2005-03-14 Geoffrey Keating <geoffk@apple.com> * gcc.dg/cpp/ucnid-6.c: New. From-SVN: r96475
2005-03-15Index: gcc/ChangeLogGeoffrey Keating10-548/+1402
2005-03-14 Geoffrey Keating <geoffk@apple.com> * doc/cppopts.texi (-fexec-charset): Add concept index entry. (-fwide-exec-charset): Likewise. (-finput-charset): Likewise. * doc/invoke.texi (Warning Options): Document -Wnormalized=. * c-opts.c (c_common_handle_option): Handle -Wnormalized=. * c.opt (Wnormalized): New. Index: libcpp/ChangeLog 2005-03-14 Geoffrey Keating <geoffk@apple.com> * init.c (cpp_create_reader): Default warn_normalize to normalized_C. * charset.c: Update for new format of ucnid.h. (ucn_valid_in_identifier): Update for new format of ucnid.h. Add NST parameter, and update it; update callers. (cpp_valid_ucn): Add NST parameter, update callers. Replace abort with cpp_error. (convert_ucn): Pass normalize_state to cpp_valid_ucn. * internal.h (struct normalize_state): New. (INITIAL_NORMALIZE_STATE): New. (NORMALIZE_STATE_RESULT): New. (NORMALIZE_STATE_UPDATE_IDNUM): New. (_cpp_valid_ucn): New. * lex.c (warn_about_normalization): New. (forms_identifier_p): Add normalize_state parameter, update callers. (lex_identifier): Add normalize_state parameter, update callers. Keep the state current. (lex_number): Likewise. (_cpp_lex_direct): Pass normalize_state to subroutines. Check it with warn_about_normalization. * makeucnid.c: New. * ucnid.h: Replace. * ucnid.pl: Remove. * ucnid.tab: Make appropriate for input to makeucnid.c. Remove comments about obsolete version of C++. * include/cpplib.h (enum cpp_normalize_level): New. (struct cpp_options): Add warn_normalize field. Index: gcc/testsuite/ChangeLog 2005-03-14 Geoffrey Keating <geoffk@apple.com> * gcc.dg/cpp/normalize-1.c: New. * gcc.dg/cpp/normalize-2.c: New. * gcc.dg/cpp/normalize-3.c: New. * gcc.dg/cpp/normalize-4.c: New. * gcc.dg/cpp/ucnid-4.c: New. * gcc.dg/cpp/ucnid-5.c: New. * g++.dg/cpp/normalize-1.C: New. * g++.dg/cpp/ucnid-1.C: New. From-SVN: r96459