Bernd Schmidt [Tue, 20 Dec 2011 16:46:22 +0000 (16:46 +0000)]
expr.c (store_field): Avoid a direct store if the mode is larger than the size of the bit field.
gcc/
* expr.c (store_field): Avoid a direct store if the mode is larger
than the size of the bit field.
* stor-layout.c (layout_decl): If flag_strict_volatile_bitfields,
treat non-volatile bit fields like volatile ones.
* toplev.c (process_options): Disallow combination of
-fstrict-volatile-bitfields and ABI versions less than 2.
* config/arm/arm.c (arm_option_override): Don't enable
flag_strict_volatile_bitfields if the ABI version is less than 2.
* config/h8300/h8300.c (h8300_option_override): Likewise.
* config/rx/rx.c (rx_option_override): Likewise.
* config/m32c/m32c.c (m32c_option_override): Likewise.
* config/sh/sh.c (sh_option_override): Likewise.
gcc/testsuite/
* gcc.target/arm/volatile-bitfields-4.c: New test.
* c-c++-common/abi-bf.c: New test.
From-SVN: r182545
Arnaud Charlet [Tue, 20 Dec 2011 14:09:26 +0000 (15:09 +0100)]
[multiple changes]
2011-12-20 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Insert_Freeze_Node_For_Instance): Further
refinements on the placement of a freeze node for a package
instantiation, when the generic appears within a previous
instantiation in the same unit.If the current instance is within
the one that contains the generic, the freeze node for the
current one must appear in the current declarative part. Ditto
if the current instance is within another package instance. In
these cases the freeze node of the previous instance is is not
relevant. New predicate Enclosing_Body simplifies the process.
(Freeze_Subprogram_Body): Rename Enclosing_Body to
Enclosing_Package_Body, to prevent confusion with subprogram of
same name elsewhere.
(Install_Body): Recognize enclosing subprogram bodies to determine
whether freeze_node belongs in current declarative list.
2011-12-20 Robert Dewar <dewar@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Allow
attribute definition clause for renaming if generated internally
and generate duplicate clause to apply to renamed object.
(Rep_Item_Too_Late): Only diagnose source level entities
* prj-nmsc.adb: Minor reformatting.
* gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r182542
Arnaud Charlet [Tue, 20 Dec 2011 14:04:19 +0000 (15:04 +0100)]
[multiple changes]
2011-12-20 Bob Duff <duff@adacore.com>
* opt.ads (List_Inherited_Aspects): Default to False
(i.e. -gnatw.L is the default).
* usage.adb: Document new default for -gnatw.L.
* gnat_ugn.texi: Document -gnatw.l and -gnatw.L switches.
* warnsw.adb (Set_Warning_Switch): Do not include
List_Inherited_Aspects in -gnatwa.
2011-12-20 Ed Schonberg <schonberg@adacore.com>
* checks.adb (Apply_Type_Conversion_Checks): For a discrete type
with predicates, indicate unconditionally that a range check
is needed.
* exp_ch4.adb (Expand_N_In): When the membership test is rewritten
to incorporate a call to a predicate function, analyze expression
with checks suppressed, to prevent infinite recursion.
From-SVN: r182540
Arnaud Charlet [Tue, 20 Dec 2011 14:00:46 +0000 (15:00 +0100)]
[multiple changes]
2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch11.adb (Find_Local_Handler): Guard the
search over individual exception choices in case the list of
handlers contains other (possibly illegal) constructs.
2011-12-20 Gary Dismukes <dismukes@adacore.com>
* sem_ch8.adb (Find_Type): Test taggedness
of the Available_Type when checking for an illegal use of an
incomplete type, when the incomplete view is a limited view of
a type. Remove redundant Is_Tagged test.
2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
* exp_util.adb: Add with and use clause for Aspects.
(Is_Finalizable_Transient): Objects which denote Ada containers
in the context of iterators are not considered transients. Such
object must live for as long as the loop is around.
(Is_Iterated_Container): New routine.
2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
* exp_imgv.adb (Expand_Width_Attribute): Add a
type conversion from the enumeration subtype to its base subtype.
From-SVN: r182539
Arnaud Charlet [Tue, 20 Dec 2011 13:56:21 +0000 (14:56 +0100)]
Minor reformatting.
From-SVN: r182538
Hristian Kirtchev [Tue, 20 Dec 2011 13:55:31 +0000 (13:55 +0000)]
sem_ch4.adb (Operator_Check): Update the call to Is_Dimensioned_Type.
2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch4.adb (Operator_Check): Update the call to
Is_Dimensioned_Type.
* sem_dim.adb: Remove with and use clause for Namet.Sp. Reorganize
all type declarations and datastructures involved. Propagate
all changes involving data structures and types throughout
the pakage. Alphabetize all subprograms. Add ??? comments.
(AD_Hash): Removed.
(Analyze_Aspect_Dimension): Rewritten. This
routine now does all its checks in one pass rather than
two. Refactor code. The error message are now in a more GNAT-ish style.
(Create_Rational_From_Expr): This is now a function.
(Get_Dimensions): Removed.
(Get_Dimensions_String_Id): Removed.
(Dimensions_Of): New rouitne.
(Exists): New routines.
(Is_Invalid): New routine.
(Permits_Dimensions): Removed.
(Present): Removed.
(Set_Symbol): New routine.
(System_Of): New routine.
* sem_dim.ads: Rewrite the top level description of the
package. Alphabetize subprograms. Add various comments on
subprogram usage. Add ??? comments.
(Is_Dimensioned_Type):
Renamed to Has_Dimension_System.
* sem_res.adb (Resolve_Op_Expon): Update the call to Is_Dimensioned_Type
From-SVN: r182537
Ed Schonberg [Tue, 20 Dec 2011 13:53:42 +0000 (13:53 +0000)]
sem_ch13.adb (Check_Indexing_Functions): The return type of an indexing function can be the default element type...
2011-12-20 Ed Schonberg <schonberg@adacore.com>
* sem_ch13.adb (Check_Indexing_Functions): The return type of an
indexing function can be the default element type, and does not
need to be a reference type.
* sem_ch4.adb (Try_Container_Indexing): Ditto.
From-SVN: r182536
Arnaud Charlet [Tue, 20 Dec 2011 13:52:22 +0000 (14:52 +0100)]
[multiple changes]
2011-12-20 Robert Dewar <dewar@adacore.com>
* a-cdlili.ads, sem_cat.adb, sem_ch10.adb: Minor reformatting.
2011-12-20 Bob Duff <duff@adacore.com>
* s-taprop-mingw.adb (Yield): Do_Yield is no longer Unreferenced.
2011-12-20 Vincent Pucci <pucci@adacore.com>
* impunit.adb: s-dimkio, s-dimmks and s-dmotpr defined as GNAT
Defined Additions to System.
* Makefile.rtl: s-dimkio, s-dimmks and s-dmotpr added.
* s-dimkio.ads, s-dimmks.ads, s-dmotpr.ads: New files.
2011-12-20 Gary Dismukes <dismukes@adacore.com>
* sem_ch4.adb (Traverse_Homonyms): Allow a homonym to match when
within an instance, even if the homonym is marked Is_Hidden at
this point.
From-SVN: r182535
Arnaud Charlet [Tue, 20 Dec 2011 13:47:44 +0000 (14:47 +0100)]
[multiple changes]
2011-12-20 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb, sem_ch5.adb, s-diinio.adb, s-diinio.ads, sem_dim.adb,
sem_dim.ads, sem_res.adb, s-stposu.adb, s-stposu.ads, sem_ch4.adb,
s-diflio.adb, s-diflio.ads, exp_disp.adb, s-llflex.ads: Minor
reformatting.
* aspects.ads: Dimension[_Aspects] are GNAT defined.
2011-12-20 Robert Dewar <dewar@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check
renaming case.
2011-12-20 Thomas Quinot <quinot@adacore.com>
* sem_cat.adb, sem_ch10.adb (Analyze_With_Clause): For a WITH clause on
a child unit that is an illegal instantiation, mark the WITH clause in
error.
(Install_Siblings, Validate_Categorization_Dependency): Guard
against WITH clause marked as in error.
From-SVN: r182534
Hristian Kirtchev [Tue, 20 Dec 2011 13:41:00 +0000 (13:41 +0000)]
sem_res.adb (Resolve_Allocator): Warning on allocation of tasks on a subpool and rewrite the allocator into a...
2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
* sem_res.adb (Resolve_Allocator): Warning on allocation
of tasks on a subpool and rewrite the allocator into a raise
Program_Error statement.
* s-stposu.ads, s-stposu.adb: Code reformatting.
(Create_Subpool): Remove formal parameter Storage_Size.
(Default_Subpool_For_Pool): Add the default implementation of this
routine.
(Set_Pool_Of_Subpool): Rename formal parameter Pool to To. Update
all the uses of the parameter.
From-SVN: r182533
Dodji Seketeli [Tue, 20 Dec 2011 13:36:04 +0000 (13:36 +0000)]
PR debug/49951 - jumpy stepping at end of scope in C++
gcc/cp/
PR debug/49951
* decl.c (cxx_maybe_build_cleanup): Don't set location of the call
to the destructor.
gcc/testsuite/
PR debug/49951
* g++.dg/gcov/gcov-2.C: Adjust.
From-SVN: r182532
Rainer Orth [Tue, 20 Dec 2011 12:18:26 +0000 (12:18 +0000)]
Support 64-bit libjava multilib for i?86-linux
* configure.ac (i?86-*-linux*): Set SIGNAL_HANDLER_AUX.
* configure: Regenerate.
* include/i386-signal.h: Wrap in __i386__, include
java-signal-aux.h otherwise.
From-SVN: r182528
Rainer Orth [Tue, 20 Dec 2011 12:16:43 +0000 (12:16 +0000)]
Support 64-bit libgnat multilib on i?86-linux
* gcc-interface/Makefile.in (%86 linux%):
(LIBGNAT_TARGET_PAIRS_32): Split off from LIBGNAT_TARGET_PAIRS.
(LIBGNAT_TARGET_PAIRS_64): New.
(LIBGNAT_TARGET_PAIRS): Add either depending on multilib.
From-SVN: r182527
Paolo Carlini [Tue, 20 Dec 2011 10:38:44 +0000 (10:38 +0000)]
re PR c++/51612 ([c++0x] [4.6/4.7 Regression] ICE with constexpr constructor and virtual base class)
/cp
2011-12-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51612
* semantics.c (is_valid_constexpr_fn): In case of constexpr
constructors also check for virtual base classes.
/testsuite
2011-12-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51612
* g++.dg/cpp0x/constexpr-ice4.C: New.
From-SVN: r182526
Richard Guenther [Tue, 20 Dec 2011 09:49:17 +0000 (09:49 +0000)]
re PR debug/46796 (debug info missing builtin type names with lto)
2011-12-20 Richard Guenther <rguenther@suse.de>
PR lto/46796
* dwarf2out.c (modified_type_die): When the type variant
chain is corrupt use the types name, if available, instead
of __unknown__.
From-SVN: r182524
Jonathan Wakely [Tue, 20 Dec 2011 09:09:50 +0000 (09:09 +0000)]
re PR libstdc++/51365 (cannot use final empty class in std::tuple)
PR libstdc++/51365
* include/std/tuple (_Tuple_impl): Check __is_final as well as
is_empty.
* testsuite/20_util/tuple/51365.cc: New.
From-SVN: r182523
Uros Bizjak [Tue, 20 Dec 2011 08:46:38 +0000 (09:46 +0100)]
linux-unwind.h: Update copyright years.
* config/alpha/linux-unwind.h: Update copyright years.
(MD_FROB_UPDATE_CONTEXT): New define.
(alpha_frob_update_context): New function.
From-SVN: r182522
Tristan Gingold [Tue, 20 Dec 2011 08:35:12 +0000 (08:35 +0000)]
alpha.c (alpha_start_function): Adjust condition to create VMS trampoline entry point.
2011-12-20 Tristan Gingold <gingold@adacore.com>
* config/alpha/alpha.c (alpha_start_function): Adjust condition to
create VMS trampoline entry point.
From-SVN: r182521
Tristan Gingold [Tue, 20 Dec 2011 08:08:30 +0000 (08:08 +0000)]
aclocal.m4: Assume strncmp works in cross case.
2011-12-20 Tristan Gingold <gingold@adacore.com>
* aclocal.m4: Assume strncmp works in cross case.
* configure: Regenerate
From-SVN: r182520
GCC Administrator [Tue, 20 Dec 2011 00:18:56 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182516
Benjamin Kosnik [Tue, 20 Dec 2011 00:16:25 +0000 (00:16 +0000)]
eh_tm.cc (free_any_cxa_exception): Use __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.
2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/eh_tm.cc (free_any_cxa_exception): Use
__GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.
From-SVN: r182512
Benjamin Kosnik [Mon, 19 Dec 2011 23:29:14 +0000 (23:29 +0000)]
search_n.cc: Disambiguate local variable.
2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/performance/25_algorithms/search_n.cc: Disambiguate
local variable.
From-SVN: r182510
Paolo Carlini [Mon, 19 Dec 2011 22:40:11 +0000 (22:40 +0000)]
re PR c++/51328 (ICE on invalid template parameter)
/cp
2011-12-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51328
* pt.c (convert_template_argument): Early error out and return
error_mark_node for invalid uses of destructors as types.
/testsuite
2011-12-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51328
* g++.dg/template/crash109.C: New.
From-SVN: r182508
Richard Sandiford [Mon, 19 Dec 2011 22:23:42 +0000 (22:23 +0000)]
Add a PR reference.
From-SVN: r182506
Jason Merrill [Mon, 19 Dec 2011 22:08:29 +0000 (17:08 -0500)]
re PR c++/51530 ([C++0x] internal compiler error: in unify, at cp/pt.c:16854)
PR c++/51530
* pt.c (unify): Handle NULLPTR_TYPE.
From-SVN: r182505
Richard Sandiford [Mon, 19 Dec 2011 22:05:28 +0000 (22:05 +0000)]
fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND optimization if the source register is already extended.
gcc/
* fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND
optimization if the source register is already extended.
From-SVN: r182504
Richard Sandiford [Mon, 19 Dec 2011 21:45:21 +0000 (21:45 +0000)]
mult-1.c: Require -O2.
gcc/testsuite/
* gcc.target/mips/mult-1.c: Require -O2.
From-SVN: r182502
Richard Sandiford [Mon, 19 Dec 2011 21:42:12 +0000 (21:42 +0000)]
ext-2.c: Add NOMIPS16.
gcc/testsuite/
* gcc.target/mips/ext-2.c: Add NOMIPS16.
From-SVN: r182501
Richard Sandiford [Mon, 19 Dec 2011 21:19:13 +0000 (21:19 +0000)]
lower-subreg.c (can_decompose_p): Check every word of a hard register.
gcc/
* lower-subreg.c (can_decompose_p): Check every word of a hard
register.
From-SVN: r182500
Jason Merrill [Mon, 19 Dec 2011 21:06:44 +0000 (16:06 -0500)]
re PR c++/51526 ([C++11][constexpr] constexpr delegating constructor should be accepted)
PR c++/51526
* semantics.c (build_data_member_initialization): Handle
delegating constructor.
(build_constexpr_constructor_member_initializers): Likewise.
From-SVN: r182499
Sandra Loosemore [Mon, 19 Dec 2011 20:29:21 +0000 (15:29 -0500)]
re PR rtl-optimization/50380 ([4.6 only] cc1 hangs eating 100% CPU)
2011-12-19 Sandra Loosemore <sandra@codesourcery.com>
Tom de Vries <tom@codesourcery.com>
PR rtl-opt/50380
gcc/
* cse.c (find_comparison_args): Detect fixed point and
bail early.
gcc/testsuite/
* gcc.c-torture/compile/pr50380.c: New testcase.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r182498
Tobias Burnus [Mon, 19 Dec 2011 20:18:18 +0000 (21:18 +0100)]
re PR fortran/51605 (internal compiler error gfc_trans_block_construct, at fortran/trans-stmt.c:984)
2011-12-19 Tobias Burnus <burnus@net-b.de>
PR fortran/51605
* parse.c (gfc_fixup_sibling_symbols): Regard FL_LABEL as
local symbol.
2011-12-19 Tobias Burnus <burnus@net-b.de>
PR fortran/51605
* gfortran.dg/block_10.f90: New.
From-SVN: r182497
Jason Merrill [Mon, 19 Dec 2011 20:10:49 +0000 (15:10 -0500)]
re PR c++/51553 (brace initialization and conversion operators)
PR c++/51553
* cp-tree.h (LOOKUP_LIST_INIT_CTOR): Rename from
LOOKUP_NO_COPY_CTOR_CONVERSION.
(add_list_candidates): Set it earlier.
(add_candidates): Don't check explicit on ctors when it's set.
(add_function_candidate): Check it even when LOOKUP_ONLYCONVERTING
is set.
From-SVN: r182496
Jason Merrill [Mon, 19 Dec 2011 20:10:37 +0000 (15:10 -0500)]
re PR c++/51553 (brace initialization and conversion operators)
PR c++/51553
* call.c (add_function_candidate): Allow conversions for the copy
parm in list-initialization unless the argument is an init-list.
From-SVN: r182495
Jason Merrill [Mon, 19 Dec 2011 20:10:25 +0000 (15:10 -0500)]
re PR c++/51228 (ICE with transparent union)
PR c++/51228
* c-common.c (handle_transparent_union_attribute): Check the first
field if the type is complete.
From-SVN: r182494
Aldy Hernandez [Mon, 19 Dec 2011 19:33:05 +0000 (19:33 +0000)]
Commit forgotten testcase that goes along with this PR.
PR middle-end/51411
* trans-mem.c (ipa_tm_create_version): Unset DECL_WEAK.
From-SVN: r182493
Aldy Hernandez [Mon, 19 Dec 2011 19:31:17 +0000 (19:31 +0000)]
re PR middle-end/51411 (ICE: in function_and_variable_visibility, at ipa.c:835 with -O -fgnu-tm and overriding virtual transaction_safe function)
PR middle-end/51411
* trans-mem.c (ipa_tm_create_version): Unset DECL_WEAK.
From-SVN: r182492
Eric Botcazou [Mon, 19 Dec 2011 19:17:10 +0000 (19:17 +0000)]
re PR tree-optimization/51580 (segfault during loop vectorization at -O3)
PR tree-optimization/51580
* gnat.dg/specs/loop_optimization1.ads: New test.
* gnat.dg/specs/loop_optimization1_pkg.ad[sb]: New helper.
From-SVN: r182491
Quentin Neill [Mon, 19 Dec 2011 17:57:32 +0000 (17:57 +0000)]
re PR target/48743 (-march=native mis-detects AMD K6-2+ / K6-3 as Athlon - compiled C fails with "illegal instruction")
2011-12-19 Quentin Neill <quentin.neill@amd.com>
2011-12-19 Quentin Neill <quentin.neill@amd.com>
PR target/48743
* config/i386/driver-i386.c (host_detect_local_cpu): Also check
family to distinguish PROCESSOR_ATHLON.
From-SVN: r182489
Richard Guenther [Mon, 19 Dec 2011 15:57:02 +0000 (15:57 +0000)]
re PR lto/51573 (ICE (segfault) in lto_varpool_encoder_encode_initializer_p)
2011-12-19 Richard Guenther <rguenther@suse.de>
PR lto/51573
* streamer-hooks.h (struct streamer_hooks): Add second
ref_p parameter to write_tree.
(stream_write_tree): Adjust.
(stream_write_tree_shallow_non_ref): New define.
* lto-streamer.h (lto_output_tree): Adjust.
* lto-streamer-out.c (lto_output_tree): Likewise.
* tree-streamer-out.c (streamer_write_chain): Only
force the immediate tree to be streamed as non-reference.
* gcc.dg/lto/
20111207-2_0.c: Adjust.
* g++.dg/lto/pr51573-1_0.C: New testcase.
From-SVN: r182487
Jakub Jelinek [Mon, 19 Dec 2011 15:38:06 +0000 (16:38 +0100)]
re PR c++/51619 ([c++0x] [4.6 Regression] ICE with array class member)
PR c++/51619
* semantics.c (cxx_eval_vec_init_1): If init is NULL for
multidimensional array, just set eltinit to NULL_TREE.
* g++.dg/cpp0x/pr51619.C: New test.
From-SVN: r182485
Tobias Burnus [Mon, 19 Dec 2011 15:30:23 +0000 (16:30 +0100)]
re PR fortran/51605 (internal compiler error gfc_trans_block_construct, at fortran/trans-stmt.c:984)
2011-12-19 Tobias Burnus <burnus@net-b.de>
PR fortran/51605
* match.c (gfc_match_select_type): Handle
scalar polymophic coarrays.
(select_type_set_tmp, ): Ditto; avoid segfault if !class_ok.
* primary.c (gfc_match_rvalue): Avoid segfault if !class_ok.
* resolve.c (resolve_select_type): Ditto.
(resolve_assoc_var): Fix setting the TARGET attribute for
polymorphic selectors which are pointers.
2011-12-19 Tobias Burnus <burnus@net-b.de>
PR fortran/51605
* gfortran.dg/select_type_25.f90: New.
From-SVN: r182484
Martin Jambor [Mon, 19 Dec 2011 14:33:18 +0000 (15:33 +0100)]
re PR tree-optimization/51583 (One more missing force_gimple_operand in SRA)
2011-12-19 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/51583
* tree-sra.c (load_assign_lhs_subreplacements): Call
force_gimple_operand_gsi when necessary also in case of no
corresponding replacement on the RHS.
* testsuite/gcc.dg/tree-ssa/pr51583.c: New test.
From-SVN: r182483
Jakub Jelinek [Mon, 19 Dec 2011 14:25:28 +0000 (15:25 +0100)]
gimple.h (gimplify_seq_add_stmt): Rename to...
* gimple.h (gimplify_seq_add_stmt): Rename to...
(gimple_seq_add_stmt_without_update): ... this.
* gimplify.c (gimplify_seq_add_stmt): Rename to...
(gimple_seq_add_stmt_without_update): ... this.
(gimplify_seq_add_stmt): New inline wrapper for it.
* tree-vect-patterns.c (append_pattern_def_seq): Use
gimple_seq_add_stmt_without_update instead of gimplify_seq_add_stmt.
* cp-gimplify.c (gimplify_must_not_throw_expr): Use
gimple_seq_add_stmt_without_update instead of gimplify_seq_add_stmt.
From-SVN: r182482
Jakub Jelinek [Mon, 19 Dec 2011 14:24:29 +0000 (15:24 +0100)]
re PR tree-optimization/51596 (ICE: verify_flow_info failed: BB 6 can not throw but has an EH edge with -fnon-call-exceptions)
PR tree-optimization/51596
* tree-cfg.c (replace_uses_by): Call gimple_purge_dead_eh_edges
when needed.
* g++.dg/opt/pr51596.C: New test.
From-SVN: r182481
Jakub Jelinek [Mon, 19 Dec 2011 14:22:29 +0000 (15:22 +0100)]
re PR middle-end/51590 (ICE in gsi_for_stmt, at gimple-iterator.c:560)
PR middle-end/51590
PR tree-optimization/51606
* tree-vect-patterns.c (append_pattern_def_seq, new_pattern_def_seq):
New inline functions.
(vect_recog_over_widening_pattern,
vect_recog_vector_vector_shift_pattern,
vect_recog_sdivmod_pow2_pattern, vect_recog_mixed_size_cond_pattern,
adjust_bool_pattern_cast, vect_recog_bool_pattern): Use them.
* gcc.dg/vect/pr51590.c: New test.
From-SVN: r182480
Richard Guenther [Mon, 19 Dec 2011 13:37:06 +0000 (13:37 +0000)]
re PR bootstrap/51572 (LTO bootstrap failed with bootstrap-profiled)
2011-12-19 Richard Guenther <rguenther@suse.de>
PR lto/51572
* tree.c (free_lang_data_in_type): Do not unlink TYPE_DECL
from TYPE_FIELDS.
(find_decls_types_r): Walk TYPE_DECLs in TYPE_FIELDS.
* tree-streamer-out.c (write_ts_field_decl_tree_pointers): Do
not stream TREE_CHAIN.
(write_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
using streamer_write_chain.
* tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers):
Do not stream TREE_CHAIN.
(lto_input_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
using streamer_read_chain.
* gimple-streamer-in.c (input_gimple_stmt): Skip non-FIELD_DECLs.
* gimple.c (gimple_canonical_types_compatible_p): Properly
handle trailing non-FIELD_DECLs in TYPE_FIELDS.
* g++.dg/lto/pr51572-2_0.C: New testcase.
From-SVN: r182479
Andreas Schwab [Mon, 19 Dec 2011 13:12:26 +0000 (13:12 +0000)]
Check for warning flags without no- prefix
config/:
PR bootstrap/51388
* warnings.m4 (ACX_PROG_CC_WARNING_OPTS)
(ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Run the test without the
no- prefix.
fixincludes/:
* configure: Regenerate.
gcc/:
* configure: Regenerate.
libcpp/:
* configure: Regenerate.
libdecnumber/:
* configure: Regenerate.
libiberty/:
* configure: Regenerate.
lto-plugin/:
* configure: Regenerate.
From-SVN: r182478
Bernd Schmidt [Mon, 19 Dec 2011 12:39:34 +0000 (12:39 +0000)]
emit-rtl.c (init_emit_once): Initialize const_tiny_rtx[3] for partial integer modes.
* emit-rtl.c (init_emit_once): Initialize const_tiny_rtx[3] for
partial integer modes.
From-SVN: r182477
Andreas Schwab [Mon, 19 Dec 2011 10:14:13 +0000 (10:14 +0000)]
re PR target/51532 (Invalid Code Generated for cpu32.)
PR target/51532
* config/m68k/m68k.h (FL_CAS, TARGET_CAS): Define.
* config/m68k/m68k.c (FL_FOR_isa_20): Add FL_CAS.
* config/m68k/sync.md: Use TARGET_CAS instead of (TARGET_68020 ||
TARGET_68040).
From-SVN: r182475
Dodji Seketeli [Mon, 19 Dec 2011 09:47:46 +0000 (09:47 +0000)]
PR c++/51477 - ICE with invalid NSDMI
gcc/cp/
PR c++/51477
* search.c (lookup_member): Get out early on invalid base type.
gcc/testsuite/
PR c++/51477
* g++.dg/cpp0x/nsdmi6.C: New test.
From-SVN: r182474
Tobias Burnus [Mon, 19 Dec 2011 08:15:47 +0000 (09:15 +0100)]
check.c (coarray_check): Add class ref if needed.
2011-12-19 Tobias Burnus <burnus@net-b.de>
* check.c (coarray_check): Add class ref if needed.
* resolve.c (resolve_fl_var_and_proc,
resolve_fl_derived0, resolve_symbol): Fix checking
for BT_CLASS.
2011-12-19 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_poly_3.f90: New.
* coarray/poly_run_1.f90: Enable some previously commented code.
From-SVN: r182471
Jason Merrill [Mon, 19 Dec 2011 05:57:52 +0000 (00:57 -0500)]
re PR c++/51489 (constexpr not working consistently)
PR c++/51489
* semantics.c (cxx_eval_outermost_constant_expr): Check for
conversion from pointer to integer here.
(cxx_eval_constant_expression) [NOP_EXPR]: Not here.
From-SVN: r182470
GCC Administrator [Mon, 19 Dec 2011 00:18:33 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182466
Paolo Carlini [Sun, 18 Dec 2011 23:39:11 +0000 (23:39 +0000)]
semantics.c (finish_compound_literal): Don't call check_narrowing if !(complain & tf_warning_or_error).
2011-12-18 Paolo Carlini <paolo.carlini@oracle.com>
* semantics.c (finish_compound_literal): Don't call check_narrowing
if !(complain & tf_warning_or_error).
From-SVN: r182462
Eric Botcazou [Sun, 18 Dec 2011 14:41:00 +0000 (14:41 +0000)]
decl.c (gnat_to_gnu_param): Add comment about double reference and DECL_POINTS_TO_READONLY_P.
* gcc-interface/decl.c (gnat_to_gnu_param): Add comment about double
reference and DECL_POINTS_TO_READONLY_P.
* gcc-interface/trans.c (Identifier_to_gnu) <by_ref>: Always set the
TREE_READONLY flag on the first dereference of a double dereference.
From-SVN: r182460
Eric Botcazou [Sun, 18 Dec 2011 09:58:37 +0000 (09:58 +0000)]
configure: Regenerate.
* configure: Regenerate.
config/
* acx.m4 (Test for GNAT): Update comment and add quotes in final test.
From-SVN: r182457
Anatoly Sokolov [Sun, 18 Dec 2011 09:19:51 +0000 (13:19 +0400)]
ia64.h (REG_OK_FOR_BASE_P, [...]): Remove macros.
* config/ia64/ia64.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
LEGITIMATE_ADDRESS_REG, LEGITIMATE_ADDRESS_DISP,
GO_IF_LEGITIMATE_ADDRESS): Remove macros.
* config/ia64/ia64.c (TARGET_LEGITIMATE_ADDRESS_P): Define.
(ia64_reg_ok_for_base_p, ia64_legitimate_address_reg,
ia64_legitimate_address_disp, ia64_legitimate_address_p): New
functions.
From-SVN: r182456
Hans-Peter Nilsson [Sun, 18 Dec 2011 08:30:22 +0000 (08:30 +0000)]
* gcc.dg/pr51491-2.c: Fix "cleanup-treee-dump" typo.
From-SVN: r182455
Jonathan Wakely [Sun, 18 Dec 2011 01:06:15 +0000 (01:06 +0000)]
iterators.xml: Replace "sect1" with "section".
* doc/xml/manual/iterators.xml: Replace "sect1" with "section".
* doc/xml/manual/algorithms.xml: Likewise.
* doc/html/manual/iterators.html: Likewise.
* doc/html/manual/algorithms.html: Likewise.
From-SVN: r182453
Jason Merrill [Sun, 18 Dec 2011 00:55:18 +0000 (19:55 -0500)]
re PR c++/51588 ([c++0x] [4.4/4.5/4.6/4.7 Regression] ICE using an enum as base class)
PR c++/51588
* parser.c (cp_parser_ptr_operator): Reject pointer to member of enum.
From-SVN: r182452
GCC Administrator [Sun, 18 Dec 2011 00:18:38 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182451
Richard Henderson [Sat, 17 Dec 2011 21:40:45 +0000 (13:40 -0800)]
Revert "fix" for PR bootstrap/51072
From-SVN: r182445
Jason Merrill [Sat, 17 Dec 2011 20:15:39 +0000 (15:15 -0500)]
re PR c++/51586 (ICE with invalid union)
PR c++/51586
* parser.c (cp_parser_check_class_key): Handle error_mark_node.
From-SVN: r182442
Jason Merrill [Sat, 17 Dec 2011 19:26:46 +0000 (14:26 -0500)]
re PR c++/51587 (ICE with struct vs. enum clash)
PR c++/51587
* decl.c (start_enum): Avoid using ENUM_UNDERLYING_TYPE on a
non-enum.
From-SVN: r182441
Jason Merrill [Sat, 17 Dec 2011 13:51:51 +0000 (08:51 -0500)]
re PR c++/51416 ([c++0x] [4.6/4.7 Regression] ICE with invalid use of auto)
PR c++/51416
* init.c (build_value_init_noctor): Check for incomplete type.
From-SVN: r182435
Tom de Vries [Sat, 17 Dec 2011 11:39:49 +0000 (11:39 +0000)]
re PR tree-optimization/51491 (ccp when converting from alloca should add a CLOBBER to right before __builtin_stack_restore)
2011-12-17 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/51491
* gcc.dg/pr51491.c: New test.
* gcc.dg/pr51491-2.c: Same.
From-SVN: r182433
Tom de Vries [Sat, 17 Dec 2011 11:39:43 +0000 (11:39 +0000)]
re PR tree-optimization/51491 (ccp when converting from alloca should add a CLOBBER to right before __builtin_stack_restore)
2011-12-17 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/51491
* tree-ssa-ccp.c (insert_clobber_before_stack_restore)
(gsi_prev_dom_bb_nondebug, insert_clobbers_for_var): New function.
(ccp_fold_stmt): Use insert_clobbers_for_var after a successful
fold_builtin_alloca_with_align.
(ccp_visit_stmt): Calculate and free dominator info.
From-SVN: r182432
Richard Sandiford [Sat, 17 Dec 2011 11:32:20 +0000 (11:32 +0000)]
config.host (mips*-sde-elf*, [...]): Add to tmake_file rather replacing it.
libgcc/
* config.host (mips*-sde-elf*, mipsisa64sr71k-*-elf*): Add to
tmake_file rather replacing it.
From-SVN: r182431
Jason Merrill [Sat, 17 Dec 2011 03:28:39 +0000 (22:28 -0500)]
re PR c++/51416 ([c++0x] [4.6/4.7 Regression] ICE with invalid use of auto)
PR c++/51416
* init.c (build_value_init_noctor): Check for incomplete type.
From-SVN: r182430
Kaz Kojima [Sat, 17 Dec 2011 03:19:40 +0000 (03:19 +0000)]
configure.tgt: Add sh* case.
* configure.tgt: Add sh* case.
* config/sh/target.h: New file.
* config/sh/sjlj.S: New file.
* config/linux/sh/futex_bits.h: New file.
From-SVN: r182429
GCC Administrator [Sat, 17 Dec 2011 00:19:05 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r182428
Richard Henderson [Sat, 17 Dec 2011 00:07:10 +0000 (16:07 -0800)]
re PR libitm/51072 (Build with --disable-bootstrap fails in libitm)
PR bootstrap/51072
* config-lang.in (target_libs): Include target-libitm.
From-SVN: r182424
Eric Botcazou [Fri, 16 Dec 2011 23:37:48 +0000 (23:37 +0000)]
sparc.md (UNSPEC_FRAME_BLOCKAGE): New constant.
* config/sparc/sparc.md (UNSPEC_FRAME_BLOCKAGE): New constant.
(frame_blockage): New expander.
(frame_blockage<P:mode>): New instruction.
* config/sparc/sparc.c (sparc_expand_prologue): When the sequence of
instructions establishing the frame isn't atomic, emit frame blockage.
From-SVN: r182420
Ian Lance Taylor [Fri, 16 Dec 2011 23:11:37 +0000 (23:11 +0000)]
re PR middle-end/51592 (ICE with -fnon-call-exceptions)
PR middle-end/51592
* gcc.dg/
20111216-1.c: New test.
From-SVN: r182419
Jason Merrill [Fri, 16 Dec 2011 22:34:49 +0000 (17:34 -0500)]
re PR c++/51461 ([c++0x] [4.7 Regression] ICE with invalid initialization of static data member)
PR c++/51461
* decl.c (check_static_variable_definition): Check COMPLETE_TYPE_P
before literal_type_p.
From-SVN: r182415
Jason Merrill [Fri, 16 Dec 2011 22:34:39 +0000 (17:34 -0500)]
re PR c++/51331 (bad code generated when explicitly calling auto-generated constructor of virtual base)
PR c++/51331
* class.c (convert_to_base_statically): Just call
build_simple_base_path.
(build_simple_base_path): Check field offset.
From-SVN: r182414
Jakub Jelinek [Fri, 16 Dec 2011 20:16:23 +0000 (21:16 +0100)]
re PR testsuite/50803 (FAIL: gcc.dg/ipa/inline-5.c scan-ipa-dump-times inline "Will be eliminated" 4)
PR testsuite/50803
* gcc.dg/ipa/inline-5.c: XFAIL for 32-bit hppa.
From-SVN: r182411
Kai Tietz [Fri, 16 Dec 2011 18:43:06 +0000 (19:43 +0100)]
re PR target/51135 (SIGSEGV during exception cleanup on win32)
PR libstdc++/51135
* libsupc++/unwind-cxx.h (__cxa_exception): Mark
exceptionDestructor by _GLIBCXX_CDTOR_CALLABI.
* libsupc++/eh_throw.cc (__cxa_throw): Mark destructor
function argument by _GLIBCXX_CDTOR_CALLABI.
* libsupc++/cxxabi.h (__cxa_throw): Likewise.
(_GLIBCXX_CDTOR_CALLABI): Add empty default
definition.
* config/os/mingw32-w64/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Define
for IA-32 target as __thiscall.
* config/os/mingw32/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Likewise.
From-SVN: r182410
Jakub Jelinek [Fri, 16 Dec 2011 16:36:49 +0000 (17:36 +0100)]
re PR tree-optimization/51575 (ICE: verify_gimple failed: statement marked for throw, but doesn't with -fnon-call-exceptions and placement new)
PR tree-optimization/51575
* g++.dg/opt/pr51575.C: New test.
From-SVN: r182409
Tristan Gingold [Fri, 16 Dec 2011 16:29:52 +0000 (16:29 +0000)]
vms.h (USE_TM_CLONE_REGISTRY): Define.
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/alpha/vms.h (USE_TM_CLONE_REGISTRY): Define.
From-SVN: r182408
Tristan Gingold [Fri, 16 Dec 2011 15:50:11 +0000 (15:50 +0000)]
alpha.c (alpha_use_linkage): Follow transparent alias.
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/alpha/alpha.c (alpha_use_linkage): Follow transparent alias.
(alpha_write_one_linkage): Use assemble_name to emit linkage name.
From-SVN: r182407
Tristan Gingold [Fri, 16 Dec 2011 15:33:18 +0000 (15:33 +0000)]
t-vms (vms.o, vms-c.o): Force output filename.
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/vms/t-vms (vms.o, vms-c.o): Force output filename.
From-SVN: r182406
Tristan Gingold [Fri, 16 Dec 2011 15:25:30 +0000 (15:25 +0000)]
vms.c (VMS_CRTL_GLOBAL): Define.
2011-12-16 Tristan Gingold <gingold@adacore.com>
* config/vms/vms.c (VMS_CRTL_GLOBAL): Define.
(vms_patch_builtins): Handle.
* config/vms/vms-crtlmap.map: Add an entry for environ.
From-SVN: r182405
Jakub Jelinek [Fri, 16 Dec 2011 15:21:48 +0000 (16:21 +0100)]
re PR tree-optimization/51557 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2244 with custom flags)
PR debug/51557
* sel-sched-ir.c (create_copy_of_insn_rtx): Copy all notes
other than REG_EQUAL, REG_EQUIV and REG_LABEL_OPERAND.
* gcc.dg/pr51557.c: New test.
From-SVN: r182404
Jakub Jelinek [Fri, 16 Dec 2011 15:20:35 +0000 (16:20 +0100)]
re PR tree-optimization/51576 (Bootstrap failure with go)
PR tree-optimization/51576
* tree-cfg.c (replace_uses_by): Call maybe_clean_or_replace_eh_stmt
even if fold_stmt didn't change anything.
From-SVN: r182403
Ian Lance Taylor [Fri, 16 Dec 2011 14:45:49 +0000 (14:45 +0000)]
os: Fix fileInfoFromStat for Solaris.
From Rainer Orth.
From-SVN: r182402
Richard Guenther [Fri, 16 Dec 2011 14:31:14 +0000 (14:31 +0000)]
re PR bootstrap/51572 (LTO bootstrap failed with bootstrap-profiled)
2011-12-16 Richard Guenther <rguenther@suse.de>
PR lto/51572
* dwarf2out.c (gen_type_die_with_usage): Use the context of
the TYPE_DECL as well if it is file-scope.
* gcc.dg/lto/pr51572-1_0.c: New testcase.
From-SVN: r182401
GCC Administrator [Fri, 16 Dec 2011 00:19:07 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r182398
Paolo Carlini [Thu, 15 Dec 2011 22:15:21 +0000 (22:15 +0000)]
re PR libstdc++/51558 (Declaration of unspecialized std::hash<_Tp>::operator()(_Tp) turns compile-time errors into link-time errors)
2011-12-15 Paolo Carlini <paolo.carlini@oracle.com>
Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/51558
* include/bits/functional_hash.h (struct hash): Add static_assert.
* src/compatibility-c++0x.cc: Adjust compatibility definitions.
* testsuite/23_containers/unordered_map/erase/51142.cc: Adjust.
* testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r182392
Jason Merrill [Thu, 15 Dec 2011 21:55:31 +0000 (16:55 -0500)]
re PR c++/51458 (Accepts invalid designated initializers)
PR c++/51458
* decl.c (has_designator_problem): New.
(reshape_init_r): Check for improper use of
designated initializers.
From-SVN: r182391
DJ Delorie [Thu, 15 Dec 2011 20:58:15 +0000 (15:58 -0500)]
rl78.md (return): Rename to rl78_return.
* config/rl78/rl78.md (return): Rename to rl78_return.
* config/rl78/rl78.c (rl78_expand_epilogue): Use new name.
(rl78_expand_eh_epilogue): Use new name.
(rl78_calculate_death_notes): Likewise.
From-SVN: r182390
Paul Thomas [Thu, 15 Dec 2011 20:51:19 +0000 (20:51 +0000)]
trans-expr.c (gfc_walk_function_expr): Detect elemental procedure components as well as elemental procedures.
2011-12-15 Paul Thomas <pault@gcc.gnu.org>
* trans-expr.c (gfc_walk_function_expr): Detect elemental
procedure components as well as elemental procedures.
* trans-array.c (gfc_conv_procedure_call): Ditto.
* trans-decl.c (gfc_trans_deferred_vars): Correct erroneous
break for class pointers to continue.
2011-12-15 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/class_array_3.f03: Remove explicit indexing of
A%disp() to use scalarizer.
* gfortran.dg/class_array_9.f03: New.
From-SVN: r182389
Jakub Jelinek [Thu, 15 Dec 2011 20:47:29 +0000 (21:47 +0100)]
tree-vectorizer.h (struct _stmt_vec_info): Remove pattern_def_stmt field, add pattern_def_seq.
* tree-vectorizer.h (struct _stmt_vec_info): Remove pattern_def_stmt
field, add pattern_def_seq.
(STMT_VINFO_PATTERN_DEF_STMT): Remove.
(STMT_VINFO_PATTERN_DEF_SEQ): Define.
(NUM_PATTERNS): Bump to 10.
* tree-vect-loop.c (vect_determine_vectorization_factor,
vect_transform_loop): Adjust for pattern def changing from a single
gimple stmt to gimple_seq.
* tree-vect-stmts.c (vect_analyze_stmt, new_stmt_vec_info,
free_stmt_vec_info): Likewise.
* tree-vect-patterns.c (vect_recog_over_widening_pattern,
vect_recog_vector_vector_shift_pattern,
vect_recog_mixed_size_cond_pattern, adjust_bool_pattern_cast,
adjust_bool_pattern, vect_mark_pattern_stmts): Likewise.
(vect_recog_sdivmod_pow2_pattern): New function.
(vect_vect_recog_func_ptrs): Add it.
* config/i386/sse.md (vcond<V_256:mode><VI_256:mode>,
vcond<V_128:mode><VI124_128:mode>, vcond<VI8F_128:mode>v2di):
Use general_operand instead of nonimmediate_operand for
operand 5 and no predicate for operands 1 and 2.
* config/i386/i386.c (ix86_expand_int_vcond): Optimize
x < 0 ? -1 : 0 and x < 0 ? 1 : 0 into vector arithmetic
resp. logical shift.
* gcc.dg/vect/vect-sdivmod-1.c: New test.
From-SVN: r182388
Jakub Jelinek [Thu, 15 Dec 2011 20:45:53 +0000 (21:45 +0100)]
re PR c++/51463 ([c++0x] [4.7 Regression] ICE declaring a member function virtual and static)
PR c++/51463
* decl.c (grokdeclarator): Set DECL_INITIAL of decl
to error_mark_node to disallow NSDMI if declspecs->storage_class
is sc_static.
* parser.c (cp_parser_late_parse_one_default_arg): Return early
if default_arg is error_mark_node.
* g++.dg/cpp0x/pr51463.C: New test.
From-SVN: r182387
Georg-Johann Lay [Thu, 15 Dec 2011 19:30:08 +0000 (19:30 +0000)]
avr-protos.h (print_operand): Remove.
* config/avr/avr-protos.h (print_operand): Remove.
(print_operand_address): Remove.
* config/avr/avr.h (PRINT_OPERAND): Remove.
(PRINT_OPERAND_ADDRESS): Remove.
(PRINT_OPERAND_PUNCT_VALID_P): Remove.
* config/avr/avr.c (TARGET_PRINT_OPERAND): New hook define.
(TARGET_PRINT_OPERAND_ADDRESS): New hook define.
(TARGET_PRINT_OPERAND_PUNCT_VALID_P): New hook define.
(print_operand_address): Rename to...
(avr_print_operand_address): ...this and make static.
(print_operand): Rename to...
(avr_print_operand): ...this and make static.
(avr_print_operand_punct_valid_p): New static function.
From-SVN: r182386
Benjamin Kosnik [Thu, 15 Dec 2011 19:02:51 +0000 (19:02 +0000)]
9780-2.cc: Add test for "C" locale, add sanity checks in case of grouping.
2011-12-15 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/22_locale/num_put/put/char/9780-2.cc: Add test for "C"
locale, add sanity checks in case of grouping.
From-SVN: r182385
Toon Moene [Thu, 15 Dec 2011 18:26:02 +0000 (18:26 +0000)]
re PR fortran/51310 (-finit-bla doesn't initialize *all* items of type bla to the requested constant.)
2011-12-15 Toon Moene <toon@moene.org>
PR fortran/51310
* resolve.c (build_default_init_expr): Allow non-allocatable,
non-compile-time-constant-shape arrays to have a default
initializer.
* invoke.texi: Delete the restriction on automatic arrays not
From-SVN: r182384
Andreas Tobler [Thu, 15 Dec 2011 17:52:02 +0000 (18:52 +0100)]
freebsd.h (TARGET_ASM_FILE_END): Define.
2011-12-15 Andreas Tobler <andreast@fgznet.ch>
* config/i386/freebsd.h (TARGET_ASM_FILE_END): Define.
From-SVN: r182382
Jakub Jelinek [Thu, 15 Dec 2011 17:29:25 +0000 (18:29 +0100)]
re PR c/51360 (spurious unused-but-set-variable warning for var used in OpenMP pragma)
PR c/51360
* c-parser.c (c_parser_omp_clause_num_threads,
c_parser_omp_clause_schedule): Call mark_exp_read.
* semantics.c (finish_omp_clauses): For OMP_CLAUSE_NUM_THREADS_EXPR
and OMP_CLAUSE_SCHEDULE_CHUNK_EXPR call mark_rvalue_use.
* c-c++-common/gomp/pr51360.c: New test.
* g++.dg/gomp/pr51360.C: New test.
From-SVN: r182381