summaryrefslogtreecommitdiff
path: root/gcc/ada/exp_aggr.adb
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/exp_aggr.adb')
-rw-r--r--gcc/ada/exp_aggr.adb8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ada/exp_aggr.adb b/gcc/ada/exp_aggr.adb
index 7b9e48254b9..37d9a618da6 100644
--- a/gcc/ada/exp_aggr.adb
+++ b/gcc/ada/exp_aggr.adb
@@ -4872,9 +4872,13 @@ package body Exp_Aggr is
Analyze_And_Resolve (N, Ctyp);
- -- Must have a compile time value
+ -- Must have a compile time value. String literals have to
+ -- be converted into temporaries as well, because they cannot
+ -- easily be converted into their bit representation.
- if not Compile_Time_Known_Value (N) then
+ if not Compile_Time_Known_Value (N)
+ or else Nkind (N) = N_String_Literal
+ then
raise Not_Handled;
end if;