Unchecked union components were detected only when declared with
unqualified type names.
Tested on x86_64-pc-linux-gnu, committed on trunk

gcc/ada/

        * exp_ch4.adb (Component_Is_Unconstrained_UU): Detect both
        qualified and unqualified names of unchecked union components.
diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb
--- a/gcc/ada/exp_ch4.adb
+++ b/gcc/ada/exp_ch4.adb
@@ -8154,7 +8154,7 @@ package body Exp_Ch4 is
                --  Unconstrained nominal type. In the case of a constraint
                --  present, the node kind would have been N_Subtype_Indication.
 
-               if Nkind (Sindic) = N_Identifier then
+               if Nkind (Sindic) in N_Expanded_Name | N_Identifier then
                   return Is_Unchecked_Union (Base_Type (Etype (Sindic)));
                end if;
 


Reply via email to