diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2022-01-22 10:56:05 +0100 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2022-05-10 08:19:23 +0000 |
commit | 6798cad793d9581936f2de76c85a22a5449d7358 (patch) | |
tree | bf61448089bccbb293494a73ef15292d37044912 /gcc | |
parent | 53f2aaf0b3c322e65d014ad2203a706bc8b26b8f (diff) | |
download | gcc-6798cad793d9581936f2de76c85a22a5449d7358.zip gcc-6798cad793d9581936f2de76c85a22a5449d7358.tar.gz gcc-6798cad793d9581936f2de76c85a22a5449d7358.tar.bz2 |
[Ada] Fix oversight for case expression in Eval_Integer_Literal
The intent of the entry test is to treat conditional expressions, that is
to say if-expression and case-expression, alike and to require that a second
condition be true for them. But an N_Case_Expression_Alternative is not an
N_Subexpr so this second condition was short-circuited for this node.
gcc/ada/
* sem_eval.adb (Eval_Integer_Literal): Fix oversight in entry test.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/sem_eval.adb | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/ada/sem_eval.adb b/gcc/ada/sem_eval.adb index 2881a14..af24de3 100644 --- a/gcc/ada/sem_eval.adb +++ b/gcc/ada/sem_eval.adb @@ -2797,7 +2797,7 @@ package body Sem_Eval is -- Check_Non_Static_Context on an expanded literal may lead to spurious -- and misleading warnings. - if (PK not in N_Subexpr + if (PK not in N_Case_Expression_Alternative | N_Subexpr or else (PK in N_Case_Expression_Alternative | N_If_Expression and then Comes_From_Source (N))) |