Nathan Sidwell [Thu, 9 Jun 2005 07:46:23 +0000 (07:46 +0000)]
re PR c++/21903 (Default argument of template function causes a compile-time error)
cp:
PR c++/21903
* cp-tree.def (DEFAULT_ARG): Document TREE_CHAIN use.
* parser.c (cp_parser_late_parsing_default_args): Propagate parsed
argument to any early instantiations.
* pt.c (tsubst_arg_types): Chain early instantiation of default
arg.
PR c++/19884
* pt.c (check_explicit_specialization): Make sure namespace
binding lookup found an overloaded function.
(lookup_template_function): Just assert FNS is an overloaded
function.
testsuite:
PR c++/19608
* parser.c (cp_parser_late_parsing_for_member): Use
current_function_decl as scope to push to and from.
testsuite:
PR 21903
* g++.dg/parse/defarg9.C: New.
PR c++/19884
* g++.old-deja/g++.oliva/template6.C: Add another case.
* g++.dg/template/explicit6.C: New.
Mark Mitchell [Fri, 3 Jun 2005 16:29:35 +0000 (16:29 +0000)]
re PR c++/21336 (Internal compiler error when using custom new operators)
PR c++/21336
* cp-tree.h (grok_op_properties): Remove friendp parameter.
* decl.c (grokfndecl): Adjust call.
(grok_op_properties): Determine the class of which the function is
a member by looking at its DECL_CONTEXT, not current_class_type.
* pt.c (tsubst_decl): Adjust call to grok_op_properties.
Backport from mainline:
2005-05-10 Joseph S. Myers <joseph@codesourcery.com>
* fixinc/inclhack.def (stdio_stdarg_h, stdio_va_list): Bypass on
*-*-solaris2.1[0-9]*, not just *-*-solaris2.1[0-9].
* fixinc/fixincl.x: Regenerate.
Backport from mainline:
2004-11-26 Mark Mitchell <mark@codesourcery.com>
* fixinc/inclhack.def (gnu_types): Do not use on Solaris 2.1x.
(stdio_va_list): Likewise.
(stdio_stdarg.h): Likewise.
(solaris_stdio_tag): Add bypass.
* fixinc/fixincl.x: Regenerated.
testsuite/
* gcc.dg/c99-math.h: New
* gcc.dg/c99-math-float-1.c: New test.
* gcc.dg/c99-math-double-1.c: Likewise.
* gcc.dg/c99-math-long-double-1.c: Likewise.
Jakub Jelinek [Thu, 26 May 2005 09:05:04 +0000 (11:05 +0200)]
re PR target/21716 (ICE in reg-stack.c's swap_rtx_condition)
PR target/21716
* reg-stack.c (swap_rtx_condition): Don't crash if %ax user was not
found in the basic block and last insn in the basic block is not
INSN_P. Remove explicit unspec numbers that are no longer valid
from comments.
Kazuhiro Inaoka [Tue, 24 May 2005 09:43:42 +0000 (09:43 +0000)]
m32r.c (m32r_expand_block_move): Return 0 if nothing was done.
* config/m32r/m32r.c (m32r_expand_block_move): Return 0 if
nothing was done.
* config/m32r/m32r.md (movmemsi): If m32r_expand_block_move did
nothing then FAIL.
* config/m32r/m32r/m32r-protos.h (m32r_expand_block_move): Update
prototype.
Mark Mitchell [Fri, 13 May 2005 00:38:22 +0000 (00:38 +0000)]
[multiple changes]
2005-04-04 Mark Mitchell <mark@codesourcery.com>
* testsuite/Makefile.am (check-local): Remove.
(curent_symbols.txt): Likewise.
(check-abi): Do not depend on current_symbols.txt.
* testsuite/Makefile.in: Regenerated.
* testsuite/libstdc++-abi/abi.exp: Build current_symbols.txt.
2005-04-01 Mark Mitchell <mark@codesourcery.com>
* testsuite/Makefile.am (noinst_PROGRAMS): Remove.
(site.exp): Write out the path to the baseline file.
(check-abi): Use DejaGNU.
(check-abi-verbose): Remove.
* testsuite/Makefile.in: Regenerated.
* testsuite/abi_check.cc (main): Check the return value from
compare_symbols.
* testsuite/testsuite_abi.cc (compare_symbols): Return a value.
* testsuite/testsuite_abi.h (compare_symbols): Adjust prototype.
* testsuite/libstdc++-abi/abi.exp: New file.
2004-03-19 Phil Edwards <phil@codesourcery.com>
* testsuite/Makefile.am (site.exp): New target, based on that
created by automake. Also set libiconv.
Mark Mitchell [Wed, 11 May 2005 21:19:54 +0000 (21:19 +0000)]
revert: backport: function.c (fixup_var_refs): Save volatile_ok and set to 1.
Revert:
2005-05-10 H.J. Lu <hongjiu.lu@intel.com>
Backport from mainline
2004-02-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* function.c (fixup_var_refs): Save volatile_ok and set to 1.
* expr.c (emit_block_move_via_movstr): Save and restore
volatile_ok.
2005-05-09 Grigory Tolstolytkin <gtolstolytkin@ru.mvista.com>
Backport from mainline
2004-02-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* emit-rtl.c (set_mem_attributes_minus_bitpos): Don't kill previous
MEM_VOLATILE in REF.
H.J. Lu [Tue, 10 May 2005 21:53:06 +0000 (21:53 +0000)]
backport: function.c (fixup_var_refs): Save volatile_ok and set to 1.
Backport from mainline
2004-02-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* function.c (fixup_var_refs): Save volatile_ok and set to 1.
* expr.c (emit_block_move_via_movstr): Save and restore
volatile_ok.
Stephane Carrez [Sun, 8 May 2005 19:22:22 +0000 (21:22 +0200)]
m68hc11.c (m68hc11_z_replacement): Use emit_insn_after when adding the save Z instruction so that it is part of...
* config/m68hc11/m68hc11.c (m68hc11_z_replacement): Use emit_insn_after
when adding the save Z instruction so that it is part of the good BB.
(reg_or_some_mem_operand): Do not allow the 68HC12 address indirect
addressing mode as it is not supported by bset and bclr.
(m68hc11_gen_movhi): Fix invalid generation of indexed indirect
addressing with movw.
(m68hc11_gen_movqi): Use pula and pulb instead of lda and ldb for
68HC12.
* config/m68hc11/m68hc11.md ("movhi_const0"): Use this pattern only
for 68HC11.
("*movhi_68hc12"): Handle movhi_const0.
("*subhi3", "subqi3"): Use general_operand for operand 1.
("*subhi3_zext"): Likewise.
Stephane Carrez [Sun, 8 May 2005 18:54:51 +0000 (20:54 +0200)]
m68hc11.c (m68hc11_z_replacement): Use emit_insn_after when adding the save Z instruction so that it is part of...
* config/m68hc11/m68hc11.c (m68hc11_z_replacement): Use emit_insn_after
when adding the save Z instruction so that it is part of the good BB.
(reg_or_some_mem_operand): Do not allow the 68HC12 address indirect
addressing mode as it is not supported by bset and bclr.
(m68hc11_gen_movhi): Fix invalid generation of indexed indirect
addressing with movw.
(m68hc11_gen_movqi): Use pula and pulb instead of lda and ldb for
68HC12.
* config/m68hc11/m68hc11.md ("movhi_const0"): Use this pattern only
for 68HC11.
("*movhi_68hc12"): Handle movhi_const0.
("*subhi3", "subqi3"): Use general_operand for operand 1.
("*subhi3_zext"): Likewise.
Stephane Carrez [Sun, 8 May 2005 17:42:44 +0000 (19:42 +0200)]
re PR target/19051 (m6811-elf-gcc ICE)
PR target/19051
* config/m68hc11/m68hc11.md ("mulqi3"): Use general_operand for operand
1 and fix constraints.
("mulqihi3"): Use general_operand for operand 2.