Commit Graph

124346 Commits

Author SHA1 Message Date
Jakub Jelinek 87e356bada re PR preprocessor/57757 (CPP extra inserted whitespace needs to be reviewed for C++11 user-defined literals)
PR preprocessor/57757
	* lex.c (cpp_avoid_paste): Avoid pasting CPP_{,W,UTF8}STRING
	or CPP_STRING{16,32} with CPP_NAME or SPELL_LITERAL token that
	starts if a-zA-Z_.

	* g++.dg/cpp/paste1.C: New test.
	* g++.dg/cpp/paste2.C: New test.

From-SVN: r200875
2013-07-10 18:40:49 +02:00
Georg-Johann Lay bb6f2bacbb re PR target/57844 (ICE: unrecognizable addqi3 insn with -msp8 and frame size of 128 bytes)
PR target/57844
	* config/avr/avr.c (avr_prologue_setup_frame): Trunk -size to mode
	of my_fp.

From-SVN: r200872
2013-07-10 12:39:18 +00:00
Georg-Johann Lay 5219b2325d re PR target/57506 ([avr] Some devices are present twice in avr-mcus.def)
PR target/57506
	* config/avr/avr-mcus.def (atmega16hva, atmega16hva2, atmega16hvb)
	(atmega16m1, atmega16u4, atmega32a, atmega32c1, atmega32hvb)
	(atmega32m1, atmega32u4, atmega32u6, atmega64c1, atmega64m1):
	Remove duplicate devices.
	* config/avr/gen-avr-mmcu-texi.c (print_mcus): Fail on duplicate MCUs.
	* config/avr/t-multilib: Regenerate.
	* config/avr/avr-tables.opt: Regenerate.
	* doc/avr-mmcu.texi: Regenerate.

From-SVN: r200870
2013-07-10 12:32:05 +00:00
Georg-Johann Lay 283045c0b4 re PR target/56987 (gcc/config/avr/avr.opt:80: "change" -> "changed"?)
PR target/56987
	* config/avr/avr.opt (Waddr-space-convert): Fix typo.

From-SVN: r200869
2013-07-10 11:21:41 +00:00
Graham Stott ceb2d59f8c mips.c (mips_rtx_costs): Very slightly increase the cost of MULT when optimizing for size.
* config/mips/mips.c (mips_rtx_costs): Very slightly increase
	the cost of MULT when optimizing for size.

	* gcc.target/mips/mulsize-1.c: New.
	* gcc.target/mips/mulsize-2.c: New.
	* gcc.target/mips/mulsize-3.c: New.
	* gcc.target/mips/mulsize-4.c: New.

From-SVN: r200867
2013-07-10 09:26:13 +00:00
Jan-Benedict Glaw 055e0a992c cr16-protos.h: Don't include target.h.
2013-07-10  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

gcc/
	* config/cr16/cr16-protos.h: Don't include target.h.

From-SVN: r200865
2013-07-10 08:08:07 +00:00
Jason Merrill 06b76c7fa8 re PR c++/57402 (ICE: in make_decl_rtl, at varasm.c:1147 when initializing variable-sized array)
PR c++/57402
	* init.c (build_vec_init): Don't take shortcuts when initializing
	a VLA.

From-SVN: r200860
2013-07-09 20:37:49 -04:00
GCC Administrator 9be2cb3797 Daily bump.
From-SVN: r200859
2013-07-10 00:16:39 +00:00
Joseph Myers ef43e86898 rs6000.c (rs6000_init_hard_regno_mode_ok): Only adjust register size for TDmode and TFmode for VSX registers.
* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Only
	adjust register size for TDmode and TFmode for VSX registers.

From-SVN: r200853
2013-07-09 23:35:46 +01:00
Jason Merrill d966b2749c re PR c++/57471 (Bizarre error for template parameter pack)
PR c++/57471
	* parser.c (cp_parser_sizeof_pack): Clear parser scopes.

From-SVN: r200852
2013-07-09 17:52:40 -04:00
Janis Johnson 7da3805802 * config.host (powerpc-*-eabispe*): Add t-fdpbit to tmake_file.
From-SVN: r200846
2013-07-09 21:31:09 +00:00
Jason Merrill ce9011004c re PR c++/57658 (ICE in tsubst_copy, at cp/pt.c:12213)
PR c++/57658
	* semantics.c (finish_id_expression): Return the id for an
	unevaluated outer variable.

