- 26 Apr, 2017 2 commits
-
-
2017-04-26 Tom de Vries <tom@codesourcery.com> * gen_autofdo_event.py: Fix comment. From-SVN: r247274
Tom de Vries committed -
From-SVN: r247273
GCC Administrator committed
-
- 25 Apr, 2017 38 commits
-
-
From-SVN: r247269
Nathan Sidwell committed -
* Makefile.in (s-options): Invoke opt-gather.awk with LC_ALL=C in the environment. From-SVN: r247266
Jakub Jelinek committed -
PR target/70799 * config/i386/i386.c (dimode_scalar_to_vector_candidate_p): Handle ASHIFTRT. (dimode_scalar_chain::compute_convert_gain): Ditto. (dimode_scalar_chain::make_vector_copies): Ditto. (dimode_scalar_chain::convert_reg): Ditto. (dimode_scalar_chain::convert_insn): Ditto. * config/i386/sse.md (VI24_AVX512BW_1): Remove mode iterator. (VI248_AVX512BW_1): New mode iterator. (<mask_codefor>ashr<mode>3<mask_name>): Merge insn pattern with <mask_codefor>ashrv2di3<mask_name> insn using VI248_AVX512BW_1 mode iterator. testsuite/ChangeLog: PR target/70799 * gcc.target/i386/pr70799-5.c: New test. From-SVN: r247263
Uros Bizjak committed -
gcc/ChangeLog: PR tree-optimization/80497 * gimple-ssa-sprintf.c (get_int_range): Avoid assuming all integer constants are representable in HOST_WIDE_INT. (parse_directive): Ditto. gcc/testsuite/ChangeLog: PR tree-optimization/80497 * gcc.dg/tree-ssa/builtin-sprintf-warn-17.c: New test. From-SVN: r247262
Martin Sebor committed -
PR bootstrap/80486 - spurious -Walloc-size-larger-than and -Wstringop-overflow in dominance.c during profiledbootstrap gcc/ChangeLog: PR bootstrap/80486 * dominance.c (dom_info::m_n_basic_blocks): Change type to unsigned. (new_zero_array): Adjust signature. (dom_info::dom_init): Used unsigned rather that size_t. (dom_info::dom_info): Same. From-SVN: r247261
Martin Sebor committed -
PR target/77728 * config/arm/arm.c: Include gimple.h. (aapcs_layout_arg): Emit -Wpsabi note if arm_needs_doubleword_align returns negative, increment ncrn only if it returned positive. (arm_needs_doubleword_align): Return int instead of bool, ignore DECL_ALIGN of non-FIELD_DECL TYPE_FIELDS chain members, but if there is any such non-FIELD_DECL > PARM_BOUNDARY aligned decl, return -1 instead of false. (arm_function_arg): Emit -Wpsabi note if arm_needs_doubleword_align returns negative, increment nregs only if it returned positive. (arm_setup_incoming_varargs): Likewise. (arm_function_arg_boundary): Emit -Wpsabi note if arm_needs_doubleword_align returns negative, return DOUBLEWORD_ALIGNMENT only if it returned positive. testsuite/ * g++.dg/abi/pr77728-1.C: New test. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r247258
Ramana Radhakrishnan committed -
PR sanitizer/80349 * fold-const.c (fold_binary_loc) <case BIT_IOR_EXPR>: Convert arg0's first argument to type. * g++.dg/ubsan/pr80349-2.C: New test. From-SVN: r247257
Marek Polacek committed -
parser.c (cp_parser_elaborated_type_specifier): Add fix-it to diagnostic of invalid class/struct keyword after enum. * parser.c (cp_parser_elaborated_type_specifier): Add fix-it to diagnostic of invalid class/struct keyword after enum. * g++.dg/cpp0x/enum34.C: New test. From-SVN: r247254
Volker Reichelt committed -
* gnat_rm.texi, gnat_ugn.texi, doc/gnat_ugn/building_executable_programs_with_gnat.rst, doc/gnat_ugn/platform_specific_information.rst, doc/gnat_ugn/gnat_and_program_execution.rst, doc/gnat_ugn/gnat_utility_programs.rst, doc/gnat_ugn/the_gnat_compilation_model.rst, doc/gnat_rm/implementation_defined_attributes.rst, doc/gnat_rm/the_gnat_library.rst, doc/gnat_rm/implementation_defined_pragmas.rst, doc/gnat_rm/representation_clauses_and_pragmas.rst, doc/gnat_rm/implementation_of_specific_ada_features.rst, doc/gnat_rm/implementation_defined_aspects.rst, doc/gnat_rm/implementation_defined_characteristics.rst: Update documentation. From-SVN: r247253
Arnaud Charlet committed -
2017-04-25 Arnaud Charlet <charlet@adacore.com> * exp_ch4.adb (Expand_N_Case_Expression): Emit error message when generating C code on complex case expressions. 2017-04-25 Arnaud Charlet <charlet@adacore.com> * sem_prag.adb (Analyze_Pragma): Generate a warning instead of silently ignoring pragma Ada_xxx in Latest_Ada_Only mode. * directio.ads, ioexcept.ads, sequenio.ads, text_io.ads: Use Ada_2012 instead of Ada_2005 to be compatible with the above change. * bindgen.adb: Silence new warning on pragma Ada_95. 2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * checks.adb (Generate_Range_Check): Revert part of previous change. 2017-04-25 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Try_Container_Indexing): Handle properly a container indexing operation that appears as a an actual in a parameter association in a procedure call. 2017-04-25 Olivier Ramonat <ramonat@adacore.com> * prj-proc.adb, sem_util.adb, s-stposu.adb, sem_attr.adb, prj-conf.ads: Fix spelling mistakes. 2017-04-25 Bob Duff <duff@adacore.com> * types.ads, osint.adb, sinput-c.adb, sinput-d.adb, sinput-l.adb, * sinput-p.adb: Use regular fat pointers, with bounds checking, for source buffers. Fix misc obscure bugs. * sinput.ads, sinput.adb: Use regular fat pointers, with bounds checking, for source buffers. Modify representation clause for Source_File_Record as appropriate. Move Source_File_Index_Table from spec to body, because it is not used outside the body. Move Set_Source_File_Index_Table into the private part, because it is used only in the body and in children. Use trickery to modify the dope in the generic instantiation case. It's ugly, but not as ugly as the previous method. Fix documentation. Remove obsolete code. * fname-sf.adb, targparm.adb: Fix misc out-of-bounds indexing in source buffers. * fmap.adb: Avoid conversions from one string type to another. Remove a use of global name buffer. * osint.ads, sfn_scan.ads, sfn_scan.adb, sinput-c.ads: Comment fixes. From-SVN: r247252
Arnaud Charlet committed -
Context: there are currently two types of line number supported in dg-{error,warning,message,bogus} directives: absolute and relative. With an absolute line number, it's immediately clear what line number is meant, but when a line is added at the start of the file, the line number needs to be updated. With a relative line number, that problem is solved, but when relative line numbers become large, it becomes less clear what line it refers to, and when adding a line inbetween the directive using the relative line number and the line it refers to, the relative line number still needs to be updated. Add a directive dg-line with argument varname, that saves the line number of the directive in a variable varname, which can be used as line number in dg directives. 2017-04-25 Tom de Vries <tom@codesourcery.com> * lib/gcc-dg.exp (cleanup-after-saved-dg-test): Cleanup line number variables. (dg-line): New proc. (process-message): Handle line number variables. * objc.dg/try-catch-12.m: Use dg-line. From-SVN: r247251
Tom de Vries committed -
PR target/80482 This patch changes the parameter testing for powerpc vector builtins to relax the existing requirement that the parameters be identical to instead that they be compatible. This allows for mixing parameters with differing qualified (const, volatile, etc.) types. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80482 for more information. Bootstrapped and tested on powerpc64le-unknown-linux-gnu and powerpc64be-unknown-linux-gnu with no regressions. Is this ok for trunk? [gcc] 2017-04-25 Bill Seurer <seurer@linux.vnet.ibm.com> PR target/80482 * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Change type checks to test for compatibility instead of equality. [gcc/testsuite] 2017-04-25 Bill Seurer <seurer@linux.vnet.ibm.com> PR target/80482 * gcc.target/powerpc/vec-constvolatile.c: New test. From-SVN: r247250
Bill Seurer committed -
gcc/cp/ChangeLog: * parser.c (cp_parser_member_declaration): Add fix-it hint for removing stray semicolons. gcc/testsuite/ChangeLog: * g++.dg/semicolon-fixits.C: New test case. From-SVN: r247244
David Malcolm committed -
gcc/c/ChangeLog: * c-parser.c (c_parser_struct_or_union_specifier): Add fix-it hint for removing extra semicolon. gcc/testsuite/ChangeLog: * gcc.dg/semicolon-fixits.c: New test case. From-SVN: r247243
David Malcolm committed -
2017-04-25 Gary Dismukes <dismukes@adacore.com> * exp_util.adb, exp_ch4.adb: Minor reformatting. 2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * checks.adb: Code clean up in various routines. (Generate_Range_Check): Do not generate a range check when the expander is not active or when index/range checks are suppressed on the target type. (Insert_List_After_And_Analyze, Insert_List_Before_And_Analyze): Remove variants that include a Supress parameter. These routines are never used, and were introduced before the current scope-based check suppression method. 2017-04-25 Vasiliy Fofanov <fofanov@adacore.com> * prj-part.adb, cstreams.c, osint.adb, osint.ads: Remove VMS specific code and some subprogram calls that are now noop. From-SVN: r247242
Arnaud Charlet committed -
gcc/cp/ChangeLog: * name-lookup.c (get_std_name_hint): New function. (maybe_suggest_missing_header): New function. (suggest_alternative_in_explicit_scope): Call maybe_suggest_missing_header. gcc/testsuite/ChangeLog: * g++.dg/lookup/missing-std-include.C: New test file. From-SVN: r247240
David Malcolm committed -
PR target/77728 * config/aarch64/aarch64.c (struct aarch64_fn_arg_alignment): New type. (aarch64_function_arg_alignment): Return aarch64_fn_arg_alignment struct. Ignore DECL_ALIGN of decls other than FIELD_DECL for the alignment computation, but return their maximum in warn_alignment. (aarch64_layout_arg): Adjust aarch64_function_arg_alignment caller. Emit a -Wpsabi note if warn_alignment is 16 bytes, but alignment is smaller. (aarch64_function_arg_boundary): Likewise. Simplify using MIN/MAX. (aarch64_gimplify_va_arg_expr): Adjust aarch64_function_arg_alignment caller. testsuite/ * g++.dg/abi/pr77728-2.C: New test. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r247239
Ramana Radhakrishnan committed -
From-SVN: r247238
Arnaud Charlet committed -
exp_ch4.adb (Expand_N_Case_Expression): Take Minimize_Expression_With_Actions into account when possible. 2017-04-25 Arnaud Charlet <charlet@adacore.com> * exp_ch4.adb (Expand_N_Case_Expression): Take Minimize_Expression_With_Actions into account when possible. From-SVN: r247237
Arnaud Charlet committed -
2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb (Known_Non_Null): Moved to Sem_Util. (Known_Null): Moved to Sem_Util. * exp_util.ads (Known_Non_Null): Moved to Sem_Util. (Known_Null): Moved to Sem_Util. * sem_util.adb Add new enumeration type Null_Status_Kind. (Known_Non_Null): Moved from Exp_Util. Most of the logic in this routine is now carried out by Null_Status. (Known_Null): Moved from Exp_Util. Most of the logic in this routine is now carried out by Null_Status. (Null_Status): New routine. * sem_util.ads (Known_Non_Null): Moved from Exp_Util. (Known_Null): Moved from Exp_Util. 2017-04-25 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Expression_Function): Do not report an error on the return type of an expression function that is a completion, if the type is derived from a generic formal type. 2017-04-25 Ed Schonberg <schonberg@adacore.com> * sem_dim.adb (Dimensions_Of_Operand): The dimensions of a type conversion are those of the target type. 2017-04-25 Bob Duff <duff@adacore.com> * a-clrefi.adb: Minor cleanup. From-SVN: r247236
Arnaud Charlet committed -
2017-04-25 Gary Dismukes <dismukes@adacore.com> * exp_util.adb, exp_util.ads, types.ads: Minor reformatting. From-SVN: r247235
Gary Dismukes committed -
2017-04-25 Bob Duff <duff@adacore.com> * err_vars.ads, fmap.adb, fmap.ads, comperr.adb, fname-sf.adb, types.adb, types.ads, types.h, sinput-l.adb, targparm.adb, errout.adb, sinput.adb, sinput.ads, cstand.adb, scn.adb, scn.ads, gnatls.adb: Eliminate the vestigial Internal_Source_File and the Internal_Source buffer. This removes the incorrect call to "=" the customer noticed. Wrap remaining calls to "=" in Null_Source_Buffer_Ptr. We eventually need to eliminate them altogether. Or else get rid of zero-origin addressing. From-SVN: r247234
Bob Duff committed -
gcc/cp/ChangeLog: PR c++/80177 * name-lookup.c (suggest_alternative_in_explicit_scope): Convert candidate type of bm from tree to const char *. (consider_binding_level): Likewise. (lookup_name_fuzzy): Likewise, using this to merge the best result from the preprocessor into bm, rather than immediately returning, so that better matches from reserved words can "win". Guard the rejection of keywords that don't start decl-specifiers so it only happens for FUZZY_LOOKUP_TYPENAME. gcc/testsuite/ChangeLog: PR c++/80177 * g++.dg/spellcheck-pr80177.C: New test case. From-SVN: r247233
David Malcolm committed -
From-SVN: r247232
Arnaud Charlet committed -
2017-04-25 Claire Dross <dross@adacore.com> * exp_util.ads (Expression_Contains_Primitives_Calls_Of): New function used in GNATprove to know if an expression contains non-dispatching calls on primitives of a tagged type. 2017-04-25 Bob Duff <duff@adacore.com> * rtsfind.adb (Initialize): Initialize First_Implicit_With. Building the compiler with Normalize_Scalars and validity checking finds this being used as an uninitialized variable. From-SVN: r247231
Arnaud Charlet committed -
contracts.adb (Analyze_Entry_Or_Subprogram_Body_Contract): Add a warning about SPARK mode management. 2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * contracts.adb (Analyze_Entry_Or_Subprogram_Body_Contract): Add a warning about SPARK mode management. The routine now saves and restores both the mode and associated pragma. (Analyze_Entry_Or_Subprogram_Contract): Add a warning about SPARK mode management. The routine now saves and restores both the mode and associated pragma. (Analyze_Object_Contract): Add a warning about SPARK mode management. The routine now saves and restores both the mode and associated pragma. (Analyze_Package_Body_Contract): Add a warning about SPARK mode management. The routine now saves and restores both the mode and associated pragma. (Analyze_Package_Contract): Add a warning about SPARK mode management. The routine now saves and restores both the mode and associated pragma. (Analyze_Task_Contract): Add a warning about SPARK mode management. The routine now saves and restores both the mode and associated pragma. * expander.adb (Expand): Change the way the Ghost mode is saved and restored. * exp_ch3.adb (Freeze_Type): Change the way the Ghost mode is saved and restored. * exp_disp.adb (Make_DT): Change the way the Ghost mode is saved and restored. * exp_util.adb (Build_DIC_Procedure_Body): Change the way the Ghost mode is saved and restored. (Build_DIC_Procedure_Declaration): Change the way the Ghost mode is saved and restored. (Build_Invariant_Procedure_Body): Change the way the Ghost mode is saved and restored. (Build_Invariant_Procedure_Declaration): Change the way the Ghost mode is saved and restored. (Make_Predicate_Call): Change the way the Ghost mode is saved and restored. * freeze.adb (Freeze_Entity): Change the way the Ghost mode is saved and restored. * ghost.adb (Mark_And_Set_Ghost_Assignment): Remove parameter Mode and its assignment. (Mark_And_Set_Ghost_Body): Remove parameter Mode and its assignment. (Mark_And_Set_Ghost_Completion): Remove parameter Mode and its assignment. (Mark_And_Set_Ghost_Declaration): Remove parameter Mode and its assignment. (Mark_And_Set_Ghost_Instantiation): Remove parameter Mode and its assignment. (Mark_And_Set_Ghost_Procedure_Call): Remove parameter Mode and its assignment. (Set_Ghost_Mode): Remove parameter Mode and its assignment. * ghost.ads (Mark_And_Set_Ghost_Assignment): Remove parameter Mode and update the comment on usage. (Mark_And_Set_Ghost_Body): Remove parameter Mode and update the comment on usage. (Mark_And_Set_Ghost_Completion): Remove parameter Mode and update the comment on usage. (Mark_And_Set_Ghost_Declaration): Remove parameter Mode and update the comment on usage. (Mark_And_Set_Ghost_Instantiation): Remove parameter Mode and update the comment on usage. (Mark_And_Set_Ghost_Procedure_Call): Remove parameter Mode and update the comment on usage. (Set_Ghost_Mode): Remove parameter Mode and update the comment on usage. * lib.ads Remove obsolete fields SPARK_Mode_Pragma from various types. * lib-load.adb (Create_Dummy_Package_Unit): Remove the assignment of obsolete field SPARK_Mode_Pragma. (Load_Main_Source): Remove the assignment of obsolete field SPARK_Mode_Pragma. (Load_Unit): Remove the assignment of obsolete field SPARK_Mode_Pragma. * lib-writ.adb (Add_Preprocessing_Dependency): Remove the assignment of obsolete field SPARK_Mode_Pragma. (Ensure_System_Dependency): Remove the assignment of obsolete field SPARK_Mode_Pragma. * rtsfind.adb (Load_RTU): Add a warning about Ghost and SPARK mode management. Change the way Ghost and SPARK modes are saved and restored. * sem.adb (Analyze): Change the way the Ghost mode is saved and restored. * sem_ch3.adb (Analyze_Object_Declaration): Change the way the Ghost mode is saved and restored. (Process_Full_View): Change the way the Ghost mode is saved and restored. * sem_ch5.adb (Analyze_Assignment): Change the way the Ghost mode is saved and restored. * sem_ch6.adb (Analyze_Procedure_Call): Change the way the Ghost mode is saved and restored. (Analyze_Subprogram_Body_Helper): Change the way the Ghost mode is saved and restored. * sem_ch7.adb (Analyze_Package_Body_Helper): Change the way the Ghost mode is saved and restored. * sem_ch10.adb (Analyze_Subunit): Add a warning about SPARK mode management. Save the SPARK mode-related data prior to any changes to the scope stack and contexts. The mode is then reinstalled before the subunit is analyzed in order to restore the original view of the subunit. * sem_ch12.adb (Analyze_Package_Instantiation): Update the warning on region management. Change the way the Ghost and SPARK modes are saved and restored. (Inline_Instance_Body): Add a warning about SPARK mode management. Code clean up. (Analyze_Subprogram_Instantiation): Update the warning on region management. Change the way the Ghost and SPARK modes are saved and restored. (Instantiate_Package_Body): Update the warning on region management. Change the way the Ghost and SPARK modes are saved and restored. (Instantiate_Subprogram_Body): Update the warning on region management. Change the way the Ghost and SPARK modes are saved and restored. (Set_Instance_Env): Add a warning about SPARK mode management. Change the way SPARK mode is saved and restored. * sem_ch13.adb (Build_Predicate_Functions): Change the way the Ghost mode is saved and restored. (Build_Predicate_Function_Declaration): Change the way the Ghost mode is saved and restored. * sem_elab.adb (Check_Elab_Calls): Add a warning about SPARK mode management. Change the way SPARK mode is saved and restored. * sem_prag.adb (Analyze_Contract_Cases_In_Decl_Part): Change the way the Ghost mode is saved and restored. (Analyze_Initial_Condition_In_Decl_Part): Change the way the Ghost mode is saved and restored. (Analyze_Pragma): Change the way the Ghost mode is saved and restored. (Analyze_Pre_Post_Condition_In_Decl_Part): Change the way the Ghost mode is saved and restored. * sem_util.adb (Install_SPARK_Mode): New routine. (Restore_SPARK_Mode): New routine. (Save_SPARK_Mode_And_Set): Removed. (Set_SPARK_Mode): New routine. * sem_util.ads (Install_SPARK_Mode): New routine. (Restore_SPARK_Mode): New routine. (Save_SPARK_Mode_And_Set): Removed. (Set_SPARK_Mode): New routine. From-SVN: r247230
Hristian Kirtchev committed -
sem_util.adb, [...] (From_Nested_Package): New predicate to determine whether a type is declared in a local package that... 2017-04-25 Ed Schonberg <schonberg@adacore.com> * sem_util.adb, sem_util.ads (From_Nested_Package): New predicate to determine whether a type is declared in a local package that has not yet been frozen. * freeze.adb (Freeze_Before): Use new predicate to determine whether a local package must be installed on the scope stack in order to evaluate in the proper scope actions generated by aspect specifications, such as Predicate * sem_ch13.adb: Simplify code in Analyze_Aspects_At_Freeze_Point using new predicate. From-SVN: r247229
Ed Schonberg committed -
2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * sem_warn.adb (Warn_On_Constant_Valid_Condition): Do not consider comparisons between non- scalar expressions expressions because their values cannot be invalidated. * sem_warn.ads (Warn_On_Constant_Valid_Condition): Update the comment on usage. 2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * par_sco.adb: Minor reformatting. 2017-04-25 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Aspects_At_Freeze_Point): If entity is a type from an unfrozen local package, install package to complete the analysis of delayed aspects of the type. 2017-04-25 Tristan Gingold <gingold@adacore.com> * bingen.adb (System_Version_Control_Used): New variable. (Resolve_Binder_Options): Set the above variable. (Gen_Output_File_Ada): Conditionally call Gen_Versions. (Gen_Elab_Order): Emit blank line before. 2017-04-25 Justin Squirek <squirek@adacore.com> * sem_cat.adb (Validate_RT_RAT_Component): Added an extra check to ignore incomplete types. From-SVN: r247228
Arnaud Charlet committed -
2017-04-25 Thomas Quinot <quinot@adacore.com> * sem_prag.adb (Analyze_Pragma, case Pragma_Check): Remove bogus circuitry for the case where Name is Predicate. 2017-04-25 Thomas Quinot <quinot@adacore.com> * par_sco.adb(Traverse_Declarations_Or_Statements.Traverse_Aspects): Create SCOs for Predicate aspects in disabled state initially, to be enabled later on by... * sem_ch13.adb (Build_Predicate_Functions.Add_Predicates): Mark SCO for predicate as enabled. 2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * comperr.adb (Compiler_Abort): Remove now obsolete pair of pragmas Warnings Off / On. * namet.adb (Finalize): Remove now obsolete pair of pragmas Warnings Off / On. * output.adb: Remove now obsolete pair of pragmas Warnings Off / On. * sem_warn.adb (Warn_On_Constant_Valid_Condition): Do not consider comparisons between static expressions because their values cannot be invalidated. * urealp.adb (Tree_Read): Remove now obsolete pair of pragmas Warnings Off / On. (Tree_Write): Remove now obsolete pair of pragmas Warnings Off / On. * usage.adb Remove now obsolete pair of pragmas Warnings Off / On. 2017-04-25 Bob Duff <duff@adacore.com> * sem_elab.adb (In_Task_Activation): Trace internal calls in task bodies. From-SVN: r247227
Arnaud Charlet committed -
gcc/ 2017-04-25 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/simdext.md (dmpyh): Fix typo. From-SVN: r247226
Claudiu Zissulescu committed -
2017-04-25 Gary Dismukes <dismukes@adacore.com> * sem_prag.adb, sem_warn.adb, sem_eval.adb: Minor reformatting and typo fixes. From-SVN: r247225
Gary Dismukes committed -
2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * comperr.adb (Compiler_Abort): Add a pair of pragma Warnings On/Off to defend against a spurious warning in conditional compilation. * exp_ch4.adb (Rewrite_Comparison): Reimplemented. * namet.adb (Finalize): Add a pair of pragma Warnings On/Off to defend against a spurious warning in conditional compilation. * output.adb Add a pair of pragma Warnings On/Off to defend against a spurious warning in conditional compilation. * sem_eval.adb (Eval_Relational_Op): Major code clean up. (Fold_General_Op): New routine. (Fold_Static_Real_Op): New routine. (Test_Comparison): New routine. * sem_eval.ads (Test_Comparison): New routine. * sem_warn.adb (Is_Attribute_Constant_Comparison): New routine. (Warn_On_Constant_Valid_Condition): New routine. (Warn_On_Known_Condition): Use Is_Attribute_Constant_Comparison to detect a specific case. * sem_warn.adb (Warn_On_Constant_Valid_Condition): New routine. * urealp.adb (Tree_Read): Add a pair of pragma Warnings On/Off to defend against a spurious warning in conditional compilation. (Tree_Write): Add a pair of pragma Warnings On/Off to defend against a spurious warning in conditional compilation. * usage.adb Add a pair of pragma Warnings On/Off to defend against a spurious warning in conditional compilation. 2017-04-25 Arnaud Charlet <charlet@adacore.com> * sinfo.ads, sem_ch13.adb: Update comment. From-SVN: r247224
Arnaud Charlet committed -
From-SVN: r247223
Arnaud Charlet committed -
* c-common.c (c_type_hasher, type_hash_table): Remove. (c_common_get_alias_set): Remove unreachable code. * c-opts.c (c_common_post_options): Make sure cc1 takes only one file. From-SVN: r247222
Bernd Edlinger committed -
2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * sem_util.adb (Is_Post_State): A reference to a generic in out parameter is considered a change in the post-state of a subprogram. 2017-04-25 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Load_Parent_Of_Generic); When retrieving the declaration of a subprogram instance within its wrapper package, skip over null statements that may result from the rewriting of ignored pragmas. 2017-04-25 Ed Schonberg <schonberg@adacore.com> * exp_attr.adb (Expand_Attribute_Reference, case 'Read): If the type is an unchecked_union, replace the attribute with a Raise_Program_Error (rather than inserting such before the attribute reference) to handle properly the case where we are processing a component of a larger record, and we need to prevent further expansion for the unchecked union. (Expand_Attribute_Reference, case 'Write): If the type is an unchecked_union, check whether enclosing scope is a Write subprogram. Replace attribute with a Raise_Program_Error if the discriminants of the unchecked_union type have not default values because such a use is erroneous.. 2017-04-25 Tristan Gingold <gingold@adacore.com> * exp_ch9.adb (Expand_N_Task_Type_Declaration): Add relative_deadline to task record on edf profile. (Make_Initialize_Protection): Pass deadline_floor value on edf profile. (Make_Task_Create_Call): Pass relative_deadline value. * par-prag.adb (Prag): Handle Pragma_Deadline_Floor. * s-rident.ads (Profile_Name): Add GNAT_Ravenscar_EDF. (Profile_Info): Add info for GNAT_Ravenscar_EDF. * sem_prag.adb (Set_Ravenscar_Profile): Handle GNAT_Ravenscar_EDF (set scheduling policy). (Analyze_Pragma): Handle GNAT_Ravenscar_EDF profile and Deadline_Floor pragma. (Sig_Flags): Add choice for Pragma_Deadline_Floor. * snames.ads-tmpl (Name_Deadline_Floor, Name_Gnat_Ravenscar_EDF): New names. (Pragma_Deadline_Floor): New pragma. * targparm.adb (Get_Target_Parameters): Recognize GNAT_Ravenscar_EDF profile. From-SVN: r247221
Arnaud Charlet committed -
* gnatvsn.ads (Library_Version): Bump to 8. Update comment. From-SVN: r247220
Arnaud Charlet committed -
2017-04-25 Ed Schonberg <schonberg@adacore.com> * sem_aux.adb (Nearest_Ancestor): Use original node of type declaration to locate nearest ancestor, because derived type declarations for record types are rewritten as record declarations. * sem_ch13.adb (Add_Call): Use an unchecked conversion to handle properly derivations that are completions of private types. (Add_Predicates): If type is private, examine rep. items of full view, which may include inherited predicates. (Build_Predicate_Functions): Ditto. 2017-04-25 Javier Miranda <miranda@adacore.com> * sem_util.adb (New_Copy_Tree.Visit_Entity): Extend previous change to generate new entities for subtype declarations located in Expression_With_Action nodes. 2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * sem_elab.adb (Check_A_Call): Remove local variables Is_DIC_Proc and Issue_In_SPARK. Verify the need for Elaborate_All when SPARK elaboration checks are required. Update the checks for instances, variables, and calls to Default_Initial_Condition procedures. 2017-04-25 Ed Schonberg <schonberg@adacore.com> * aspects.ads, aspects.adb: Make the GNAT-specific pragma No_Inline into a boolean aspect, in analogy with the Ada aspect No_Return. From-SVN: r247219
Arnaud Charlet committed -
2017-04-25 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb, sem_ch13.adb, sem_ch6.adb: Minor reformatting. 2017-04-25 Bob Duff <duff@adacore.com> * sem_res.adb (Resolve_Actuals): Under -gnatd.q, reset Is_True_Constant for an array variable that is passed to a foreign function as an 'in' parameter. * debug.adb: Document -gnatd.q. From-SVN: r247218
Arnaud Charlet committed
-