diff options
author | Hristian Kirtchev <kirtchev@adacore.com> | 2018-05-24 13:05:03 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2018-05-24 13:05:03 +0000 |
commit | d2bb0bbfc6766d392ab1069de05a9426c80d4efc (patch) | |
tree | aaeae4ced82d1149aab5745122803687ba0c9800 /gcc/double-int.c | |
parent | 9057bd6af94f176dd904b476534cc42158799ae5 (diff) | |
download | gcc-d2bb0bbfc6766d392ab1069de05a9426c80d4efc.zip gcc-d2bb0bbfc6766d392ab1069de05a9426c80d4efc.tar.gz gcc-d2bb0bbfc6766d392ab1069de05a9426c80d4efc.tar.bz2 |
[Ada] Spurious error on pragma Independent_Components
This patch modifies the analysis of pragma Independent_Components to account
for a side effect from handling of self-referential records which render the
pragma illegal.
------------
-- Source --
------------
-- pack.ads
package Pack is
type OK is record
Comp_1 : Integer;
Comp_2 : access OK;
end record;
pragma Independent_Components (OK);
type Error;
pragma Independent_Components (Error);
type Error is record
Comp : Integer;
end record;
end Pack;
----------------------------
-- Compilation and output --
----------------------------
$ gcc -c pack.ads
pack.ads:9:04: representation item must be after full type declaration
2018-05-24 Hristian Kirtchev <kirtchev@adacore.com>
gcc/ada/
* sem_prag.adb (Analyze_Pragma): Use the full view of an internally
generated incomplete type.
From-SVN: r260649
Diffstat (limited to 'gcc/double-int.c')
0 files changed, 0 insertions, 0 deletions