From 1862103ac8db1d4ee0128c09718375dcce8418ef Mon Sep 17 00:00:00 2001 From: ebotcazou Date: Mon, 6 Nov 2017 17:23:08 +0000 Subject: * gcc-interface/misc.c (gnat_post_options): Clear warn_return_type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254459 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/gcc-interface/misc.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/ada/gcc-interface') diff --git a/gcc/ada/gcc-interface/misc.c b/gcc/ada/gcc-interface/misc.c index 7bdb3803c13..9a4a48fba42 100644 --- a/gcc/ada/gcc-interface/misc.c +++ b/gcc/ada/gcc-interface/misc.c @@ -262,6 +262,9 @@ gnat_post_options (const char **pfilename ATTRIBUTE_UNUSED) /* No psABI change warnings for Ada. */ warn_psabi = 0; + /* No return type warnings for Ada. */ + warn_return_type = 0; + /* No caret by default for Ada. */ if (!global_options_set.x_flag_diagnostics_show_caret) global_dc->show_caret = false; -- cgit v1.2.1 From cfd0a3db624f0dcc1461d256c78e532ee5e01b83 Mon Sep 17 00:00:00 2001 From: pmderodat Date: Wed, 8 Nov 2017 15:17:43 +0000 Subject: gcc/ada/ 2017-11-08 Javier Miranda * sem_disp.adb (Is_Inherited_Public_Operation): Extend the functionality of this routine to handle multiple levels of derivations. 2017-11-08 Hristian Kirtchev * einfo.adb: Elist36 is now used as Nested_Scenarios. (Nested_Scenarios): New routine. (Set_Nested_Scenarios): New routine. (Write_Field36_Name): New routine. * einfo.ads: Add new attribute Nested_Scenarios along with occurrences in entities. (Nested_Scenarios): New routine along with pragma Inline. (Set_Nested_Scenarios): New routine along with pragma Inline. * sem_elab.adb (Find_And_Process_Nested_Scenarios): New routine. (Process_Nested_Scenarios): New routine. (Traverse_Body): When a subprogram body is traversed for the first time, find, save, and process all suitable scenarios found within. Subsequent traversals of the same subprogram body utilize the saved scenarios. 2017-11-08 Piotr Trojanek * lib-xref-spark_specific.adb (Add_SPARK_Scope): Remove detection of protected operations. (Add_SPARK_Xrefs): Simplify detection of empty entities. * get_spark_xrefs.ads, get_spark_xrefs.adb, put_spark_xrefs.ads, put_spark_xrefs.adb, spark_xrefs_test.adb: Remove code for writing, reading and testing SPARK cross-references stored in the ALI files. * lib-xref.ads (Output_SPARK_Xrefs): Remove. * lib-writ.adb (Write_ALI): Do not write SPARK cross-references to the ALI file. * spark_xrefs.ads, spark_xrefs.adb (pspark): Remove, together with description of the SPARK xrefs ALI format. * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Remove get_spark_refs.o and put_spark_refs.o. 2017-11-08 Hristian Kirtchev * exp_ch4.adb (Apply_Accessibility_Check): Do not finalize the object when the associated access type is subject to pragma No_Heap_Finalization. * exp_intr.adb (Expand_Unc_Deallocation): Use the available view of the designated type in case it comes from a limited withed unit. gcc/testsuite/ 2017-11-08 Javier Miranda * gnat.dg/overriding_ops2.adb, gnat.dg/overriding_ops2.ads, gnat.dg/overriding_ops2_pkg.ads, gnat.dg/overriding_ops2_pkg-high.ads: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254532 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/gcc-interface/Make-lang.in | 2 -- 1 file changed, 2 deletions(-) (limited to 'gcc/ada/gcc-interface') diff --git a/gcc/ada/gcc-interface/Make-lang.in b/gcc/ada/gcc-interface/Make-lang.in index 9c7b6e1496f..d51d3973b4d 100644 --- a/gcc/ada/gcc-interface/Make-lang.in +++ b/gcc/ada/gcc-interface/Make-lang.in @@ -322,7 +322,6 @@ GNAT_ADA_OBJS = \ ada/libgnat/g-spchge.o \ ada/libgnat/g-speche.o \ ada/libgnat/g-u3spch.o \ - ada/get_spark_xrefs.o \ ada/get_targ.o \ ada/ghost.o \ ada/libgnat/gnat.o \ @@ -352,7 +351,6 @@ GNAT_ADA_OBJS = \ ada/par_sco.o \ ada/prep.o \ ada/prepcomp.o \ - ada/put_spark_xrefs.o \ ada/put_scos.o \ ada/repinfo.o \ ada/restrict.o \ -- cgit v1.2.1 From 12b25483ace8e9cc9be42f8cae1b3b3273d27eec Mon Sep 17 00:00:00 2001 From: pmderodat Date: Thu, 9 Nov 2017 13:59:10 +0000 Subject: 2017-11-09 Jerome Lambourg * gcc-interface/Makefile.in: Add rules to build aarch64-qnx runtimes. 2017-11-09 Hristian Kirtchev * gcc-interface/trans.c (gnat_to_gnu): Add processing for N_Variable_Reference_Marker nodes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254581 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/gcc-interface/Makefile.in | 31 +++++++++++++++++++++++++++++++ gcc/ada/gcc-interface/trans.c | 8 ++++---- 2 files changed, 35 insertions(+), 4 deletions(-) (limited to 'gcc/ada/gcc-interface') diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in index b1621d11b11..b08234355b7 100644 --- a/gcc/ada/gcc-interface/Makefile.in +++ b/gcc/ada/gcc-interface/Makefile.in @@ -887,6 +887,37 @@ ifeq ($(strip $(filter-out arm% linux-androideabi,$(target_cpu) $(target_os))),) LIBRARY_VERSION := $(LIB_VERSION) endif +# AARCH64 QNX +ifeq ($(strip $(filter-out aarch64 %qnx,$(target_cpu) $(target_os))),) + LIBGNAT_TARGET_PAIRS = \ + a-intnam.ads Date: Fri, 10 Nov 2017 08:21:05 +0000 Subject: * gcc-interface/utils.c (convert) : Add comment and do not fall through to the next case. : Deal specially with a dereference from another array type with the same element type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254618 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/gcc-interface/utils.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'gcc/ada/gcc-interface') diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index bfd3388c56a..2c80a612b1f 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -4706,6 +4706,7 @@ convert (tree type, tree expr) return fold (convert_to_real (type, expr)); case RECORD_TYPE: + /* Do a normal conversion between scalar and justified modular type. */ if (TYPE_JUSTIFIED_MODULAR_P (type) && !AGGREGATE_TYPE_P (etype)) { vec *v; @@ -4717,9 +4718,27 @@ convert (tree type, tree expr) return gnat_build_constructor (type, v); } - /* ... fall through ... */ + /* In these cases, assume the front-end has validated the conversion. + If the conversion is valid, it will be a bit-wise conversion, so + it can be viewed as an unchecked conversion. */ + return unchecked_convert (type, expr, false); case ARRAY_TYPE: + /* Do a normal conversion between unconstrained and constrained array + type, assuming the latter is a constrained version of the former. */ + if (TREE_CODE (expr) == INDIRECT_REF + && ecode == ARRAY_TYPE + && TREE_TYPE (etype) == TREE_TYPE (type)) + { + tree ptr_type = build_pointer_type (type); + tree t = build_unary_op (INDIRECT_REF, NULL_TREE, + fold_convert (ptr_type, + TREE_OPERAND (expr, 0))); + TREE_READONLY (t) = TREE_READONLY (expr); + TREE_THIS_NOTRAP (t) = TREE_THIS_NOTRAP (expr); + return t; + } + /* In these cases, assume the front-end has validated the conversion. If the conversion is valid, it will be a bit-wise conversion, so it can be viewed as an unchecked conversion. */ -- cgit v1.2.1 From 04915125c51f19594d77ba1f986803337f7f72b7 Mon Sep 17 00:00:00 2001 From: ebotcazou Date: Fri, 10 Nov 2017 08:36:30 +0000 Subject: Update copyright years git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254621 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/gcc-interface/Makefile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc/ada/gcc-interface') diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in index b08234355b7..749dbbfec47 100644 --- a/gcc/ada/gcc-interface/Makefile.in +++ b/gcc/ada/gcc-interface/Makefile.in @@ -1,5 +1,5 @@ # Makefile for GNU Ada Compiler (GNAT). -# Copyright (C) 1994-2016 Free Software Foundation, Inc. +# Copyright (C) 1994-2017 Free Software Foundation, Inc. #This file is part of GCC. -- cgit v1.2.1