aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.cc
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2023-11-06 23:34:20 +0100
committerMarc Poulhiès <poulhies@adacore.com>2023-11-28 10:35:47 +0100
commite95a42ec9a6be3edb6d8e31273ffcf64a40c0d3d (patch)
tree8ed97a9e844283445ff6fb36024164e79a698b1c /gcc/tree.cc
parent89ed5455850437782358e0b3fb399bb5d4ec5f65 (diff)
downloadgcc-e95a42ec9a6be3edb6d8e31273ffcf64a40c0d3d.zip
gcc-e95a42ec9a6be3edb6d8e31273ffcf64a40c0d3d.tar.gz
gcc-e95a42ec9a6be3edb6d8e31273ffcf64a40c0d3d.tar.bz2
ada: Fix internal error on declare expression in expression function
When the expression function is not a completion, its (return) expression does not cause freezing so analyzing the declare expression in this context must not freeze the type of the object. The change also contains another fix, which makes it so that the compiler does not evaluate a nonstatic representation attribute of a scalar subtype in the same context if the subtype is not already frozen. gcc/ada/ * sem_attr.adb (Eval_Attribute): Do not proceed in a spec expression for nonstatic representation attributes of a scalar subtype when the subtype is not frozen. * sem_ch3.adb (Analyze_Object_Declaration): Do not freeze the type of the object in a spec expression.
Diffstat (limited to 'gcc/tree.cc')
0 files changed, 0 insertions, 0 deletions