Commit Graph

97333 Commits

Author SHA1 Message Date
Dodji Seketeli
aa373032bf re PR c++/14777 (typedef doesn't fully expose base class type)
Fix PR c++/14777

gcc/cp/ChangeLog:

	PR c++/14777
	* cp-tree.def <TEMPLATE_INFO>: Declare new kind of tree
	node.
	* cp-tree.h (struct tree_template_info,
	struct qualified_typedef_usage_s): New.
	(cp_tree_node_structure_enum): add TS_CP_TEMPLATE_INFO.
	(union lang_tree_node): Add template_info.
	(TI_TEMPLATE, TI_ARGS, TI_TYPEDEFS_NEEDING_ACCESS_CHECKING):
	Adjust.
	(build_template_info): Declare.
	(get_types_needing_access_check): Adjust return type.
	(add_typedef_to_current_template_for_access_check): Declare.
	* cp-objcp-common.c (cp_tree_size): Handle TEMPLATE_INFO.
	* semantics.c (add_typedef_to_current_template_for_access_check):
	Split from ...
	(check_accessibility_of_qualified_id): ... here.
	* decl.c (make_typename_type): Use it.
	* pt.c (build_template_info): Define.
	(check_explicit_specialization, find_parameter_packs_r,
	push_template_decl_real, lookup_template_class,
	for_each_template_parm_r, tsubst_decl, tsubst): Use
	build_template_info.
	(get_types_needing_access_check): Adjust return type.
	(append_type_to_template_for_access_check_1): Record the
	location of the usage point of the typedef. Adjust to TEMPLATE_INFO.
	(append_type_to_template_for_access_check): Add new location
	parameter. Pass it to append_type_to_template_for_access_check_1.
	Adjust to TEMPLATE_INFO.
	(perform_typedefs_access_check): Temporarily set input_location to
	the usage point of the typedef we are checking access for. Adjust
	to new TEMPLATE_INFO tree node.
	* tree.c (bind_template_template_parm): Use build_template_info.
	* call.c (add_template_candidate_real): Likewise.
	* decl.c (grokfndecl): Likewise.
	(cp_tree_node_structure): Handle TEMPLATE_INFO.

gcc/testsuite/ChangeLog:

	PR c++/14777
	* g++.dg/template/typedef13.C: Adjust.
	* g++.dg/template/typedef19.C: Adjust.
	* g++.dg/template/typedef20.C: Adjust.
	* g++.dg/template/typedef22.C: New test.

From-SVN: r154443
2009-11-23 14:29:50 +01:00
Rainer Orth
75d05d2ab7 * adaint.h: Assume large file support on IRIX only if _LFAPI.
From-SVN: r154442
2009-11-23 13:19:14 +00:00
Paul Brook
1586899ee9 arm.c (arm_compute_save_reg0_reg12_mask): Add special case for noreturn functions.
2009-11-23  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/arm.c (arm_compute_save_reg0_reg12_mask): Add special
	case for noreturn functions.
	(arm_compute_save_reg_mask): Remove special noreturn handling.

From-SVN: r154441
2009-11-23 13:03:28 +00:00
Richard Guenther
0230277c25 tree-dfa.c (get_ref_base_and_extent): Adjust maximum access size for DECL bases.
2009-11-23  Richard Guenther  <rguenther@suse.de>

	* tree-dfa.c (get_ref_base_and_extent): Adjust maximum access
	size for DECL bases.

From-SVN: r154433
2009-11-23 10:44:17 +00:00
Ben Elliston
5120dc389f pex-unix.c (pex_child_error): Improve warning avoidance by checking the results of write(3) and exiting with...
* pex-unix.c (pex_child_error): Improve warning avoidance by
	checking the results of write(3) and exiting with -2 if any write
	returns a negative value.

Co-Authored-By: Ian Lance Taylor <iant@google.com>

From-SVN: r154431
2009-11-23 15:42:32 +11:00
GCC Administrator
5154a159df Daily bump.
From-SVN: r154430
2009-11-23 00:16:51 +00:00
Richard Henderson
8a67ca92a1 i386.c (avx_vpermilp_parallel): New function.
* i386.c (avx_vpermilp_parallel): New function.
	* i386-protos.h: Declare it.
	* predicates.md (avx_vpermilp_v8sf_operand, avx_vpermilp_v4df_operand,
	avx_vpermilp_v4sf_operand, avx_vpermilp_v2df_operand): New.
	* sse.md (AVXMODEFDP, AVXMODEFSP): New iterators.
	(ssescalarnum, ssedoublesizemode): Add AVX modes.
	(vpermilbits): Remove.
	(avx_vpermil<mode>): Change insns to expanders.
	(*avx_vpermil<mode>): New.  Use vec_select.

From-SVN: r154427
2009-11-22 16:01:47 -08:00
Steve Ward
d90a2c59eb dyn-string.c (dyn_string_append_char): Fix typo in comment.
2009-11-22  Steve Ward  <planet36@gmail.com>

	* dyn-string.c (dyn_string_append_char): Fix typo in comment.

From-SVN: r154425
2009-11-22 15:48:42 +00:00
Richard Earnshaw
4de29d8fb4 opts.c (decode_options): Don't enable flag_schedule_insns when optimizing for size.
* opts.c (decode_options): Don't enable flag_schedule_insns 
	when optimizing for size.
	* doc/invoke.texi: Document change.

From-SVN: r154424
2009-11-22 15:09:12 +00:00
Uros Bizjak
7e82354a00 re PR target/42113 (Internal Compiler error with -O3, breaking commit known)
PR target/42113
	* config/alpha/alpha.md (*cmp_sadd_si): Change mode
	of scratch register to SImode.
	(*cmp_sadd_sidi): Ditto.
	(*cmp_ssub_si): Ditto.
	(*cmp_ssub_sidi): Ditto.

testsuite/ChangeLog:

	PR target/42113
	* gcc.target/alpha/pr42113.c: New test.

From-SVN: r154423
2009-11-22 10:30:50 +01:00
Ian Lance Taylor
ed2eaa9f6e configure.ac: Change default of poststage1_ldflags to be empty if poststage1_libs is set.
./:	* configure.ac: Change default of poststage1_ldflags to be empty if
	poststage1_libs is set.  When poststage1_libs is empty, and
	ENABLE_BUILD_WITH_CXX is set, add -static-libgcc.
	* configure: Rebuild.
gcc/:
	* Makefile.in (HOST_LIBS): Move higher in file.
	(LINKER, LINKER_FLAGS): If ENABLE_BUILD_WITH_CXX, but $(HOST_LIBS)
	is not empty, set to $(CC) and $(CFLAGS).

From-SVN: r154422
2009-11-22 04:25:56 +00:00
Jerry DeLisle
44e7958586 re PR fortran/41807 (data statement with nested type constructors)
2009-11-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/41807
	* trans-const.c (gfc_conv_const): Fix typo in comment. Replace assert
	with error message if not constant.
	* resolve.c (next_data_value): Delete check for constant.

From-SVN: r154420
2009-11-22 02:06:26 +00:00
Jerry DeLisle
27bcaf0476 re PR fortran/41807 (data statement with nested type constructors)
2009-11-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/41807
	* gfortran.dg/data_value_1.f90: Update test.
	* gfortran.dg/array_constructor_32.f90: New test.

From-SVN: r154419
2009-11-22 02:05:12 +00:00
Jerry DeLisle
9d3d3f1078 trans-const.c (gfc_conv_const): Fix typo in comment.
2009-11-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	* trans-const.c (gfc_conv_const): Fix typo in comment. Replace assert
	with error message if not constant.
	* resolve.c (next_data_value): Delete check for constant.

From-SVN: r154418
2009-11-22 01:59:16 +00:00
GCC Administrator
fd829514a5 Daily bump.
From-SVN: r154417
2009-11-22 00:16:42 +00:00
Martin Jambor
cc12e76082 tree-cfg.c (verify_types_in_gimple_reference): Error out on V_C_E of an SSA_NAME or an invariant if lvalue is required.
2009-11-22  Martin Jambor  <mjambor@suse.cz>

	* tree-cfg.c (verify_types_in_gimple_reference): Error out on
	V_C_E of an SSA_NAME or an invariant if lvalue is required.
	(verify_gimple_call): Verify LHS also with with
	verify_types_in_gimple_reference.

From-SVN: r154414
2009-11-22 00:05:13 +01:00
Martin Jambor
c6a2c25d12 re PR middle-end/42025 (ICE verify_stmts failed (non-trivial conversion at assignment))
2009-11-21  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/42025
	* tree-sra.c (access_precludes_ipa_sra_p): New function.
	(splice_param_accesses): Check all accesses by calling
	access_precludes_ipa_sra_p.
	(sra_ipa_modify_expr): Rename argument erite to dont_convert and do
	not convert types if it is true.
	(sra_ipa_modify_assign): Convert types in case of mismatch.

	* testsuite/gcc.c-torture/compile/pr42025-1.c: New test.
	* testsuite/gcc.c-torture/compile/pr42025-2.c: New test.

From-SVN: r154413
2009-11-21 23:56:36 +01:00
Kaushik Phatak
bcd9e00d09 sh.md (cmpeqsi_t-1): Use logical_operand predicate for operand 1.
* config/sh/sh.md (cmpeqsi_t-1): Use logical_operand predicate
	for operand 1.

From-SVN: r154412
2009-11-21 22:51:07 +00:00
Adam Nemet
583467831d * MAINTAINERS (Write After Approval): Update my email address.
From-SVN: r154411
2009-11-21 20:07:10 +00:00
Adam Nemet
a3c7bb26ea mips-protos.h (mulsidi3_gen_fn): New typedef.
* config/mips/mips-protos.h (mulsidi3_gen_fn): New typedef.
	(mips_mulsidi3_gen_fn): Declare new function.
	* config/mips/mips.c (mips_mulsidi3_gen_fn): New function.
	* config/mips/mips.md (<u>mulsidi3): Change condition to use
	mips_mulsidi3_gen_fn.  Use mips_mulsidi3_gen_fn to generate the
	insn.
	(<u>mulsidi3_64bit): Don't match for ISA_HAS_DMUL3.
	(mulsidi3_64bit_dmul): New define_insn.

testsuite/
	* gcc.target/mips/mult-1.c: Forbid octeon.
	* gcc.target/mips/octeon-dmul-3.c: New test.

From-SVN: r154410
2009-11-21 19:25:35 +00:00
Andy Hutchinson
36fd5b872b Nit.
From-SVN: r154409
2009-11-21 18:14:31 +00:00
Eric Botcazou
435697aae7 s-osinte-linux.ads (struct_timeval, [...]): Delete.
2009-11-21  Eric Botcazou  <ebotcazou@adacore.com>
            Laurent GUERBY  <laurent@guerby.net>

        * s-osinte-linux.ads (struct_timeval, To_Duration, To_Timeval,
        gettimeofday): Delete.
        * s-osinte-posix.adb (To_Duration, To_Timeval): Delete.
        * s-osprim-posix.adb (struct_timezone, struct_timeval, 
        gettimeofday): Delete.
        (Clock): Use cal.c timeval_to_duration.
        * s-taprop-linux.adb (Monotonic_Clock): Likewise.


Co-Authored-By: Laurent GUERBY <laurent@guerby.net>

From-SVN: r154407
2009-11-21 12:01:11 +00:00
Ben Elliston
e81f2ecf58 gengtype-lex.l: Enable noinput flex option.
* gengtype-lex.l: Enable noinput flex option.
	(YY_NO_INPUT): Remove define.

From-SVN: r154406
2009-11-21 21:24:25 +11:00
Andreas Krebbel
3d53a24508 vrp47.c: Fix target check.
2009-11-21  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.dg/tree-ssa/vrp47.c: Fix target check.

From-SVN: r154404
2009-11-21 07:39:47 +00:00
Jason Merrill
abd5730b2d PR c++/9050, DR 147, DR 318
PR c++/9050, DR 147, DR 318
	* parser.c (cp_parser_lookup_name): If the name matches the explicit
	class scope, we're naming the constructor.
	(cp_parser_constructor_declarator_p): Just use cp_parser_unqualified_id
	if we have a nested-name-specifier.
	(cp_parser_direct_declarator): Handle getting an overload set as a
	constructor declarator.
	(cp_parser_unqualified_id): Avoid looking up the constructor when
	naming the destructor.
	(cp_parser_diagnose_invalid_type_name): Give good
	diagnostic for improper use of constructor as template.
	* typeck.c (finish_class_member_access_expr): Give good diagnostic
	about calling constructor.

	* error.c (dump_aggr_type): Don't print A::A for injected-class-name.

From-SVN: r154403
2009-11-21 01:33:56 -05:00
Alexandre Oliva
42a06e46ab tree-ssa.c (find_released_ssa_name): Handle NULL wi.
* tree-ssa.c (find_released_ssa_name): Handle NULL wi.
(insert_debug_temp_for_var_def): Handle degenerate PHI nodes.
(insert_debug_temps_for_defs): Handle PHI nodes.
* tree-ssa-dom.c (degenerate_phi_result): Don't crash on released
SSA names.

From-SVN: r154402
2009-11-21 05:06:24 +00:00
Alexandre Oliva
b70fdfe4be tree-ssa-pre.c (remove_dead_inserted_code): Don't release_defs after remove_phi_node.
* tree-ssa-pre.c (remove_dead_inserted_code): Don't release_defs
after remove_phi_node.

From-SVN: r154401
2009-11-21 05:04:50 +00:00
Alexandre Oliva
21cf718065 re PR tree-optimization/42078 (ICE in gimple_assign_set_rhs_code)
gcc/ChangeLog:
PR tree-optimization/42078
* gimple.h (gimple_replace_lhs): New declaration.
* gimple.c (gimple_replace_lhs): New function.
* tree-ssa-math-opts.c (execute_cse_reciprocals): Call it before
modifying the call.
gcc/testsuite/ChangeLog:
PR tree-optimization/42078
* gcc.dg/pr42078.c: New test.

From-SVN: r154400
2009-11-21 05:04:30 +00:00
Sebastian Pop
04482dd105 Remove use of reg_mentioned_p.
2009-11-20  Sebastian Pop  <sebastian.pop@amd.com>

	* config/i386/sse.md (*xop_pmacsdql_mem): Don't call reg_mentioned_p.
	(xop_mulv2div2di3_low): Same.
	(*xop_pmacsdqh_mem): Same.

From-SVN: r154399
2009-11-21 03:43:03 +00:00
Andy Hutchinson
842dffa5ca re PR c/42114 (c99-stdint test fails for ptrdiff test)
PR Testsuite/42114
* gcc-dg/c99-stdint-1.c: Condition test for target without signal.h. XFAIL ptrdiff range test for avr.
* gcc-dg/c99-stdint-2.c: XFAIL for avr target.
* gcc-dg/c99-stdint-5.c: Condition test for target without signal.h.
* gcc-dg/c99-stdint-6.c: Ditto.

From-SVN: r154392
2009-11-21 01:34:51 +00:00
GCC Administrator
b04602917c Daily bump.
From-SVN: r154391
2009-11-21 00:16:51 +00:00
Richard Henderson
fe40daa0c3 i386-builtin-types.awk: New file.
* config/i386/i386-builtin-types.awk: New file.
	* config/i386/i386-builtin-types.def: New file.
	* config/i386/t-i386: Use them to build i386-builtin-types.inc.
	* config/i386/i386.c: Include it.
	(ix86_builtin_type_tab, ix86_get_builtin_type): New.
	(ix86_builtin_func_type_tab, ix86_get_builtin_func_type): New.
	(struct builtin_isa): Remove GTY marker.  Replace tree type with
	ix86_builtin_func_type; add set_and_not_built_p.
	(def_builtin): Change type parameter to tcode; use
	ix86_get_builtin_func_type; update all callers.  Accept zero mask
	to mean the builtin is unconditionally available.
	(ix86_add_new_builtins): Use set_and_not_built_p instead of type
	being set to NULL.
	(enum ix86_special_builtin_type, enum ix86_builtin_type): Remove.
	Update some users to rationalized enumeration codes from new include.
	(enum multi_arg_type): Remove.  Replace all enumeration values
	with defines to new ix86_builtin_func_type.
	(ix86_init_mmx_sse_builtins): Don't build any types here.  Defer
	all type resolution to def_builtin.
	(ix86_init_builtin_types): Split out from ...
	(ix86_init_builtins): ... here.  Use ix86_get_builtin_func_type.

From-SVN: r154388
2009-11-20 15:51:52 -08:00
Michael Meissner
497d383424 Undo part of 2009-10-23 change
From-SVN: r154380
2009-11-20 21:40:39 +00:00
Simon Martin
2282976b05 re PR c++/38646 (ICE with invalid specialization of variadic template)
gcc/cp/

2009-11-20  Simon Martin  <simartin@users.sourceforge.net>

	PR c++/38646
	* pt.c (process_partial_specialization): Do not turn wrongly located
	parameter pack arguments into error_mark_node.
	Split too long lines into two.

gcc/testsuite/

2009-11-20  Simon Martin  <simartin@users.sourceforge.net>

	PR c++/38646
	* g++.dg/cpp0x/pr38646.C: New test.

From-SVN: r154378
2009-11-20 21:37:23 +00:00
Jonathan Wakely
70826946ea re PR libstdc++/42019 (shared_ptr can not be used with -fno-rtti)
2009-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/42019
	* include/tr1/shared_ptr.h: Only use typeid when RTTI is enabled.
	* include/bits/shared_ptr_base.h: Likewise.
	* include/bits/shared_ptr.h: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/misc/42019.cc: New.
	* testsuite/20_util/shared_ptr/misc/42019.cc: New.

From-SVN: r154377
2009-11-20 21:23:02 +00:00
Paul Brook
d547364305 invoke.texi: Document ARM -mcpu=cortex-a5.
2009-11-20  Paul Brook  <paul@codesourcery.com>

	gcc/
	* doc/invoke.texi: Document ARM -mcpu=cortex-a5.
	* config/arm/arm-cores.def: Add cortex-a5.
	* config/arm/bpabi.h (BE8_LINK_SPEC): Add mcpu=cortex-a5.
	* config/arm/arm-tune.md: Regenerate.

From-SVN: r154375
2009-11-20 17:37:30 +00:00
Olga Golovanevsky
eed8fcad82 re PR tree-optimization/39960 (struct-reorg is broken)
2009-11-17 Olga Golovanevsky <olga@il.ibm.com>

	PR middle-end/39960
	* ipa-struct-reorg.c (find_pos_in_stmt): New parameter.
	(ref_pos): New field in structure.
	(insert_new_var_in_stmt): New function.

From-SVN: r154374
2009-11-20 16:57:35 +00:00
Rainer Orth
25bcd7ea32 config.gcc (alpha*-dec-osf[45]*): Set use_gcc_stdint.
gcc:
	* config.gcc (alpha*-dec-osf[45]*): Set use_gcc_stdint.
	* config/alpha/osf.h (SIG_ATOMIC_TYPE): Define.
	(INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE): Define.
	(UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
	(INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
	(INT_LEAST64_TYPE): Define.
	(UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
	UINT_LEAST64_TYPE): Define.
	(INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE,
	INT_FAST64_TYPE): Define.
	(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
	UINT_FAST64_TYPE): Define.
	(INTPTR_TYPE, UINTPTR_TYPE): Define.

	gcc/testsuite:
	* gcc.dg/c99-stdint-6.c: Set dg-options for alpha*-dec-osf5*.
	Wrap *int_least*_t tests in !NO_LEAST_TYPES.
	Wrap *intmax_t tests in !NO_MAX_TYPES.

From-SVN: r154373
2009-11-20 16:55:19 +00:00
Julian Brown
2ee67fbb88 arm.h (ASM_OUTPUT_REG_PUSH): Handle STATIC_CHAIN_REGNUM specially for Thumb-1.
gcc/
	* config/arm/arm.h (ASM_OUTPUT_REG_PUSH): Handle STATIC_CHAIN_REGNUM
	specially for Thumb-1.
	(ASM_OUTPUT_REG_POP): Likewise.

From-SVN: r154372
2009-11-20 16:48:28 +00:00
Paolo Carlini
10d3a72a80 re PR c++/42060 ([c++0x] ICE throwing array with initializer list)
cp/
2009-11-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/42060
	* except.c (build_throw): Check the tree returned by
	decay_conversion for error_mark_node.

testsuite/
2009-11-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/42060
	* g++.dg/cpp0x/initlist28.C: New.

From-SVN: r154371
2009-11-20 16:03:19 +00:00
Janus Weil
2848dbd32c intrinsic.texi (C_F_PROCPOINTER): Remove obsolete comment.
2009-11-20  Janus Weil  <janus@gcc.gnu.org>

	* intrinsic.texi (C_F_PROCPOINTER): Remove obsolete comment.

From-SVN: r154370
2009-11-20 16:40:55 +01:00
H.J. Lu
fbbb752e58 Remove testsuite/ from pathname.
From-SVN: r154365
2009-11-20 06:44:37 -08:00
H.J. Lu
aeb1da2ea1 proc_ptr_comp_23.f90: Add a missing space.
2009-11-20  H.J. Lu  <hongjiu.lu@intel.com>

	* gfortran.dg/proc_ptr_comp_23.f90: Add a missing space.

From-SVN: r154364
2009-11-20 06:07:06 -08:00
Andreas Krebbel
b5308c02b4 vrp47.c: Skip on S/390.
2009-11-20  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.dg/tree-ssa/vrp47.c: Skip on S/390.

From-SVN: r154363
2009-11-20 12:58:48 +00:00
Paolo Carlini
3d68714e22 compatibility-c++0x.cc (_Fnv_hash<4>, [...]): Add.
2009-11-21  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/compatibility-c++0x.cc (_Fnv_hash<4>, _Fnv_hash<8>): Add.

From-SVN: r154361
2009-11-20 10:35:43 +00:00
Shujing Zhao
c86818cfbe re PR c++/29017 (%s substituted with different untranslated words can't be properly translated)
/cp
2009-11-20  Shujing Zhao  <pearly.zhao@oracle.com>

	PR c++/29017
	* cp-tree.h (composite_pointer_operation): New type.
	(composite_pointer_type): Adjust prototype with new argument.
	* typeck.c (composite_pointer_type): Accept
	composite_pointer_operation as argument and emit diagnostic to be
	visible to gettext and checked at compile time.
	(composite_pointer_type_r): Likewise.
	(common_pointer_type): Update call to composite_pointer_type.
	(cp_build_binary_op): Likewise.
	* call.c (build_conditional_expr): Likewise.

/testsuite
2009-11-20  Shujing Zhao  <pearly.zhao@oracle.com>

	* g++.old-deja/g++.jason/rfg20.C: Make expected dg-error strings
	explicit.
	* g++.old-deja/g++.rfg/00321_01-.C: Likewise.
	* g++.old-deja/g++.rfg/00324_02-.C: Likewise.
	* g++.old-deja/g++.law/typeck1.C: Likewise.
	* g++.old-deja/g++.bugs/900324_02.C: Likewise.
	* g++.dg/conversion/ptrmem9.C: Likewise.
	* g++.dg/expr/cond2.C: Likewise.

From-SVN: r154360
2009-11-20 10:05:37 +00:00
Arnaud Charlet
3de8a540d8 macro.c (enter_macro_context): Call cb.used callback if defined.
* macro.c (enter_macro_context): Call cb.used callback if defined.
	* directives.c (do_idef, do_ifndef): Ditto.
	* include/cpplib.h (struct cpp_callbacks): Add used callback.

From-SVN: r154359
2009-11-20 09:18:16 +01:00
Paul Thomas
9f29c05e32 re PR fortran/42104 ([F03] runtime segfault with procedure pointer component)
2009-11-20  Paul Thomas  <pault@gcc.gnu.org>
	    Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42104
	* trans-expr.c (gfc_conv_procedure_call): If procedure pointer
	component call, use the component's 'always_explicit' attr
	for array arguments.

2009-11-20  Paul Thomas  <pault@gcc.gnu.org>
	    Janus Weil  <janus@gcc.gnu.org>

	PR fortran/42104
	* gfortran.dg/proc_ptr_comp_23.f90 : New test.


Co-Authored-By: Janus Weil <janus@gcc.gnu.org>

From-SVN: r154358
2009-11-20 06:43:13 +00:00
Jason Merrill
5cd25f0725 re PR c++/42115 (r154072 & r154073 break build of ppl, non-placement deallocation issue)
PR c++/42115
	* call.c (build_op_delete_call): Don't complain about using
	op delete (void *, size_t) for placement delete if there's an
	op delete (void *).

From-SVN: r154357
2009-11-20 00:03:21 -05:00
Jason Merrill
98fba7f7af DR 176 permissiveness
DR 176 permissiveness
gcc/
	* dwarf2out.c (get_context_die): Take TYPE_MAIN_VARIANT.
gcc/cp/
	* class.c (build_self_reference): Call set_underlying_type.
	* decl.c (check_elaborated_type_specifier): Don't complain about
	injected-class-name.
	(type_is_deprecated): Use TYPE_MAIN_VARIANT.
	* pt.c (convert_template_argument): Handle injected-class-name used
	as template template argument.
	* typeck2.c (abstract_virtuals_error): Use TYPE_MAIN_VARIANT.

From-SVN: r154354
2009-11-19 22:12:07 -05:00