Neil Booth
87ed109f1f
cppexp.c (lex): Update to use state.skip_eval.
...
* cppexp.c (lex): Update to use state.skip_eval.
(struct op): Remove prio and flags members.
(FLAG_BITS, FLAG_MASK, PRIO_SHIFT, EXTRACT_PRIO, EXTRACT_FLAGS,
SHORT_CIRCUIT, RIGHT_ASSOC, ..._PRIO, op_to_prio): Remove.
(LEFT_ASSOC): New macro.
(optab): New table of operator priorities and flags.
(SHIFT): Update.
(_cpp_parse_expr): Clean up logic. Return bool. Use a
malloc-ed parser stack.
(reduce): New; reduce the operator stack.
(_cpp_expand_op_stack): Expand the operator stack as necessary.
* cpphash.h (struct op): Predeclare.
(struct cpp_reader): New members op_stack, op_limit.
(struct lexer_state): New member skip_eval.
(_cpp_parse_expr): Update.
(_cpp_expand_op_stack): New.
* cpplib.c (do_if): Update.
* cppinit.c (cpp_create_reader): Create op stack.
(cpp_destroy): And destroy it.
* cpplib.h (CPP_LAST_CPP_OP): Correct.
(TTYPE_TABLE): Correct.
testsuite:
* gcc.dg/cpp/if-mop.c: Update.
* gcc.dg/cpp/if-mpar.c: Add test.
* gcc.dg/cpp/if-oppr.c: Update.
From-SVN: r52853
2002-04-28 19:42:54 +00:00
Mark Mitchell
14dbfa7008
* .cvsignore: Remove files that are present in CVS.
...
From-SVN: r52845
2002-04-28 18:41:51 +00:00
Franz Sirl
45806a3fd4
re PR c/6343 (attribute((weak)) not working on second declaration)
...
2002-04-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
PR c/6343
* c-decl.c (duplicate_decls): Call merge_weak.
* c-pragma.c (apply_pragma_weak): Warn about misuse.
* output.h (merge_weak): Prototype merge_weak.
* varasm.c (merge_weak): New function.
(declare_weak): Make sure we don't give an error on VAR_DECLs.
Mark RTL with SYMBOL_REF_WEAK.
cp:
* decl.c (duplicate_decls): Call merge_weak.
testsuite:
* gcc.dg/weak-[2-7].c: New tests.
From-SVN: r52844
2002-04-28 18:31:34 +00:00
Paolo Carlini
32c8d10081
[multiple changes]
...
2002-04-28 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
* include/ext/stl_hashtable.h: Import __iterator_category
2002-04-28 Paolo Carlini <pcarlini@unitus.it>
Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
* testsuite/ext/hash_set.cc: New testfile.
From-SVN: r52843
2002-04-28 16:21:32 +00:00
GCC Administrator
ba29591d2f
Daily bump.
...
From-SVN: r52842
2002-04-28 07:17:18 +00:00
Benjamin Kosnik
82f637d15d
os_defines.h: Remove _G_USING_THUNKS.
...
2002-04-27 Benjamin Kosnik <bkoz@redhat.com>
* config/os/solaris/solaris2.5/bits/os_defines.h: Remove
_G_USING_THUNKS.
* config/os/solaris/solaris2.6/bits/os_defines.h: Same.
* config/os/solaris/solaris2.7/bits/os_defines.h: Same.
From-SVN: r52838
2002-04-28 00:42:12 +00:00
Tom Tromey
0a32c5ea4a
For PR java/6382:
...
* parse.y (string_convert_int_cst): New function.
(merge_string_cste): Use it.
From-SVN: r52835
2002-04-27 20:31:42 +00:00
Kurt Garloff
a62271540b
tree-inline.c (inlinable_function_p): Improve heuristics by using a smoother function to cut down allowable inlinable...
...
* tree-inline.c (inlinable_function_p): Improve heuristics
by using a smoother function to cut down allowable inlinable size.
* param.def: Add parameters max-inline-insns-single,
max-inline-slope, min-inline-insns that determine the exact
shape of the above function.
* param.h: Likewise.
From-SVN: r52832
2002-04-27 11:59:40 -07:00
GCC Administrator
c3a6afe78d
Daily bump.
...
From-SVN: r52831
2002-04-27 07:17:23 +00:00
Richard Henderson
94a5039703
c-parse.in (malloced_yyss, [...]): New.
...
* c-parse.in (malloced_yyss, malloced_yyvs): New.
(yyoverflow): Re-add. Set them.
(free_parser_stacks): New.
* c-common.h: Declare it.
* c-lex.c (c_common_parse_file): Call it.
* parse.y (malloced_yyss, malloced_yyvs): New.
(yyoverflow): Re-add. Set them.
(free_parser_stacks): New.
From-SVN: r52827
2002-04-26 23:53:07 -07:00
Richard Henderson
9c0a0632bc
cfgrtl.c (tidy_fallthru_edge): Don't use next_real_insn for fallthru search.
...
* cfgrtl.c (tidy_fallthru_edge): Don't use next_real_insn
for fallthru search.
From-SVN: r52826
2002-04-26 23:41:38 -07:00
Eric Christopher
b875d2eec1
re PR rtl-optimization/3700 (ISSUE_RATE not defined for mips target)
...
2002-04-26 Eric Christopher <echristo@redhat.com>
PR optimization/3700
* config/mips/mips.c (mips_issue_rate): Define. New function.
(TARGET_SCHED_ISSUE_RATE): Use.
From-SVN: r52825
2002-04-27 02:33:37 +00:00
Mark Mitchell
cf6a5491cb
re PR bootstrap/6445 (ICE bootstrapping objc for i386-rtems)
...
PR bootstrap/6445
* config/i386/i386.md (untyped_call): Return the value in a float
register if TARGET_FLOAT_RETURNS_IN_80387, not just if
TARGET_80387.
From-SVN: r52824
2002-04-27 00:26:36 +00:00
David S. Miller
1db828df54
re PR target/6422 (libjava failures on sparc-linux)
...
2002-04-25 David S. Miller <davem@redhat.com>
PR target/6422
* reorg.c (optimize_skip): Do not allow exception causing
instructions to be considered for delay slots.
(fill_simply_delay_slots, fill_slots_from_thread): Likewise.
(relax_delay_slots): Do not try to consider exception causing
instructions as redundant.
From-SVN: r52822
2002-04-26 17:07:16 -07:00
David S. Miller
6ea531707a
re PR target/6422 (libjava failures on sparc-linux)
...
2002-04-25 David S. Miller <davem@redhat.com>
PR target/6422
* include/dwarf2-signal.h (MAKE_THROW_FRAME for sparc*): Set
program counter to next program counter minus 8. Update
comments in this macro to explain why.
From-SVN: r52820
2002-04-26 17:04:14 -07:00
Alexandre Oliva
51ccaeb904
* gcc.dg/enum1.c: New test.
...
From-SVN: r52815
2002-04-26 23:44:46 +00:00
Tom Tromey
b446a5f169
verify.cc (construct_primitive_array_type): New case.
...
* verify.cc (construct_primitive_array_type) [void_type]: New
case.
(branch_prepass): Added dummy entries for unused instruction
values.
(verify_instructions_0): Likewise.
* interpret.cc (continue1): Comment fix.
* include/java-insns.h (op_xxxunusedxxx1): Removed.
* Makefile.in: Rebuilt.
* Makefile.am: Added -Wswitch-enum.
From-SVN: r52814
2002-04-26 22:39:29 +00:00
Joel Sherrill
9e84766671
configure.in (h8300*-*-rtems*): Disable libf2c and libgcj.
...
2002-04-26 Joel Sherrill <joel@OARcorp.com>
* configure.in (h8300*-*-rtems*): Disable libf2c and libgcj.
(sparc-*-elf*, sparc64-*-elf*): Disable libgcj.
From-SVN: r52813
2002-04-26 22:30:19 +00:00
Richard Henderson
ae5d234e11
c-typeck.c (build_unary_op): Invoke non_lvalue.
...
* c-typeck.c (build_unary_op) [CONVERT_EXPR]: Invoke non_lvalue.
* gcc.dg/lvalue1.c: New.
From-SVN: r52812
2002-04-26 14:56:55 -07:00
Mark Mitchell
7d793e9b25
re PR bootstrap/6445 (ICE bootstrapping objc for i386-rtems)
...
PR bootstrap/6445
* config/i386/i386.md (untyped_call): Return the value in a float
register if TARGET_FLOAT_RETURNS_IN_80387, not just if
TARGET_80387.
PR c++/6497
* method.c (do_build_assign_ref): Pass a derivation to
build_method_call when calling base class assignment operators.
PR c++/6497
* g++.dg/inherit/access2.C: New test.
PR bootstrap/6445
* gcc.dg/20020426-1.c: New test.
From-SVN: r52809
2002-04-26 21:28:47 +00:00
Alexandre Oliva
48ba95387d
* g++.dg/abi/enum1.C: New test.
...
From-SVN: r52804
2002-04-26 20:09:56 +00:00
Alexandre Oliva
b13ab42c86
tree.c (tree_int_cst_lt): Compare constants whose types differ in unsigned-ness correctly.
...
* tree.c (tree_int_cst_lt): Compare constants whose types differ
in unsigned-ness correctly.
From-SVN: r52802
2002-04-26 19:35:33 +00:00
John David Anglin
5e56f90934
pa.h (FUNCTION_OK_FOR_SIBCALL): Don't do sibcalls when using the portable runtime model.
...
* pa.h (FUNCTION_OK_FOR_SIBCALL): Don't do sibcalls when using the
portable runtime model.
From-SVN: r52800
2002-04-26 18:58:16 +00:00
Paolo Carlini
adf2e3e668
basic_string.h (replace(__pos, __n1, __s, __n2): Fix and tighten __throw_length_error check.
...
2002-04-26 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
Fix and tighten __throw_length_error check.
* testsuite/21_strings/replace.cc (test05): New.
* testsuite/21_strings/replace.cc (test02, test03, test04): Tweak.
From-SVN: r52797
2002-04-26 18:21:32 +00:00
Richard Henderson
bde3c0c07d
c-parse.in (yyoverflow): Revert.
...
* c-parse.in (yyoverflow): Revert.
* parse.y (yyoverflow): Revert.
From-SVN: r52794
2002-04-26 10:04:37 -07:00
David Edelsohn
5276df1857
rs6000.md (sCC pattern): Remove clobber and use result as temporary value.
...
* config/rs6000/rs6000.md (sCC pattern): Remove clobber and use
result as temporary value.
Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r52793
2002-04-26 11:23:26 -04:00
Richard Henderson
b84a387434
c-common.c (fix_string_type): Split out of ...
...
* c-common.c (fix_string_type): Split out of ...
(combine_strings): ... here. Take a varray, not a tree list.
(c_expand_builtin_printf): Use fix_string_type.
* c-common.h: Update decls.
* c-parse.in (string): Remove. Update all uses to use STRING
instead, and not call combine_strings.
(yylexstring): New.
(_yylex): Use it.
* c-typeck.c (simple_asm_stmt): Don't call combine_strings.
(build_asm_stmt): Likewise.
* objc/objc-act.c (my_build_string): Use fix_string_type.
(build_objc_string_object): Build varray for combine_strings.
* parse.y (string): Remove. Update all uses to use STRING
instead, and not call combine_strings.
* rtti.c (tinfo_name): Use fix_string_type.
* semantics.c (finish_asm_stmt): Don't call combine_strings.
* spew.c (yylexstring): New.
(read_token): Use it.
* g++.dg/parse/concat1.C: New.
* gcc.dg/concat2.c: New.
From-SVN: r52790
2002-04-26 00:40:12 -07:00
Richard Henderson
4d7ea4fc78
* gcc.dg/c99-bool-1.c: Expect always true warning.
...
From-SVN: r52787
2002-04-26 00:24:39 -07:00
GCC Administrator
7ba47445b3
Daily bump.
...
From-SVN: r52786
2002-04-26 07:17:49 +00:00
Bo Thorsen
d8ae8cd480
linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Define for x86-64.
...
2002-04-26 Bo Thorsen <bo@suse.co.uk>
* config/i386/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Define for
x86-64.
From-SVN: r52781
2002-04-26 09:05:56 +02:00
Neil Booth
f8b954fcdc
cppexp.c (CPP_UMINUS, CPP_UPLUS): New.
...
* cppexp.c (CPP_UMINUS, CPP_UPLUS): New.
(HAVE_NO_R_OPERAND): Remove.
(HAVE_VALUE): Remove.
(op_to_prio): Update.
(UNARY): Don't alter flags.
(_cpp_parse_expr): want_value used to indicate whether
a number or unary operator is expected next. Distinguish
unary and binary +/-.
(op_as_text): Update for unary operators.
From-SVN: r52780
2002-04-26 06:32:50 +00:00
Richard Henderson
6052bef039
c-parse.in (yyoverflow): New.
...
* c-parse.in (yyoverflow): New.
* cp/parse.y (yyoverflow): New.
* g++.dg/parse/stack1.C: New.
* gcc.dg/20020425-1.c: New.
From-SVN: r52779
2002-04-25 22:35:13 -07:00
Richard Henderson
5c5b228389
re PR c/2098 (compare with unsigned variable - no error reporting)
...
PR c/2098
* c-common.c (shorten_compare): Simplfy conditions leading to
the generation of a warning.
* gcc.dg/compare6.c: New.
From-SVN: r52778
2002-04-25 19:15:52 -07:00
Richard Henderson
28ce94d46b
re PR c/2035 (ICE in extract_bit_field, at expmed.c:1115)
...
PR c/2035
* expmed.c (extract_bit_field): Fall through to generic code rather
than aborting on subreg special case.
From-SVN: r52777
2002-04-25 19:09:21 -07:00
David S. Miller
6bfd0c63fe
sparc.h (FUNCTION_OK_FOR_SIBCALL): Add back check for DECL being NULL.
...
2002-04-25 David S. Miller <davem@redhat.com>
* config/sparc/sparc.h (FUNCTION_OK_FOR_SIBCALL): Add back check
for DECL being NULL.
From-SVN: r52776
2002-04-25 19:05:08 -07:00
Steve Christiansen
7a430e3be4
md.texi (Machine Constraints): Add IA-64 constraints.
...
2002-04-25 Steve Christiansen <smc@us.ibm.com>
* doc/md.texi (Machine Constraints): Add IA-64 constraints.
From-SVN: r52774
2002-04-25 17:24:41 -07:00
Eric Botcazou
45c42d7db5
c-decl.c (grokdeclarator): Remove outdated ??? note on invalid declaration of flexible array members.
...
* c-decl.c (grokdeclarator): Remove outdated ??? note
on invalid declaration of flexible array members.
From-SVN: r52772
2002-04-25 17:22:23 -07:00
Roger Sayle
07d81318b6
* gcc.dg/i386-memset-1.c: New test case for PR target/6456.
...
From-SVN: r52771
2002-04-26 00:09:43 +00:00
Richard Henderson
eb7715a482
* doc/invoke.texi: Document -gdwarf{,-2} vs debug level.
...
From-SVN: r52769
2002-04-25 15:31:31 -07:00
Ulrich Weigand
cf5ee7207d
s390.c (s390_emit_epilogue): Always restore registers needed by the compiler...
...
* config/s390/s390.c (s390_emit_epilogue): Always restore registers
needed by the compiler, even if they are used as global regs.
From-SVN: r52768
2002-04-25 21:26:04 +00:00
Matt Hiller
d604bca364
mips.c (mips_class_max_nregs, [...]): New functions.
...
2002-04-24 Matt Hiller <hiller@redhat.com>
* mips.c (mips_class_max_nregs, mips_register_move_cost): New
functions.
* mips.h (CLASS_MAX_NREGS, REGISTER_MOVE_COST): Redefine as calls
of the corresponding functions.
* mips-protos.h (mips_class_max_nregs, mips_register_move_cost):
New prototypes.
2002-04-24 Matt Hiller <hiller@redhat.com>
* config/mips/mips.h (mips_sw_reg_names): Declare as extern.
(ALL_COP_ADDITIONAL_REGISTER_NAMES): New macro.
(FIRST_PSEUDO_REGISTER): Redefine considering coprocessor
registers, adjust comment accordingly.
(FIXED_REGISTERS, CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS,
reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGISTER_NAMES,
DEBUG_REGISTER_NAMES, REG_ALLOC_ORDER): Adjust to include entries
for coprocessor registers.
(ADDITIONAL_REGISTER_NAMES): Include
ALL_COP_ADDITIONAL_REGISTER_NAMES.
(COP0_REG_FIRST, COP0_REG_LAST, COP0_REG_NUM,
COP2_REG_FIRST, COP2_REG_LAST, COP2_REG_NUM,
COP3_REG_FIRST, COP3_REG_LAST, COP3_REG_NUM,
COP0_REG_P, COP2_REG_P, COP3_REG_P, ALL_COP_REG_P,
COPNUM_AS_CHAR_FROM_REGNUM, COP_REG_CLASS_P): New macros.
(mips_char_to_class): Adjust comment to include coprocessor
constraint letters.
* config/mips/mips.c (coprocessor_operand, coprocessor2_operand):
New functions.
(mips_reg_names, mips_regno_to_class): Include coprocessor
information.
(mips_sw_reg_names): Ditto, make non-static.
(mips_move_1word): Handle moves to and from coprocessor registers.
(mips_move_2words): Handle moves to and from coprocessor
registers.
(mips_class_max_nregs, mips_register_move_cost): Handle
coprocessor register classes.
(override_options): Initialize mips_char_to_class and
mips_hard_regno_mode_ok properly for coprocessor registers.
* config/mips/mips.md (movdi_internal, movdi_internal2,
movsi_internal1, movsi_internal2): Add constraint-sets for
coprocessor registers.
* testsuite/gcc.c-torture/mipscop-1.c: New testcase.
* testsuite/gcc.c-torture/mipscop-1.x: Disable above if target
isn't mips.
* testsuite/gcc.c-torture/mipscop-2.c: New testcase.
* testsuite/gcc.c-torture/mipscop-2.x: Disable above if target
isn't mips.
* testsuite/gcc.c-torture/mipscop-3.c: New testcase.
* testsuite/gcc.c-torture/mipscop-3.x: Disable above if target
isn't mips.
* testsuite/gcc.c-torture/mipscop-4.c: New testcase.
* testsuite/gcc.c-torture/mipscop-4.x: Disable above if target
isn't mips.
* doc/tm.texi: Document feature.
From-SVN: r52765
2002-04-25 19:31:45 +00:00
Neil Booth
b9a26d0920
integrate.c (function_attribute_inlinable_p): Simplify.
...
* integrate.c (function_attribute_inlinable_p): Simplify.
Check the table pointer is not NULL.
From-SVN: r52763
2002-04-25 18:55:48 +00:00
Kaveh R. Ghazi
bf882c20d7
20020227-1.x: New file, xfail on 64-bit targets.
...
* gcc.c-torture/execute/20020227-1.x: New file, xfail on 64-bit
targets.
From-SVN: r52762
2002-04-25 18:49:02 +00:00
Jason Merrill
8d1f0f67e8
re PR c++/5607 (No pointer adjustment in covariant return types)
...
PR c++/5607
* search.c (check_final_overrider): No longer static.
* class.c (update_vtable_entry_for_fn): Call it.
* cp-tree.h: Adjust.
From-SVN: r52760
2002-04-25 14:04:50 -04:00
Steven Bosscher
ab5973b753
* doc/c-tree.texi: Fix typo in introduction.
...
From-SVN: r52758
2002-04-25 09:30:11 +00:00
GCC Administrator
0f2fd6a867
Daily bump.
...
From-SVN: r52757
2002-04-25 07:17:29 +00:00
Neil Booth
ff45c01ef4
c-common.h (c_common_parse_file): Update.
...
* c-common.h (c_common_parse_file): Update.
* c-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
* c-lex.c (YYDEBUG): Get from c-lex.h.
(c_common_parse_file): Update.
* c-lex.h (YYDEBUG, yydebug): New.
* c-parse.in (YYDEBUG): Get from c-lex.h.
(c_set_yydebug): Remove.
* c-tree.h (c_set_yydebug): Remove.
* langhooks-def.h (lhd_do_nothing_i): New.
(lhd_set_yydebug, LANG_HOOKS_SET_YYDEBUG): Remove.
(LANG_HOOKS_PARSE_FILE, LANG_HOOKS_INITIALIZER): Update.
* langhooks.c (lhd_do_nothing_i): New.
(lhd_set_yydebug): Remove.
* langhooks.h (struct lang_hooks): Update.
* toplev.c (set_yydebug): New.
(compile_file): Update call to parse_file hook.
(decode_d_option): Update.
ada:
* misc.c (gnat_parse_file): Update.
cp:
* cp-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
* cp-tree.h (cxx_set_yydebug): Die.
* lex.c (YYDEBUG): Get from c-lex.h.
(cxx_set_yydebug): Remove.
* parse.y: Include c-lex.h.
(YYDEBUG): Get from c-lex.h.
f:
* com.h (ffe_parse_file): Update.
* lex.c (ffe_parse_file): Update.
java:
* java-tree.h (java_parse_file): Update.
(java_set_yydebug): Remove.
* jcf-parse.c (yydebug): Remove.
(java_set_yydebug): Die.
(java_parse_file): Update.
* lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
objc:
* objc-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
From-SVN: r52753
2002-04-25 06:24:41 +00:00
Tom Tromey
9127b2da1b
For PR java/6425:
...
* parse.y (qualify_ambiguous_name) [case CALL_EXPR]: Always choose
EXPR_WFL_QUALIFICATION of qual_wfl.
From-SVN: r52751
2002-04-25 01:09:47 +00:00
Mark Mitchell
b970a21d1d
mangle.c (write_type): Don't use TYPE_MAIN_VARIANT when writing out an array type.
...
* mangle.c (write_type): Don't use TYPE_MAIN_VARIANT when writing
out an array type.
(write_CV_qualifiers_for_type): Use TYPE_QUALS, not cp_type_quals,
to determine qualifiers.
From-SVN: r52749
2002-04-25 01:05:25 +00:00
Jason Merrill
a49cfba81b
typeck.c (build_modify_expr): The pedwarn for array assignment is now unconditional.
...
* typeck.c (build_modify_expr): The pedwarn for array assignment is
now unconditional.
* tree.c (build_cplus_array_type_1): Still process simple array types
normally in templates.
From-SVN: r52746
2002-04-24 20:13:45 -04:00