From-SVN: r200845
2013-07-09 14:50:28 -04:00
Jason Merrill d9fac9dd59 re PR c++/57526 (use of X before deduction of auto error for seemingly good code)
PR c++/57526
	* semantics.c (lambda_capture_field_type): Build a DECLTYPE_TYPE
	if the variable type uses 'auto'.

From-SVN: r200844
2013-07-09 13:56:43 -04:00
Jason Merrill f9f91ddcf7 re PR c++/57437 (C++11: mutable lambdas)
PR c++/57437
	* typeck.c (check_return_expr): Lambda proxies aren't eligible
	for nrv or return by move.

From-SVN: r200843
2013-07-09 13:56:32 -04:00
Jason Merrill 9a3970ddfc re PR c++/57532 (operator& broken when used on rvalues)
PR c++/57532
	* parser.c (cp_parser_ref_qualifier_opt): Don't tentatively parse
	a ref-qualifier in C++98 mode.

From-SVN: r200842
2013-07-09 13:56:14 -04:00
Jason Merrill cb5f47b639 re PR c++/57545 (Generation of debug symbols leads to internal compiler error)
PR c++/57545
	* pt.c (convert_nontype_argument) [INTEGER_CST]: Force the
	argument to have the exact type of the parameter.

From-SVN: r200841
2013-07-09 13:56:03 -04:00
Jason Merrill 7eb48705c0 re PR regression/57551 (g++.dg/ext/visibility/anon6.C scan-assembler 1BIiE1cE)
PR c++/57551
	* semantics.c (cxx_eval_indirect_ref): Don't try to look through
	a POINTER_PLUS_EXPR for type punning diagnostic.

From-SVN: r200840
2013-07-09 13:55:43 -04:00
Jason Merrill 1d0859d894 re PR c++/57831 (pointer to member function inaccessible through using statement (or ICE))
PR c++/57831
	* pt.c (tsubst_copy): Handle USING_DECL.

From-SVN: r200839
2013-07-09 13:55:24 -04:00
Marc Glisse 40e0364c55 re PR c++/53094 (constexpr vector subscripting)
2013-07-09  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/53094
gcc/cp/
	* semantics.c (cxx_eval_bit_field_ref): Handle VECTOR_CST.

gcc/testsuite/
	* g++.dg/cpp0x/constexpr-53094-1.C: Adjust.
	* g++.dg/ext/vector24.C: New testcase.

From-SVN: r200822
2013-07-09 15:58:36 +00:00
Marc Glisse 76c7bf65e8 re PR c++/53000 (Conditional operator does not behave as standardized)
2013-07-09  Marc Glisse  <marc.glisse@inria.fr>

	PR c++/53000
gcc/cp/
	* call.c (build_conditional_expr_1): Preserve xvalues.

gcc/testsuite/
	* g++.dg/cpp0x/decltype17.C: Adjust.

From-SVN: r200821
2013-07-09 15:55:49 +00:00
Tim Shen b3ebe3d0e0 Implement class regex_traits.
2013-07-09  Tim Shen  <timshen91@gmail.com>

	Implement class regex_traits.
	* include/bits/regex.h: Implement lookup_classname and
	lookup_collatename; modify isctype; partially implement
	transform_primary.
	* testsuite/28_regex/traits/char/isctype.cc: Add more test cases.
	* testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
	* testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
	* testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
	* testsuite/28_regex/traits/wchar_t/isctype.cc: New.
	* testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New.
	* testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New.
	* testsuite/28_regex/traits/wchar_t/transform_primary.cc: New.

From-SVN: r200818
2013-07-09 13:41:10 +00:00
Simon Baldwin 309f50b920 configure.ac: Add AC_CONFIG_AUX_DIR.
* configure.ac: Add AC_CONFIG_AUX_DIR.
	* configure: Regenerated.

From-SVN: r200814
2013-07-09 10:24:39 +00:00
Paolo Carlini 22adf7b528 re PR c++/51786 ([c++0x] Invalid declaration with decltype accepted)
/cp
2013-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51786
	* parser.c (cp_parser_simple_declaration): Before calling shadow_tag
	also check declares_class_or_enum.

/testsuite
2013-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51786
	* g++.dg/cpp0x/pr51786.C: New.

From-SVN: r200813
2013-07-09 09:28:09 +00:00
Tristan Gingold 3830d98a8b makefile.vms (OBJS): Add dwarfnames.obj
2013-07-09  Tristan Gingold  <gingold@adacore.com>

	* makefile.vms (OBJS): Add dwarfnames.obj

