-
- Downloads
ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P): Add checking.
* gcc-interface/ada-tree.h (TYPE_PACKED_ARRAY_TYPE_P): Add checking. (TYPE_BY_REFERENCE_P): New flag. (TYPE_IS_BY_REFERENCE_P): New macro. (TYPE_DUMMY_P): Add checking and remove VOID_TYPE. (TYPE_IS_DUMMY_P): Adjust for above change. * gcc-interface/decl.c (gnat_to_gnu_entity): Use TYPE_BY_REFERENCE_P and TYPE_IS_BY_REFERENCE_P instead of TREE_ADDRESSABLE. (gnat_to_gnu_param): Likewise. (maybe_pad_type): Likewise. (make_type_from_size): Use TYPE_IS_PACKED_ARRAY_TYPE_P. * gcc-interface/misc.c (must_pass_by_ref): Use TYPE_IS_BY_REFERENCE_P instead of TREE_ADDRESSABLE. * gcc-interface/trans.c (finalize_nrv): Likewise. (call_to_gnu): Likewise. Do not create a temporary for return values with by-reference type here. (gnat_to_gnu): Test TYPE_IS_DUMMY_P instead of TYPE_DUMMY_P. (gnat_gimplify_expr) <ADDR_EXPR>: Don't do anything for non-constant CONSTRUCTORs and calls. * gcc-interface/utils.c (make_dummy_type): Get the equivalent type of the underlying type and use it throughout. Use TYPE_IS_BY_REFERENCE_P instead of TREE_ADDRESSABLE. * gcc-interface/utils2.c (build_cond_expr): Deal with by-reference types explicitly. From-SVN: r184594
Showing
- gcc/ada/ChangeLog 26 additions, 0 deletionsgcc/ada/ChangeLog
- gcc/ada/gcc-interface/ada-tree.h 26 additions, 8 deletionsgcc/ada/gcc-interface/ada-tree.h
- gcc/ada/gcc-interface/decl.c 7 additions, 8 deletionsgcc/ada/gcc-interface/decl.c
- gcc/ada/gcc-interface/misc.c 2 additions, 2 deletionsgcc/ada/gcc-interface/misc.c
- gcc/ada/gcc-interface/trans.c 14 additions, 32 deletionsgcc/ada/gcc-interface/trans.c
- gcc/ada/gcc-interface/utils.c 3 additions, 3 deletionsgcc/ada/gcc-interface/utils.c
- gcc/ada/gcc-interface/utils2.c 2 additions, 1 deletiongcc/ada/gcc-interface/utils2.c
- gcc/testsuite/ChangeLog 5 additions, 0 deletionsgcc/testsuite/ChangeLog
- gcc/testsuite/gnat.dg/aggr19.adb 14 additions, 0 deletionsgcc/testsuite/gnat.dg/aggr19.adb
- gcc/testsuite/gnat.dg/aggr19_pkg.adb 8 additions, 0 deletionsgcc/testsuite/gnat.dg/aggr19_pkg.adb
- gcc/testsuite/gnat.dg/aggr19_pkg.ads 32 additions, 0 deletionsgcc/testsuite/gnat.dg/aggr19_pkg.ads
Loading
Please register or sign in to comment