- 12 Dec, 2019 23 commits
-
-
2019-12-12 Eric Botcazou <ebotcazou@adacore.com> gcc/ada/ * exp_attr.adb (Expand_Size_Attribute): Look directly at the prefix to detect the bit-packed slices. Apply the checks last in case the attribute needs to be processed by the back-end. * exp_ch4.adb (Expand_N_Slice): Do not create a temporary for a prefix of the Size attribute. From-SVN: r279293
Eric Botcazou committed -
2019-12-12 Steve Baird <baird@adacore.com> gcc/ada/ * sem_ch12.adb (Instantiate_Type.Validate_Derived_Type_Instance): Implement the legality check of AI12-0036 From-SVN: r279292
Steve Baird committed -
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_ch10.adb (Analyze_Subunit): Fix spurious visibility error on subunit with optimization. From-SVN: r279291
Ed Schonberg committed -
2019-12-12 Arnaud Charlet <charlet@adacore.com> gcc/ada/ * raise-gcc.c (__gnat_personality_v0): Define for SEH. From-SVN: r279290
Arnaud Charlet committed -
2019-12-12 Gary Dismukes <dismukes@adacore.com> gcc/ada/ * exp_ch9.adb (Build_Protected_Entry): Analyze the block created to hold the declarations and statements of the protected entry body right after it's created, and then call Reset_Scopes_To on that block to reset the Scope of nested entities to the block scope. (Reset_Scope): Add handling for N_Freeze_Entity nodes, calling Reset_Scopes recursively on the Actions of such nodes. Also, for subprogram bodies that are encountered that might not have a separate declaration (such as type init procedures), reset the Scope of the subprogram's entity. From-SVN: r279289
Gary Dismukes committed -
2019-12-12 Justin Squirek <squirek@adacore.com> gcc/ada/ * sem_attr.adb (Analyze_Attribute): Add error message for invalid usage of Attribute_Result. From-SVN: r279288
Justin Squirek committed -
2019-12-12 Bob Duff <duff@adacore.com> gcc/ada/ * sem_attr.adb (Eval_Attribute): Never mark T'Descriptor_Size as static, even if T is a static subtype, because otherwise we will request the value of the attribute, which will crash because we have not evaluated it. From-SVN: r279287
Bob Duff committed -
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * exp_ch5.adb (Expand_N_Assognment_Statement): Extend the processing involving private types with unknown discriminants to handle the case where the full view of the type is an unconstrained array type. From-SVN: r279286
Ed Schonberg committed -
2019-12-12 Bob Duff <duff@adacore.com> gcc/ada/ * sem_ch4.adb (Transform_Object_Operation): Deal properly with prefix notation in instances. From-SVN: r279285
Bob Duff committed -
2019-12-12 Claire Dross <dross@adacore.com> gcc/ada/ * libgnat/a-cofove.adb, libgnat/a-cfinve.adb (Find_Index): Use Extended_Index for call to Last. From-SVN: r279284
Claire Dross committed -
2019-12-12 Gary Dismukes <dismukes@adacore.com> gcc/ada/ * sem_ch3.adb, sem_util.adb: Minor reformatting. From-SVN: r279283
Gary Dismukes committed -
2019-12-12 Bob Duff <duff@adacore.com> gcc/ada/ * doc/gnat_ugn/gnat_utility_programs.rst: Update gnatmetric documentation for average lengths From-SVN: r279282
Bob Duff committed -
2019-12-12 Ed Schonberg <schonberg@adacore.com> gcc/ada/ * sem_ch3.adb (Constrain_Access): Remove obsolete comments and warning concerning component types of an access type whose designated type is a constrained record type. (Such constraints were previously ignored). Set scope of itype for component to the scope of the enclosing record. * sem_ch4.adb: Remove call to Set_Ekind. * sem_util.adb (Build_Actual_Subtype_Of_Component): Handle components whose type is an access to a constrained discriminant, where the constraints may be given by the discriminants of the enclosing type. New subprogram Build_Access_Record_Constraint. gcc/testsuite/ * gnat.dg/warn24.adb: Remove expected warning. From-SVN: r279281
Ed Schonberg committed -
2019-12-12 Justin Squirek <squirek@adacore.com> gcc/ada/ * exp_ch6.adb (Expand_Call_Helper): Added null case for 'Loop_Entry, 'Old, and 'Result when calculating whether to create extra accessibility parameters. * sem_util.adb (Dynamic_Accessibility_Level): Added null case for 'Loop_Entry, 'Old, and 'Result when calculating accessibility level based on access-valued attributes. Also added special handling for uses of 'Loop_Entry when used in its indexed component form. From-SVN: r279280
Justin Squirek committed -
2019-12-12 Arnaud Charlet <charlet@adacore.com> gcc/ada/ * raise-gcc.c: Remove references to VMS From-SVN: r279279
Arnaud Charlet committed -
2019-12-12 Eric Botcazou <ebotcazou@adacore.com> gcc/ada/ * atree.ads, comperr.ads, debug.ads, einfo.ads, elists.ads, err_vars.ads, errout.ads, exp_ch11.ads, exp_code.ads, exp_dbug.ads, exp_tss.ads, exp_util.ads, lib.ads, namet.ads, nlists.ads, opt.ads, repinfo.ads, restrict.ads, scos.ads, sem_aggr.ads, sem_aux.ads, sem_eval.ads, sem_util.ads, sinfo.ads, sinput.ads, stringt.ads, targparm.ads, types.ads, urealp.ads warnsw.ads: Add WARNING line(s) in commentary. * atree.h, elists.h, namet.h, nlists.h, repinfo.h, scos.h, stringt.h, types.h, uintp.h, urealp.h: Tidy up. * fe.h: Likewise. Document WARNING mark. From-SVN: r279278
Eric Botcazou committed -
2019-12-12 Dmitriy Anisimkov <anisimko@adacore.com> gcc/ada/ * libgnat/g-comlin.ads (Get_Argument): New routine similar to original Get_Argument but with one more out parameter End_Of_Arguments. (Get_Arguments): Comment improved. * libgnat/g-comlin.adb (Get_Argument): Implementation taken from original Get_Argument and improved. (Get_Argument): Calls new routine Get_Argument with additional parameter. From-SVN: r279277
Dmitriy Anisimkov committed -
2019-12-12 Pierre-Marie de Rodat <derodat@adacore.com> gcc/testsuite/ * gnat.dg/subp_inst_pkg.adb: Remove implicit anonymous access conversion. From-SVN: r279276
Pierre-Marie de Rodat committed -
PR 92846: ARC gcc generates FDCMP instructions which raises Invalid operation for signaling NaN only. This causes glibc iseqsig() primitives to fail (in the current ongoing glibc port to ARC) So break up the hard float compares into tw categories and for unordered compares generate the FDCMPF instructions which raised exception for either NaNs. With this fix testsuite/gcc.dg/torture/pr52451.c passes for ARC. Also no regressions for the glibc math testsuite, only 6 additional passes for test*iseqsig gcc/ xxxx-xx-xx Vineet Gupta <vgupta@synopsys.com> * config/arc/arc-modes.def (CC_FPUE): New Mode CC_FPUE which helps codegen generate exceptions even for quiet NaN. * config/arc/arc.c (arc_init_reg_tables): Handle New CC_FPUE mode. (get_arc_condition_code): Likewise. (arc_select_cc_mode): LT, LE, GT, GE to use the New CC_FPUE mode. * config/arc/arc.h (REVERSE_CONDITION): Handle New CC_FPUE mode. * config/arc/predicates.md (proper_comparison_operator): Likewise. * config/arc/fpu.md (cmpsf_fpu_trap): New Pattern for CC_FPUE. (cmpdf_fpu_trap): Likewise. Signed-off-by: Vineet Gupta <vgupta@synopsys.com> From-SVN: r279274
Vineet Gupta committed -
Allow the compiler to use the double-precision compare instructions. xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.md (iterator SDF): Check TARGET_FP_DP_BASE. (cstoredi4): Use TARGET_HARD_FLOAT. From-SVN: r279273
Claudiu Zissulescu committed -
* include/tr1/cctype: Add _GLIBCXX_BEGIN_VERSION_NAMESPACE and _GLIBCXX_END_VERSION_NAMESPACE. * include/tr1/cfenv: Likewise. * include/tr1/cinttypes: Likewise. * include/tr1/cstdint: Likewise. * include/tr1/cstdio: Likewise. * include/tr1/cstdlib: Likewise. * include/tr1/cwchar: Likewise. * include/tr1/cwctype: Likewise. From-SVN: r279272
François Dumont committed -
* src/c++11/random.cc: Include <cctype>. (random_devise::_M_init_pretr1): Qualify isdigit call. From-SVN: r279271
François Dumont committed -
From-SVN: r279270
GCC Administrator committed
-
- 11 Dec, 2019 17 commits
-
-
opts.c (default_options_table): Move -ftree-loop-distribute-patterns entry from -O3 or later section to -O2 or... * opts.c (default_options_table): Move -ftree-loop-distribute-patterns entry from -O3 or later section to -O2 or later section. * doc/invoke.texi (-ftree-loop-distribute-patterns): Mention the option is enabled by default at -O2+ rather than just at -O3. From-SVN: r279267
Jakub Jelinek committed -
PR fortran/92899 * trans-openmp.c (gfc_trans_omp_atomic): For GFC_OMP_ATOMIC_SWAP, do look through conversion on expr2 if any. * testsuite/libgomp.fortran/atomic1.f90: New test. From-SVN: r279266
Jakub Jelinek committed -
PR target/92723 * tree-vect-patterns.c (vect_recog_rotate_pattern): If dt is not vect_internal_def, use oprnd1 as is, without trying to cast it. Formatting fix. * gcc.dg/vect/pr92723.c: New test. From-SVN: r279265
Jakub Jelinek committed -
2019-12-11 Matthias Klose <doko@ubuntu.com> * configure.ac: Factor out common cases for compare_exclusions. * configure: Regenerate. From-SVN: r279250
Matthias Klose committed -
gcc/ChangeLog: * builtins.c (compute_objsize): Add an argument and set it to offset into destination. * builtins.h (compute_objsize): Add an argument. * tree-object-size.c (addr_object_size): Add an argument and set it to offset into destination. (compute_builtin_object_size): Same. * tree-object-size.h (compute_builtin_object_size): Add an argument. * tree-ssa-strlen.c (get_addr_stridx): Add an argument and set it to offset into destination. (maybe_warn_overflow): New function. (handle_store): Call maybe_warn_overflow to issue warnings. gcc/testsuite/ChangeLog: * c-c++-common/Wstringop-overflow-2.c: Adjust text of expected messages. * g++.dg/warn/Wstringop-overflow-3.C: Same. * gcc.dg/Wstringop-overflow-17.c: Same. From-SVN: r279248
Martin Sebor committed -
2019-12-11 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/92897 * array.c (gfc_set_array_spec): Remove invalid assert() triggered by invalid Fortran code. 2019-12-11 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/92897 * gfortran.dg/pr92897.f90: New test. From-SVN: r279247
Steven G. Kargl committed -
ChangeLog: 2019-12-11 Jozef Lawrynowicz <jozef.l@mittosystems.com> * config-ml.in (msp430-*-*): Support --disable-no-exceptions configure flag. gcc/ChangeLog: 2019-12-11 Jozef Lawrynowicz <jozef.l@mittosystems.com> * config/msp430/msp430.h (STARTFILE_SPEC) [!fexceptions]: Use crtbegin_no_eh.o if building for the C language. [fno-exceptions]: Use crtbegin_no_eh.o if building for any language except C. (ENDFILE_SPEC) [!fexceptions]: Use crtend_no_eh.o if building for the C language. [fno-exceptions]: Use crtend_no_eh.o if building for any language except C. * config/msp430/t-msp430: Add -fno-exceptions multilib. * doc/install.texi: Document --disable-no-exceptions multilib configure option. * doc/sourcebuild.texi: Document exceptions_enabled effective target. gcc/testsuite/ChangeLog: 2019-12-11 Jozef Lawrynowicz <jozef.l@mittosystems.com> * lib/gcc-dg.exp: Add dg-prune messages for when exception handling is disabled. * lib/target-supports.exp (check_effective_target_exceptions_enabled): New. libgcc/ChangeLog: 2019-12-11 Jozef Lawrynowicz <jozef.l@mittosystems.com> * config.host: Add crt{begin,end}_no_eh.o to "extra_parts". * config.host (msp430*-*-elf): Add crt{begin,end}_no_eh.o to "extra_parts". From-SVN: r279246
Jozef Lawrynowicz committed -
This patch provides a way to clone a pretty_printer. This is needed so that we can capture text in a label_text and make layout decisions based on it, using the policy of global_dc's printer, whilst within a call to diagnostic_show_locus. We can't print with the pretty_printer itself within a call to diagnostic_show_locus since it has partly-buffered content. gcc/c-family/ChangeLog: * c-pretty-print.c (c_pretty_printer::clone): New vfunc implementation. * c-pretty-print.h (c_pretty_printer::clone): New vfunc decl. gcc/cp/ChangeLog: * cxx-pretty-print.c (cxx_pretty_printer::clone): New vfunc implementation. * cxx-pretty-print.h (cxx_pretty_printer::clone): New vfunc decl. * error.c (cxx_format_postprocessor::clone): New vfunc. gcc/ChangeLog: * pretty-print.c (pretty_printer::pretty_printer): New copy-ctor. (pretty_printer::clone): New vfunc implementation. * pretty-print.h (format_postprocessor::clone): New pure vfunc decl. (pretty_printer::pretty_printer): New copy-ctor decl. (pretty_printer::clone): New vfunc decl. From-SVN: r279244
David Malcolm committed -
2019-12-11 Jozef Lawrynowicz <jozef.l@mittosystems.com> * crtstuff.c: Declare __dso_handle only if DEFAULT_USE_CXA_ATEXIT is true. From-SVN: r279243
Jozef Lawrynowicz committed -
This is used by new selftests in the analyzer patch kit. gcc/ChangeLog: * function-tests.c (selftest::make_fndecl): Make non-static. * selftest.h (selftest::make_fndecl): New decl. From-SVN: r279242
David Malcolm committed -
re PR c++/92869 (C++17 wrongly reports aggregate type as not-aggregate (when explicitly defaulted ctors are added)) PR c++/92869 * class.c (finish_struct): For C++17 and earlier, check type_has_user_provided_or_explicit_constructor rather than TYPE_HAS_USER_CONSTRUCTOR whether to set CLASSTYPE_NON_AGGREGATE. * g++.dg/cpp0x/aggr3.C: New test. From-SVN: r279241
Jakub Jelinek committed -
Ville pointed out that our paren init of aggregates doesn't work for auto a = new A(1, 2, 3); and I think it should: A new-expression that creates an object of type T initializes that object as follows: ... -- Otherwise, the new-initializer is interpreted according to the initialization rules of [dcl.init] for direct-initialization. so I think it follows that we should perform dcl.init#17.6.2.2. This doesn't work with new[]; we have: error ("parenthesized initializer in array new"); * init.c (build_new_1): Handle parenthesized initialization of aggregates in new-expression. * g++.dg/cpp2a/paren-init20.C: New test. From-SVN: r279240
Marek Polacek committed -
From-SVN: r279239
Jason Merrill committed -
The primary change here is to do the CPP_DECLTYPE replacement even when we get an error, so we don't keep trying and giving the same parse error each time. We also commit to the tentative firewall parse more often, leading to better diagnostics. * parser.c (cp_parser_decltype_expr): Don't tentative_firewall here. (cp_parser_decltype): Do it here. Remember a non-tentative error. From-SVN: r279237
Jason Merrill committed -
build_new_1 already passes tf_no_cleanup to build_value_init, but in this testcase we end up calling build_value_init by way of build_special_member_call, so we need to pass it to that function as well. * init.c (build_new_1): Also pass tf_no_cleanup to build_special_member_call. From-SVN: r279236
Jason Merrill committed -
Missing error-recovery code. While I was poking at this I also figured we don't need to iterate over the members of a union. * method.c (comp_info::~comp_info): Factor out of... (build_comparison_op): Here. Handle error return from build_new_op. From-SVN: r279235
Jason Merrill committed -
libgomp/ PR libgomp/92843 * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic reference counting for structured 'REFCOUNT_INFINITY'. Add some assertions. (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly. * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file. * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC. * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise. * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise. From-SVN: r279234
Thomas Schwinge committed
-