From-SVN: r200812
2013-07-09 07:43:35 +00:00
Jason Merrill 0ef08a8117 re PR c++/57550 (bogus "error ... is private")
PR c++/57550
	* pt.c (fn_type_unification): Only defer during substitution.
	(type_unification_real): Defer during defarg substitution,
	add checks parm to pass back deferred checks.
	(unify, do_auto_deduction): Adjust.
	* semantics.c (reopen_deferring_access_checks): New.
	* cp-tree.h: Declare it.

From-SVN: r200808
2013-07-08 23:19:36 -04:00
GCC Administrator a89b31132d Daily bump.
From-SVN: r200806
2013-07-09 00:16:22 +00:00
Janis Johnson 3cefbd8860 * gcc.target/powerpc/tfmode_off.c: Skip for EABI targets.
From-SVN: r200802
2013-07-08 20:19:35 +00:00
Janis Johnson 21d3410721 * gcc.target/powerpc/ppc-spe64-1.c: Update expected error message.
From-SVN: r200799
2013-07-08 19:34:39 +00:00
Janis Johnson bb9d19834b * gcc.target/powerpc/pr47197.c: Require powerpc_altivec_ok.
From-SVN: r200798
2013-07-08 19:33:52 +00:00
Janis Johnson ad3d089954 sd-vsx.c: Require dfp.
* gcc.target/powerpc/sd-vsx.c: Require dfp.
	* gcc.target/powerpc/sd-pwr6.c: Likewise.

From-SVN: r200797
2013-07-08 19:33:10 +00:00
Tobias Burnus 5e7ea2143a re PR fortran/57834 (C_F_POINTER (only with -std=): accepts only explicit- and assumed-size arrays for FPTR when SHAPE is present)
2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57834
        * check.c (is_c_interoperable): Add special case for
        * c_f_pointer.
        (explicit-size, gfc_check_c_f_pointer, gfc_check_c_loc): Update
        call.

2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57834
        * gfortran.dg/c_f_pointer_tests_8.f90: New.

From-SVN: r200794
2013-07-08 21:05:16 +02:00
Kai Tietz 4a283fdfbf re PR c++/56892 (dllexport prevents inline inside dll)
PR target/56892
	* config/i386/i386.c (TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P): Define as
	hook_bool_const_tree_true.

From-SVN: r200792
2013-07-08 19:54:55 +02:00
Tobias Burnus 928675464c re PR fortran/50554 (INQUIRE cannot redefine DO index (r178939))
2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50554
        * io.c (match_inquire_element): Add missing do-var check.

2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50554
        * gfortran.dg/do_check_9.f90: New.

From-SVN: r200790
2013-07-08 18:13:57 +02:00
Andreas Krebbel 2cf4c39ee6 s390.c: Replace F*_REGNUM with FPR*_REGNUM.
2013-07-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.c: Replace F*_REGNUM with FPR*_REGNUM.
	* config/s390/s390.h: Remove F*_REGNUM macro definitions.
	* config/s390/s390.md: Define FPR*_REGNUM constants.
	Fix FPR2_REGNUM constant (18 -> 17).
	("*trunc<BFP:mode><DFP_ALL:mode>2")
	("*trunc<DFP_ALL:mode><BFP:mode>2")
	("trunc<BFP:mode><DFP_ALL:mode>2")
	("trunc<DFP_ALL:mode><BFP:mode>2")
	("*extend<BFP:mode><DFP_ALL:mode>2")
	("*extend<DFP_ALL:mode><BFP:mode>2")
	("extend<BFP:mode><DFP_ALL:mode>2")
	("extend<DFP_ALL:mode><BFP:mode>2"): Replace FPR2_REGNUM with
	FPR4_REGNUM.

From-SVN: r200787
2013-07-08 14:20:33 +00:00
Tobias Burnus eebb98a55b re PR fortran/57785 (DOT_PRODUCT error with constant complex array)
2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57785
        * simplify.c (compute_dot_product): Complex conjugate for
        dot_product.
        (gfc_simplify_dot_product, gfc_simplify_matmul): Update call.

2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57785
        * gfortran.dg/dot_product_2.f90: New.

From-SVN: r200786
2013-07-08 15:48:19 +02:00
Tobias Burnus c8877f4037 re PR fortran/57469 (Erroneous warning for unused dummy arguments used in namelist)
2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57469
        * trans-decl.c (generate_local_decl): Don't warn that
        a dummy is unused, when it is in a namelist.

