- 04 Aug, 2014 21 commits
-
-
2014-08-04 Vincent Celier <celier@adacore.com> * prj-dect.adb (Parse_Case_Construction): It is no longer an error if the variable for a case construction is not typed, only if the variable value is not a single string. Call Parse_Choice_List and End_Case_Construction with the new parameter to indicate that the variable is typed. * prj-strt.adb (End_Case_Construction): Only check the labels if the variable is typed. If the variable is not typed, issue a warning when there is no "when others" allternative. (Parse_Choice_List): Manage the labels only if the variable is typed. * prj-strt.ads (End_Case_Construction): New Boolean parameter String_Type. (Parse_Choice_List): Ditto. 2014-08-04 Ed Schonberg <schonberg@adacore.com> * sem_ch5.adb: Additional fix to Check_Predicate_Use. 2014-08-04 Vincent Celier <celier@adacore.com> * projects.texi: Update documentation of case constructions with variables that are not typed. 2014-08-04 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Build_Class_Wide_Wrapper): If the operator carries an Eliminated pragma, indicate that the wrapper is also to be eliminated, to prevent spurious errors when using gnatelim on programs that include box-initialization of equality operators (consequence of AI05-071).. 2014-08-04 Robert Dewar <dewar@adacore.com> * checks.adb (Activate_Overflow_Check): Handle floating-point case correctly. * checks.ads (Activate_Overflow_Check): Clarify handling of floating-point cases. * exp_util.adb (Check_Float_Op_Overflow): Reset Do_Overflow_Check flag if we generate an explicit overflow check (for Check_Float_Overflow mode). From-SVN: r213550
Arnaud Charlet committed -
2014-08-04 Robert Dewar <dewar@adacore.com> * prj-proc.adb, prj-part.adb, prj-strt.adb, prj.adb, prj.ads, prj-attr.adb, prj-attr.ads: Minor reformatting. 2014-08-04 Yannick Moy <moy@adacore.com> * expander.adb (Expand): Always perform special expansion in GNATprove mode, even when doing pre-analysis. 2014-08-04 Thomas Quinot <quinot@adacore.com> * repinfo.adb (List_Scalar_Storage_Order): List bit order if not default. Also list bit order if SSO is specified. Do not assume that bit order is always equal to scalar storage order. 2014-08-04 Thomas Quinot <quinot@adacore.com> * freeze.adb (Set_SSO_From_Default): Do not set scalar storage order to reverse SSO for a type that has an explicit native Bit_Order. 2014-08-04 Doug Rupp <rupp@adacore.com> * cal.c: Macro check for VxWorks7. * init.c (getpid): Likewise. * mkdir.c (__gnat_mkdir): Likewise. * sysdep.c (__gnat_is_file_not_found_error): Likewise. 2014-08-04 Gary Dismukes <dismukes@adacore.com> * exp_ch3.adb (Expand_N_Object_Declaration): Inhibit generation of an invariant check in the case where No_Initialization is set, since the object is uninitialized. 2014-08-04 Thomas Quinot <quinot@adacore.com> * snames.ads-tmpl (Default_Scalar_Storage_Order): Now an attribute name, in addition to a pragma name. * snames.adb-tmpl (Get_Pragma_Id, Is_Configuration_Pragma_Name, Is_Pragma_Name): Adjust accordingly. * sem_attr.ads, sem_attr.adb, exp_attr.adb (Attribute_Default_Scalar_Storage_Order): Add handling of new attribute. * gnat_rm.texi: Document the above. From-SVN: r213549
Arnaud Charlet committed -
2014-08-04 Arnaud Charlet <charlet@adacore.com> * exp_util.adb (Check_Float_Op_Overflow): No-op in codepeer mode for now, to revert to previous behavior. * checks.adb: Revert previous change, no longer needed. 2014-08-04 Robert Dewar <dewar@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Don't set Check_Float_Overflow if Machine_Oveflows_On_Target is True. * sem_prag.adb (Analyze_Pragma, case Check_Float_Overflow): Don't set Check_Float_Overflow if Machine_Oveflows_On_Target is True. * switch-c.adb (Scan_Front_End_Switches): Don't set Check_Float_Overflow if Machine_Oveflows_On_Target is True. 2014-08-04 Vincent Celier <celier@adacore.com> * prj-attr.adb: Add new default indications for attributes Object_Dir, Exec_Dir, Source_Dirs and Target. (Attribute_Default_Of): New function (Initialize): Set the default for those attributes that have one specified. * prj-attr.ads (Attribute_Data): New component Default. * prj-proc.adb (Expression): Take into account the new defaults for attributes Object_Dir, Exec_Dir and Source_Dirs. * prj-strt.adb (Attribute_Reference): Set the default for the attribute. * prj-tree.ads, prj-tree.adb (Default_Of): New function. (Set_Default_Of): New procedure. * prj.adb (The_Dot_String): New global Name_Id variable, initialized in procedure Initialize. (Dot_String): New function (Initialize): Initialize The_Dot_String. (Reset): Create the string list Shared.Dot_String_List. * prj.ads (Attribute_Default_Value): New enumeration type. (Project_Qualifier): Change enumeration value Dry to Abstract_Project. (Dot_String): New function. (Shared_Project_Tree_Data): New string list component Dot_String_List. * projects.texi: Document new defaults for attribute Object_Dir, Exec_Dir and Source_Dirs. From-SVN: r213548
Arnaud Charlet committed -
2014-08-04 Robert Dewar <dewar@adacore.com> * sem_ch12.adb: Minor reformatting. 2014-08-04 Arnaud Charlet <charlet@adacore.com> * exp_util.adb, checks.adb (Check_Float_Op_Overflow): Add special expansion in CodePeer_Mode. (Selected_Range_Checks): Add handling of overflow checks in CodePeer_Mode. From-SVN: r213547
Arnaud Charlet committed -
2014-08-04 Robert Dewar <dewar@adacore.com> * exp_attr.adb (Expand_N_Attribute_Reference, case Pred): Remove special test for Float'First, no longer required. (Expand_N_Attribute_Reference, case Succ): Remove special test for Float'First, no longer required. * s-fatgen.adb (Pred): return infinity unchanged. (Succ): ditto. 2014-08-04 Claire Dross <dross@adacore.com> * sem_ch12.adb (Analyze_Associations): Defaults should only be used if there is no explicit match. * exp_util.adb (Get_First_Parent_With_Ext_Axioms_For_Entity): Also check for pragma external_axiomatization on generic units. From-SVN: r213546
Arnaud Charlet committed -
2014-08-04 Robert Dewar <dewar@adacore.com> * checks.adb (Activate_Overflow_Check): Remove Check_Float_Overflow processing. (Apply_Scalar_Range_Check): Ditto. (Generate_Range_Check): Ditto. * exp_ch4.adb (Expand_N_Op_Add): Add call to Check_Float_Op_Overflow. (Expand_N_Op_Divide): ditto. (Expand_N_Op_Multiply): ditto. (Expand_N_Op_Subtract): ditto. * exp_util.ads, exp_util.adb (Check_Float_Op_Overflow): New procedure. * sem_attr.adb (Analyze_Attribute, case Pred): Make sure Do_Range_Check is set for floating-point case in -gnatc or GNATprove mode. (Analyze_Attribute, case Succ): Make sure Do_Range_Check is set for floating-point case in -gnatc or GNATprove mode. * sem_res.adb (Resolve_Type_Conversion): Make sure Do_Range_Check flag is set for real to integer conversion in GNATprove or -gnatc mode. 2014-08-04 Gary Dismukes <dismukes@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Resolve the expression of an Import or Export aspect as type Boolean and require it to be static. Add ??? comment. Also, set the Is_Exported flag when appropriate. From-SVN: r213545
Arnaud Charlet committed -
From-SVN: r213544
Ganesh Gopalasubramanian committed -
2014-08-04 Tom de Vries <tom@codesourcery.com> * gcc.dg/cproj-fails-with-broken-glibc.c: Use xfail for broken glibc version instead of required-target. * lib/target-supports.exp (check_effective_target_not_glibc_2_11_or_earlier): Replace by ... (check_effective_target_glibc_2_11_or_earlier): ... this. * doc/sourcebuild.texi (glibc, glibc_2_12_or_later) (glibc_2_11_or_earlier): Document effective-target keywords. From-SVN: r213543
Tom de Vries committed -
2014-08-04 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor reformatting. * exp_attr.adb: Minor reformatting. From-SVN: r213541
Robert Dewar committed -
2014-08-04 Thomas Quinot <quinot@adacore.com> * s-fatgen.ads, s-fatgen.adb (S, P): New visible type declarations (Unaligned_Valid): Remove now unused subprogram. * exp_attr.adb (Expand_N_Attribute_Reference, case Attribute_Valid): If the prefix is in reverse SSO or potentially unaligned, copy it using a byte copy operation to a temporary variable. * einfo.adb: Minor comment fix. 2014-08-04 Hristian Kirtchev <kirtchev@adacore.com> * freeze.adb (Freeze_Entity): Do not freeze formal subprograms. From-SVN: r213540
Arnaud Charlet committed -
2014-08-04 Robert Dewar <dewar@adacore.com> * s-imgrea.adb (Image_Floating_Point): Don't add space before +Inf. * s-fatgen.adb (Pred): Handle Float'First. (Succ): Handle Float'Last. From-SVN: r213539
Robert Dewar committed -
2014-08-04 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Is_Potentially_Unevaluated): If the original node of a parent node in the tree is a short-circuit operation, the node is potentially unevaluated. 2014-08-04 Robert Dewar <dewar@adacore.com> * sem_res.adb (Resolve_Type_Conversion): Set Do_Range_Check on conversion from a real type to an integer type. From-SVN: r213538
Arnaud Charlet committed -
2014-08-04 Yannick Moy <moy@adacore.com> * sem_aggr.adb, sem_ch3.adb, sem_ch5.adb, sem_ch7.adb, sem_ch9.adb, sem_ch12.adb, sem_util.adb, sem_util.ads, sem_res.adb, sem_attr.adb, exp_ch6.adb, sem_ch4.adb, restrict.adb, restrict.ads, sem_ch6.adb, sem_ch8.adb, sem_ch11.adb: Update some subprogram names to refer to SPARK_05 instead of SPARK. 2014-08-04 Robert Dewar <dewar@adacore.com> * sem.ads: Minor reformatting. * sem_ch13.adb (Analyze_Aspect_External_Or_Link_Name): Minor reformatting. (Analyze_Aspect_Specifications, case Convention): Put External_Name before Link_Name when constructing pragma. From-SVN: r213537
Arnaud Charlet committed -
sem.adb, sem.ads (In_Default_Expr): Global flag that is set to True during analysis of a default component expression. 2014-08-04 Yannick Moy <moy@adacore.com> * sem.adb, sem.ads (In_Default_Expr): Global flag that is set to True during analysis of a default component expression. (Semantics): Save and restore In_Default_Expr around analysis. * sem_ch3.adb, sem_ch3.ads (Analyze_Component_Declaration): Call new wrapper Preanalyze_Default_Expression. (Preanalyze_Default_Expression): New wrapper on Preanalyze_Spec_Expression which sets and restores In_Default_Expr. * sem_res.adb (Resolve_Call): Mark calls inside default expressions as not inlined in GNATprove mode. From-SVN: r213536
Yannick Moy committed -
2014-08-04 Robert Dewar <dewar@adacore.com> * exp_ch4.adb: Minor reformatting. 2014-08-04 Olivier Hainque <hainque@adacore.com> * link.c: remove const on __gnat_objlist_file_supported for AIX 2014-08-04 Robert Dewar <dewar@adacore.com> * sem_util.ads: Minor addition of comment. 2014-08-04 Vincent Celier <celier@adacore.com> * prj-dect.adb (Check_Package_Allowed): Allow package IDE in all projects, including aggregate and aggregate library projects. 2014-08-04 Yannick Moy <moy@adacore.com> * back_end.adb (Call_Back_End): Do not call gigi in GNATprove mode. 2014-08-04 Robert Dewar <dewar@adacore.com> * sem_eval.adb (Test_In_Range): Always in range for Is_Known_Valid target type, where input type has smaller or equal size and does not have biased rep. 2014-08-04 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb (Eval_Attribute): Constrained is not treated as a static attribute, and the Static flag must not be set on it during resolution. It may be constant-folded during expansion, but if expansion is disabled it is not a static expression. From-SVN: r213535
Arnaud Charlet committed -
2014-08-04 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch8.adb (Build_Class_Wide_Wrapper): Mark the primitive as referenced once resolution has taken place. 2014-08-04 Gary Dismukes <dismukes@adacore.com> * exp_ch4.adb (Expand_N_Type_Conversion): Don't compare access levels in the case where the target type is the anonymous type of an access discriminant, since the level of such types is defined based on context. Add comment. From-SVN: r213534
Arnaud Charlet committed -
2014-08-04 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch8.adb (Build_Class_Wide_Wrapper): Handle various special cases related to equality. Remove the special processing for dispatching abstract subprograms as it is not needed. (Interpretation_Error): Add a specialized error message for predefined operators. (Is_Intrinsic_Equality): New routine. (Is_Suitable_Candidate): New routine. 2014-08-04 Gary Dismukes <dismukes@adacore.com> * checks.adb: Minor comment reformatting. 2014-08-04 Ed Schonberg <schonberg@adacore.com> * restrict.adb (Check_Restriction): For checked max_parameter restrictions reset Violated flag, so that subsequent violations are properly detected. 2014-08-04 Robert Dewar <dewar@adacore.com> * sem_ch3.adb (Check_Initialization): Fix bad test of GNATprove mode. (Process_Discriminants): Fix bad test of GNATprove mode 2014-08-04 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch12.adb (Instantiate_Formal_Subprogram): Move variable to their own section. Propagate the source location of a formal parameter to the corresponding formal of the subprogram renaming declaration. Code reformatting. From-SVN: r213533
Arnaud Charlet committed -
2014-08-04 Ed Schonberg <schonberg@adacore.com> * exp_aggr.adb (Expand_Array_Aggregate): Do not attempt expansion if error already detected. We may reach this point in spite of previous errors when compiling with -gnatq, to force all possible errors (this is the usual ACATS mode). 2014-08-04 Gary Dismukes <dismukes@adacore.com> * checks.adb (Generate_Range_Check): For the case of converting a base type with a larger range to a smaller target subtype, only use unchecked conversions of bounds in the range check followed by conversion in the case where both types are discrete. In other cases, convert to the target base type and save in a temporary followed by the range check. (Convert_And_Check_Range): New procedure factoring code to save conversion to a temporary followed by a range check (called two places in Generate_Range_Check). * exp_ch4.adb (Expand_N_Type_Conversion): Relax previous check-in, to generate range checks for conversions between any floating-point types rather than limiting it to matching base types. From-SVN: r213532
Arnaud Charlet committed -
From-SVN: r213531
Arnaud Charlet committed -
* gnat.dg/discr6.adb, gnat.dg/discr6_pkg.ads: Removed, no longer relevant. * gnat.dg/debug1.ads: Adjust. * gnat.dg/formal_type.ads: Fix error in test. From-SVN: r213530
Arnaud Charlet committed -
From-SVN: r213529
GCC Administrator committed
-
- 03 Aug, 2014 3 commits
-
-
* ipa-devirt.c (odr_type_warn_count): Add type. (possible_polymorphic_call_targets): Set it. (ipa_devirt): Use it. From-SVN: r213526
Jan Hubicka committed -
* c-common.c (check_case_value): Add location_t parameter. Use it. (c_add_case_label): Pass loc to check_case_value. * gcc.dg/case-bogus-1.c: New test. From-SVN: r213525
Marek Polacek committed -
From-SVN: r213523
GCC Administrator committed
-
- 02 Aug, 2014 9 commits
-
-
re PR c++/15339 ([DR217] Adding default arguments to function templates in redeclarations should be forbidden) 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/15339 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix. From-SVN: r213520
Paolo Carlini committed -
re PR c++/15339 ([DR217] Adding default arguments to function templates in redeclarations should be forbidden) /cp 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/15339 * decl.c (check_redeclaration_no_default_args): New. (duplicate_decls): Use it, handle default arguments in redeclarations of function templates. /testsuite 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/15339 * g++.dg/other/default9.C: New. * g++.dg/other/default10.C: Likewise. * g++.dg/other/default3.C: Remove xfail. From-SVN: r213519
Paolo Carlini committed -
* doc/invoke.texi (Wsuggest-final-types, Wsuggest-final-methods): Document. * ipa-devirt.c: Include hash-map.h (struct polymorphic_call_target_d): Add type_warning and decl_warning. (clear_speculation): Break out of ... (get_class_context): ... here; speed up handling obviously useless speculations. (odr_type_warn_count, decl_warn_count): New structures. (final_warning_record): New structure. (final_warning_records): New static variable. (possible_polymorphic_call_targets): Cleanup handling of speculative info; do not build speculation when user do not care; record info about warnings when asked for. (add_decl_warning): New function. (type_warning_cmp): New function. (decl_warning_cmp): New function. (ipa_devirt): Handle -Wsuggest-final-methods and -Wsuggest-final-types. (gate): Enable pass when warnings are requested. * common.opt (Wsuggest-final-types, Wsuggest-final-methods): New options. * g++.dg/warn/Wsuggest-final.C: New testcase. * g++.dg/ipa/devirt-34.C: Fix. From-SVN: r213518
Jan Hubicka committed -
gcc/c-family/ * cilk.c: Use hash_map instead of pointer_map. gcc/c/ * c-typeck.c: Use hash_map instead of pointer_map. gcc/cp/ * optimize.c, semantics.c: Use hash_map instead of pointer_map. gcc/ * hash-map.h (default_hashmap_traits::mark_key_deleted): Fix cast. (hash_map::remove): New method. (hash_map::traverse): New method. * cgraph.h, except.c, except.h, gimple-ssa-strength-reduction.c, ipa-utils.c, lto-cgraph.c, lto-streamer.h, omp-low.c, predict.c, tree-cfg.c, tree-cfgcleanup.c, tree-eh.c, tree-eh.h, tree-inline.c, tree-inline.h, tree-nested.c, tree-sra.c, tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-reassoc.c, tree-ssa-structalias.c, tree-ssa.c, tree-ssa.h, var-tracking.c: Use hash_map instead of pointer_map. From-SVN: r213517
Trevor Saunders committed -
This allows us to replace the usage of pointer_set outside of pointer_map with a nicer interface. gcc/ada/ * gcc-interface/trans.c: Use hash_set instead of pointer_set. gcc/c-family/ * c-gimplify.c: Use hash_set instead of pointer_set. gcc/c/ * c-decl.c: Use hash_set instead of pointer_set. gcc/cp/ * class.c, cp-gimplify.c, cp-tree.h, decl.c, decl2.c, error.c, method.c, name-lookup.c, pt.c, semantics.c, tree.c: Use hash_set instead of pointer_set. gcc/fortran/ * openmp.c, trans-decl.c: Use hash_set instead of pointer_set. gcc/ * hash-set.h: new File. * cfgexpand.c, cfgloop.c, cgraph.c, cgraphbuild.c, cgraphunit.c, cprop.c, cse.c, gimple-walk.c, gimple-walk.h, gimplify.c, godump.c, ipa-devirt.c, ipa-pure-const.c, ipa-visibility.c, ipa.c, lto-cgraph.c, lto-streamer-out.c, stmt.c, tree-cfg.c, tree-core.h, tree-eh.c, tree-inline.c, tree-inline.h, tree-nested.c, tree-pretty-print.c, tree-ssa-loop-niter.c, tree-ssa-phiopt.c, tree-ssa-threadedge.c, tree-ssa-uninit.c, tree.c, tree.h, value-prof.c, varasm.c, varpool.c: Use hash_set instead of pointer_set. gcc/lto/ * lto-partition.c, lto-partition.h: Use hash_set instead of pointer_set. From-SVN: r213516
Trevor Saunders committed -
re PR c/59855 (Support sparse-style __attribute__((designated_init)) on structures, requiring designated initializers) PR c/59855 * gcc.dg/Wdesignated-init-2.c: New test. From-SVN: r213515
Marek Polacek committed -
PR other/61895 runtime: Ignore small argv[0] file for backtrace. Reportedly in some cases Docker starts processes with argv[0] pointing to an empty file. That would cause libgo to pass that empty file to libbacktrace, which would then fail to do any backtraces. Everything should work fine if libbacktrace falls back to /proc/self/exe. This patch to libgo works around the problem by ignoring argv[0] if it is a small file, or if stat fails. This is not a perfect fix but it's an unusual problem. From-SVN: r213513
Ian Lance Taylor committed -
PR c++/60417 * init.c (build_vec_init): Set CONSTRUCTOR_IS_DIRECT_INIT on init-list for trailing elements. * typeck2.c (process_init_constructor_array): Likewise. From-SVN: r213511
Jason Merrill committed -
From-SVN: r213510
GCC Administrator committed
-
- 01 Aug, 2014 7 commits
-
-
/cp 2014-08-01 Paolo Carlini <paolo.carlini@oracle.com> DR 217 again * decl.c (duplicate_decls): Handle static member functions too. /testsuite 2014-08-01 Paolo Carlini <paolo.carlini@oracle.com> DR 217 again * g++.dg/tc1/dr217-2.C: New. From-SVN: r213505
Paolo Carlini committed -
2014-08-01 Zifei Tong <zifeitong@gmail.com> * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add _GLIBCXX_ prefix to macro. From-SVN: r213504
Zifei Tong committed -
From-SVN: r213503
Arnaud Charlet committed -
gcc/cp/ * cp-array-notation.c (expand_an_in_modify_expr): Fix the misprint in error output. From-SVN: r213495
Igor Zamyatin committed -
re PR other/61963 (CilkPlus Array Notation ICE in build_array_notation_ref on malformed function arguments.) PR other/61963 gcc/cp/ * parser.c (cp_parser_array_notation): Added check for array_type. gcc/testsuite/ * c-c++-common/cilk-plus/AN/pr61963.c: New test. From-SVN: r213494
Igor Zamyatin committed -
PR middle-end/61455 gcc/c-family/ * array-notation-common.c (extract_array_notation_exprs): Handling of DECL_EXPR added. gcc/c/ * c-array-notation.c (expand_array_notations): Handling of DECL_EXPR added. gcc/cp/ * cp-array-notation.c (expand_array_notation_exprs): Handling of DECL_EXPR improved. Changed handling for INIT_EXPR. gcc/testsuite/ * c-c++-common/cilk-plus/AN/pr61455.c: New test. * c-c++-common/cilk-plus/AN/pr61455-2.c: Likewise. From-SVN: r213491
Igor Zamyatin committed -
* config/aarch64/aarch64-simd-builtins.def (dup_lane, get_lane): Delete. From-SVN: r213490
Alan Lawrence committed
-