* flag-types.h: New.
* Makefile.in (TH_H): Include $(OPTIONS_H) instead of $(FLAGS_H).
(FLAGS_H): Include flag-types.h. Include $(OPTIONS_H) instead of
options.h.
(OPTIONS_H): Define.
(c-family/c-opts.o, lto-opts.o, opts.o): Use $(OPTIONS_H) instead
of options.h.
* configure.ac (tm_include_list): Include options.h not flags.h.
* configure: Regenerate.
* flags.h: Include flag-types.h. Include options.h at top of file
again.
(enum debug_info_type, enum debug_info_level, enum
debug_info_usage, enum symbol_visibility, struct visibility_flags,
enum ira_algorithm, enum ira_region, enum excess_precision, enum
graph_dump_types, enum stack_check_type, enum
warn_strict_overflow_code): Move to flag-types.h
* opth-gen.awk: Include flag-types.h in options.h.
ada:
* gcc-interface/Make-lang.in (ada/misc.o): Use $(OPTIONS_H)
instead of options.h.
java:
* Make-lang.in (java/lang.o): Use $(OPTIONS_H) instead of
options.h.
From-SVN: r165362
2010-10-12 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Clarify that 'Old can be used in preconditions and
postcondition pragmas.
2010-10-12 Robert Dewar <dewar@adacore.com>
* errout.ads, erroutc.adb: The # insertion now handles from in place of
at.
* exp_prag.adb (Expand_Pragma_Check): Suppress generated default
message if new switch Exception_Locations_Suppressed is set.
(Expand_Pragma_Check): Revised wording for default message for case
of precondition or postcondition.
* namet.ads, namet.adb (Build_Location_String): New procedure.
* opt.ads (List_Inherited_Pre_Post): New flag.
* sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Add call to
list inherited pre/post aspects.
* sem_ch13.adb (Analyze_Aspect_Specification): Improve generation of
messages for precondition/postcondition cases.
* sem_ch6.adb (Process_PPCs): General cleanup, and list inherited PPC's
if flag List_Inherited_Pre_Post is set True.
(Process_PPCs): Add initial handling for inherited preconditions
(List_Inherited_Pre_Post_Aspects): New procedure
* sem_ch6.ads (List_Inherited_Pre_Post_Aspects): New procedure
* sem_disp.adb (Inherited_Subprograms): New function
* sem_disp.ads (Inherited_Subprograms): New function
* sem_prag.adb (Check_Duplicate_Pragma): Clean up handling of
pre/postcondition.
(Check_Precondition_Postcondition): Check for inherited aspects
* sem_warn.adb: Process -gnatw.l/w.L setting List_Inherited_Pre_Post
* sinfo.ads, sinfo.adb (Split_PPC): New flag.
* sinput.ads, sinput.adb (Build_Location_String): New function.
* usage.adb: Add line for -gnatw.l/-gnatw.L
2010-10-12 Javier Miranda <miranda@adacore.com>
* exp_util.adb (Remove_Side_Effects): Remove wrong code.
2010-10-12 Arnaud Charlet <charlet@adacore.com>
* xref_lib.adb: Add handling of j/J letters.
From-SVN: r165361
* expr.c (store_expr): Share code for STRING_CST and
MEM_REF of &STRING_CST cases. Don't require BLKmode, instead
check if target is a MEM.
From-SVN: r165360
2010-10-12 Pascal Obry <obry@adacore.com>
* adaint.c (__gnat_number_of_cpus): Add implementation for Windows.
2010-10-12 Arnaud Charlet <charlet@adacore.com>
* make.adb (Globalize): New procedure.
(Compile): Set Do_Codepeer_Globalize_Step when -gnatC is used.
(Gnatmake): Call Globalize when needed.
(Process_Restrictions_Or_Restriction_Warnings): Ignore Restrictions
pragmas in CodePeer mode.
(Adjust_Global_Switches): Set No_Initialize_Scalars in CodePeer mode,
to generate simpler and consistent code.
2010-10-12 Bob Duff <duff@adacore.com>
* exp_util.adb (Remove_Side_Effects): Disable previous change,
can cause side effects to be duplicated.
From-SVN: r165359
2010-10-12 Thomas Quinot <quinot@adacore.com>
* a-exetim.ads: Minor reformatting.
* g-socket.ads (Port_Type): Better definition corresponding to the
actual standard range.
* exp_ch5.adb: Add comment.
* sem_aux.adb: Minor reformatting.
2010-10-12 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Copy_Generic_Node): If node is a string literal, remove
string_literal_subtype so that a new one can be constructed in the
scope of the instance.
From-SVN: r165357
2010-10-12 Robert Dewar <dewar@adacore.com>
* exp_ch9.adb (Has_Pragma_Priority): New name for Has_Priority_Pragma
* gnat_rm.texi (pragma Suppress_All): Document new placement rules
* par-prag.adb (P_Pragma, case Suppress_All): Set
Has_Pragma_Suppress_All flag.
* sem_prag.adb (Has_Pragma_Priority): New name for Has_Priority_Pragma
(Analyze_Pragma, case Suppress_All): Remove placement check
(Process_Compilation_Unit_Pragmas): Use Has_Pragma_Suppress_All flag
* sem_prag.ads (Process_Compilation_Unit_Pragmas): Update documentation
* sinfo.adb (Has_Pragma_Suppress_All): New flag
(Has_Pragma_Priority): New name for Has_Priority_Pragma
* sinfo.ads (Has_Pragma_Suppress_All): New flag
(Has_Pragma_Priority): New name for Has_Priority_Pragma
2010-10-12 Arnaud Charlet <charlet@adacore.com>
* lib-xref.ads: Mark j/J as reserved for C++ classes.
2010-10-12 Jose Ruiz <ruiz@adacore.com>
* a-exetim-default.ads, a-exetim-posix.adb: New.
* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for linux): Use the
POSIX Realtime support to implement CPU clocks.
(EXTRA_GNATRTL_TASKING_OBJS for linux): Add the a-exetim.o object
to the tasking library.
(THREADSLIB): Make the POSIX.1b Realtime Extensions library (librt)
available for shared libraries.
* gcc-interface/Make-lang.in: Update dependencies.
2010-10-12 Robert Dewar <dewar@adacore.com>
* sem_ch13.adb (Analyze_Aspect_Specifications): For Pre/Post, break
apart expressions with AND THEN clauses into separate pragmas.
* sinput.ads, sinput.adab (Get_Logical_Line_Number_Img): New function.
From-SVN: r165356
2010-10-12 Robert Dewar <dewar@adacore.com>
* par-ch13.adb (P_Aspect_Specifications): Fix handling of 'Class aspects
* sem_ch13.adb (Analyze_Aspect_Specifications): Fix bad Sloc on aspects
* sem_prag.adb (Fix_Error): Only change pragma names for pragmas from
aspects.
(Check_Optional_Identifier): Handle case of direct arguments
(Chain_PPC): Test for abstract case, giving appropriate messages
* sinfo.ads, sinfo.adb (Class_Present): Allowed on N_Pragma node
From-SVN: r165355
2010-10-12 Robert Dewar <dewar@adacore.com>
* par-endh.adb (Check_End): Don't swallow semicolon or aspects after
END RECORD.
* sem_attr.adb (Eval_Attribute): Code clean up.
2010-10-12 Robert Dewar <dewar@adacore.com>
* par-ch12.adb (P_Formal_Private_Type_Definition): Improve error
messages and recovery for case of out of order Abstract/Tagged/Private
keywords.
* par-ch3.adb (P_Type_Declaration): Improve error messages and recovery
for case of out of order Abstract/Tagged/Private keywords.
2010-10-12 Ed Schonberg <schonberg@adacore.com>
* inline.adb (Analyze_Inlined_Bodies): Restrict previous change to case
where child unit is main unit of compilation.
From-SVN: r165354
2010-10-12 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb (Move_Aspects): New procedure.
* atree.ads, atree.adb: (New_Copy): Does not copy aspect specifications
* sinfo.ads, par-ch3.adb, par-ch6.adb, par-ch7.adb, par-ch9.adb,
par-endh.adb, par-ch13.adb, par-ch12.adb: Modify grammar to include
aspect specifications.
Recognize aspect specifications for all cases
* par.adb: Recognize aspect specifications for all cases
* sem_ch12.ads, sem_ch12.adb (Copy_Generic_Node): Copies aspect
specifications.
* sem_ch3.adb (Analyze_Subtype_Declaration): Improve patch to freeze
generic actual types (was missing some guards before).
* sem_ch9.adb (Analyze_Single_Protected_Declaration): Copy aspects to
generated object
(Analyze_Single_Task_Declaration): Copy aspects to generated object
2010-10-12 Eric Botcazou <ebotcazou@adacore.com>
* usage.adb (usage): Adjust line for -gnatn switch.
2010-10-12 Robert Dewar <dewar@adacore.com>
* sem_attr.adb (Eval_Attribute): Only leave change active for aspect
spec case.
2010-10-12 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Declaration): If this is a
declaration of a null procedure resolve the types of the profile of the
generated null body now.
From-SVN: r165353
gcc/:
PR testsuite/45974
Revert:
* Makefile.in ($(lang_checks_parallel))
($(lang_checks_parallelized)): Use single quotes for
$(RUNTESTFLAGS), to allow passing quoted content.
From-SVN: r165350
* config/i386/i386.md (movmem<mode>): Macroize expander from
movmem{si,di} using SWI48 mode iterator.
(*strmovsi_1): Macroize insn pattern from *strmovsi_1 and
*strmovsi_rex_1 using P mode iterator.
(*strmovhi_1): Ditto from *strmovhi_1 and *strmovhi_rex_1.
(*strmovqi_1): Ditto from *strmovqi_1 and *strmovqi_rex_1.
(*rep_movsi): Ditto from *rep_movsi and *rep_movsi_rex64.
(*rep_movqi): Ditto from *rep_movqi and *rep_movqi_rex64.
(setmem<mode>): Macroize expander from setmem{si,di} using
SWI48 mode iterator.
(*strsetsi_1): Macroize insn pattern from *strsetsi_1 and
*strsetsi_rex_1 using P mode iterator.
(*strsethi_1): Ditto from *strsethi_1 and *strsethi_rex_1.
(*strsetqi_1): Ditto from *strsetqi_1 and *strsetqi_rex_1.
(*rep_stossi): Ditto from *rep_stossi and *rep_stossi_rex64.
(*rep_stosqi): Ditto from *rep_stosqi and *rep_stosqi_rex64.
(*cmpstrnqi_nz_1): Ditto from *cmpstrnqi_nz_1 and *cmpstrnqi_nz_rex_1.
(*cmpstrnqi_1): Ditto from *cmpstrnqi_1 and *cmpstrnqi_rex_1.
(strlen<mode>): Macroize expander from strlen{si,di} using SWI48x
mode iterator.
(*strlenqi_1): Macroize insn pattern from *strlenqi_1 and
*strlenqi_rex_1 using P mode iterator.
From-SVN: r165331
PR bootstrap/45445
* ira-lives.c (mark_pseudo_reg_live, mark_pseudo_reg_dead): New
static functions.
(mark_ref_live, mark_ref_dead): Use them.
(make_pseudo_conflict): New arg ORIG_DREG. All callers changed.
Save the original reg, and use the new functions.
(check_and_make_def_use_conflict): New arg ORIG_DREG. All callers
changed.
(check_and_make_def_conflict): Save the original reg.
From-SVN: r165329
gcc/:
* Makefile.in ($(lang_checks_parallel))
($(lang_checks_parallelized)): Use single quotes for
$(RUNTESTFLAGS), to allow passing quoted content.
From-SVN: r165323
2010-10-11 Robert Dewar <dewar@adacore.com>
* debug.adb: Remove d.A flag to delay address clause (not needed any
more). Add d.A flag to enable tree read/write of aspect spec hash table
* sem_ch13.adb (Analyze_Aspect_Specifications): Properly delay address
clause.
(Rep_Item_Too_Late): No need for special processing for delayed rep
items (and it caused difficulties in the address case).
* tree_gen.adb: Only write aspect spec hash table if -gnatd.A is set
* tree_in.adb: Only write aspect spec hash table if -gnatd.A is set
2010-10-11 Pat Rogers <rogers@adacore.com>
* gnat_ugn.texi: Minor editing.
From-SVN: r165316
* tree.h (TREE_THIS_NOTRAP): Use TREE_CHECK5.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Only check
TREE_THIS_NOTRAP when appropriate.
(get_spill_slot_decl): Don't set TREE_THIS_NOTRAP on the new
VAR_DECL.
* gimplify.c (gimplify_expr): Copy NOTRAP from INDIRECT_REF to
newly created MEM_REF.
From-SVN: r165313
I'm checking in a fix as obvious for this typo in the earlier checksum
change.
gcc/objcp
2010-10-11 Andi Kleen <ak@linux.intel.com>
* Make-lang.in (cc1objplus-checksum.c): Use correct temporary
name.
From-SVN: r165309
* pt.c (tsubst_default_argument): Handle DEFAULT_ARG.
(tsubst_default_arguments): Only do this once for cloned fns.
(tsubst): Use typedef_variant_p. Handle LANG_TYPE. Don't
handle expressions.
(tsubst_expr): Avoid calling tsubst_expr for non-expressions.
(tsubst_copy_and_build): Likewise.
(tsubst_initializer_list): Likewise.
(tsubst_copy): Change default to gcc_unreachable. Handle
OVERLOAD and PTRMEM_CST.
From-SVN: r165307
PR tree-optimization/45902
* tree-vect-slp.c (vect_get_constant_vectors): Use statement's
vector type for constants, unless it's a pointer.
From-SVN: r165302