2013-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57469
        * gfortran.dg/warn_unused_dummy_argument_4.f90: New.

From-SVN: r200785
2013-07-08 14:15:11 +02:00
Manfred Schwarb 454e172038 defined_assignment_7.f90: Fix dg-do.
2013-07-08  Manfred Schwarb  <manfred99@gmx.ch>

        * gfortran.dg/defined_assignment_7.f90: Fix dg-do.
        * gfortran.dg/finalize_10.f90: Fix dg-final.

From-SVN: r200784
2013-07-08 14:09:13 +02:00
Graham Stott e6ac027046 * Makefile.in: (c-family-warn): Define to $(STRICT_WARN)
From-SVN: r200783
2013-07-08 11:14:02 +00:00
Graham Stott 64a92610ba array-notation-common.c (length_mismatch_in_expr_p): Delete unused variables l_length and l_node.
* c-family/array-notation-common.c (length_mismatch_in_expr_p): Delete
	unused variables l_length and l_node.

From-SVN: r200781
2013-07-08 10:41:13 +00:00
Andreas Krebbel b89b22fc57 s390.c: Rename cfun_set_fpr_bit to cfun_set_fpr_save and cfun_fpr_bit_p to cfun_fpr_save_p.
2013-07-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.c: Rename cfun_set_fpr_bit to cfun_set_fpr_save
	and cfun_fpr_bit_p to cfun_fpr_save_p.
	(s390_frame_area, s390_register_info, s390_frame_info)
	(s390_emit_prologue, s390_emit_epilogue)
	(s390_conditional_register_usage): Use the *_REGNUM macros for FPR
	register numbers.
	* config/s390/s390.h: Define *_REGNUM macros for floating point
	register numbers.

From-SVN: r200780
2013-07-08 09:18:50 +00:00
Eric Botcazou 07f398aa89 * Makefile.in (tree-ssa-reassoc.o): Add dependency on $(PARAMS_H).
From-SVN: r200777
2013-07-08 09:13:54 +00:00
Po-Chun Chang 75fefa9163 re PR rtl-optimization/57786 (wasted work in distribute_notes)
PR rtl-optimization/57786
	* combine.c (distribute_notes) <case REG_DEAD>: Change all_used to bool
	and break out of the loop when it is set to false.

From-SVN: r200776
2013-07-08 09:05:38 +00:00
Jakub Jelinek 8140c06592 re PR target/57819 (Suboptimal shift patterns)
PR target/57819
	* simplify-rtx.c (simplify_unary_operation_1) <case ZERO_EXTEND>:
	Simplify (zero_extend:SI (subreg:QI (and:SI (reg:SI)
	(const_int 63)) 0)).
	* combine.c (make_extraction): Create ZERO_EXTEND or SIGN_EXTEND
	using simplify_gen_unary instead of gen_rtx_*_EXTEND.
	* config/i386/i386.md (*jcc_bt<mode>_1): New define_insn_and_split.

	* gcc.target/i386/pr57819.c: New test.

From-SVN: r200775
2013-07-08 10:48:40 +02:00
Hristian Kirtchev 78d432da45 einfo.adb (Get_Pragma): Handle the retrieval of delayed pragmas stored in N_Contract nodes.
2013-07-08  Hristian Kirtchev  <kirtchev@adacore.com>

	* einfo.adb (Get_Pragma): Handle the retrieval of delayed
	pragmas stored in N_Contract nodes.
	* einfo.ads (Get_Pragma): Update the comment on usage.
	* sem_prag.adb (Check_Precondition_Postcondition): Retain a copy
	of the pragma when it applies to a body that acts as a spec. The
	copy is preanalyzed and chained on the contract of the body.

From-SVN: r200774
2013-07-08 10:19:20 +02:00
Arnaud Charlet 5884c23204 [multiple changes]
2013-07-08  Robert Dewar  <dewar@adacore.com>

	* rtsfind.adb: Minor comment fix.

2013-07-08  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch4.adb (Check_Ghost_Subprogram_Call): Do not check the placement
	of a Ghost function call when the enclosing context is being
	preanalyzed.

2013-07-08  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb (Expand_Inlined_Call, Process_Formals): If the
	expression in a return statement is a numeric literal, qualify
	it with the return type for proper resolution.

