aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/sem_stmts.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/vhdl/sem_stmts.adb')
-rw-r--r--src/vhdl/sem_stmts.adb6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/vhdl/sem_stmts.adb b/src/vhdl/sem_stmts.adb
index 79e5d2e31..1d33ad7fc 100644
--- a/src/vhdl/sem_stmts.adb
+++ b/src/vhdl/sem_stmts.adb
@@ -1067,7 +1067,7 @@ package body Sem_Stmts is
case Get_Kind (Choice_Type) is
when Iir_Kinds_Discrete_Type_Definition =>
Sem_Choices_Range
- (Chain, Choice_Type, False, True, Loc, Low, High);
+ (Chain, Choice_Type, Low, High, Loc, False, True);
when Iir_Kind_Array_Subtype_Definition
| Iir_Kind_Array_Type_Definition =>
if not Is_One_Dimensional_Array_Type (Choice_Type) then
@@ -1119,7 +1119,9 @@ package body Sem_Stmts is
El := Chain;
while El /= Null_Iir loop
- Sem_Sequential_Statements_Internal (Get_Associated_Chain (El));
+ if not Get_Same_Alternative_Flag (El) then
+ Sem_Sequential_Statements_Internal (Get_Associated_Chain (El));
+ end if;
El := Get_Chain (El);
end loop;
end Sem_Case_Statement;