| -- { dg-do compile } | |
| -- { dg-options "-O2" } | |
| package body Case_Optimization1 is | |
| function F (Op_Kind : Internal_Operator_Symbol_Kinds) return Integer is | |
| begin | |
| case Op_Kind is | |
| when A_Not_Operator => return 3; | |
| when An_Exponentiate_Operator => return 2; | |
| when others => return 1; | |
| end case; | |
| end; | |
| function Len (E : Element) return Integer is | |
| Op_Kind : Internal_Element_Kinds := Int_Kind (E); | |
| begin | |
| return F (Int_Kind (E)); | |
| end; | |
| end Case_Optimization1; |