From-SVN: r200772
2013-07-08 10:17:14 +02:00
Arnaud Charlet 2cbac6c692 [multiple changes]
2013-07-08  Robert Dewar  <dewar@adacore.com>

	* sem.ads: Minor comment updates.
	* s-restri.ads, exp_ch6.adb, lib-load.ads, exp_ch3.adb, sem_ch10.adb:
	Minor reformatting.

2013-07-08  Robert Dewar  <dewar@adacore.com>

	* exp_attr.adb (Expand_N_Attribute_Reference): Add dummy entry
	for Restriction_Set.
	* gnat_rm.texi: Add missing menu entry for Attribute Ref Add
	documentation for attribute Restriction_Set.
	* lib-writ.adb (Write_With_Lines): Generate special W lines
	for Restriction_Set.
	* lib-writ.ads: Document special use of W lines for
	Restriction_Set.
	* lib.ads (Restriction_Set_Dependences): New table.
	* par-ch4.adb (Is_Parameterless_Attribute): Add Loop_Entry to
	list (Scan_Name_Extension_Apostrophe): Remove kludge test for
	Loop_Entry (Scan_Name_Extension_Apostrophe): Handle No_Dependence
	for Restricton_Set.
	* restrict.adb (Check_SPARK_Restriction): Put in Alfa order
	(OK_No_Dependence_Unit_Name): New function.
	* restrict.ads (OK_No_Dependence_Unit_Name): New function.
	* rtsfind.adb: Minor reformatting Minor code reorganization.
	* sem_attr.adb (Analyze_Attribute): Add processing for
	Restriction_Set.
	* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings):
	Remove Check_Unit_Name and use new function
	OK_No_Dependence_Unit_Name instead.
	* sinfo.ads: Minor comment updates.
	* snames.ads-tmpl: Add entry for Restriction_Set attribute.

2013-07-08  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch4.adb (Apply_Accessibility_Check): Remove local constant
	Pool_Id and local variable Free_Stmt. Do not deallocate the faulty
	object as "free" is not available on all targets/profiles.

2013-07-08  Robert Dewar  <dewar@adacore.com>

	* sem_ch13.adb (Analyze_Aspect_Specifications): Handle
	Storage_Size aspect for task type in case discriminant is
	referenced.
	(Analyze_Attribute_Definition_Clause): Do not flag Storage_Size
	attribute definition clause as obsolescent if from aspect.

From-SVN: r200771
2013-07-08 10:15:25 +02:00
Arnaud Charlet d7a3e18ca8 [multiple changes]
2013-07-08  Robert Dewar  <dewar@adacore.com>

	* gnat_rm.texi: Add documentation for Img returning a function.
	* par-prag.adb: Minor reformatting.
	* restrict.adb: Minor reformatting and code reorganization.

2013-07-08  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb: add guard to ASIS transform.

From-SVN: r200769
2013-07-08 10:11:50 +02:00
Jakub Jelinek 046f1eeec3 re PR rtl-optimization/57829 (Wrong constant folding)
PR rtl-optimization/57829
	* simplify-rtx.c (simplify_binary_operation_1) <case IOR>: Ensure that
	mask bits outside of mode are just sign-extension from mode to HWI.

	* gcc.c-torture/execute/pr57829.c: New test.

From-SVN: r200768
2013-07-08 10:11:08 +02:00
Arnaud Charlet 466c212744 [multiple changes]
2013-07-08  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.adb (Expand_N_Asynchronous_Select): If the trigger
	of the asynchronous select is a dispatching call, transform the
	abortable part into a procedure, to avoid duplication of local
	loop variables that may appear within.

2013-07-08  Vincent Celier  <celier@adacore.com>

	* projects.texi: Update the documentation of suffixes in package
	Naming.

2013-07-08  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Conforming_Types): Anonymous_access_to_subprograsm
	types are type conformant if the designated type of one is
	protected and the other is not. Convention only matters when
	checking subtype conformance.

2013-07-08  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Make_Call_Into_Operator): In ASIS mode, propagate
	back the fully resolved operands to the original function call
	so that all semantic information remains available to ASIS.

From-SVN: r200767
2013-07-08 10:10:20 +02:00
Arnaud Charlet 7b23a7acb4 [multiple changes]
2013-07-08  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb: minor reformatting (remove obsolete comment).
	* sem_ch9.adb: improve error message on illegal trigger.

2013-07-08  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb: Minor reformatting.

From-SVN: r200766
2013-07-08 10:08:00 +02:00