Index: tests/.expect/KRfunctions.x64.txt
===================================================================
--- tests/.expect/KRfunctions.x64.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/KRfunctions.x64.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -17,20 +17,38 @@
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
     struct S _X4_retS1S_1;
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
-    ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    }
+
     return _X4_retS1S_1;
 }
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 signed int _X2f3Fi_S1SS1SPi__1(struct S _X1aS1S_1, struct S _X1bS1S_1, signed int *_X1cPi_1){
@@ -59,5 +77,8 @@
     __attribute__ ((unused)) signed int *(*_X11_retval_f10FPi_ii__1)(signed int _X1xi_1, signed int _X1yi_1);
     signed int *_X1xFPi_ii__2(signed int __anonymous_object2, signed int __anonymous_object3);
-    ((void)(_X11_retval_f10FPi_ii__1=_X1xFPi_ii__2) /* ?{} */);
+    {
+        ((void)(_X11_retval_f10FPi_ii__1=_X1xFPi_ii__2) /* ?{} */);
+    }
+
     return _X11_retval_f10FPi_ii__1;
 }
@@ -82,7 +103,14 @@
     signed int _X1ai_2;
     signed int _X1bi_2;
-    signed int *(*_tmp_cp_ret2)(signed int _X1xi_1, signed int _X1yi_1);
-    ((void)(_X1xFPi_ii__2=(((void)(_tmp_cp_ret2=_X3f10FFPi_ii__iPiPid__1(3, (&_X1ai_2), (&_X1bi_2), 3.5))) , _tmp_cp_ret2)));
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        signed int *(*_tmp_cp_ret2)(signed int _X1xi_1, signed int _X1yi_1);
+        void __cleanup_dtor4(signed int *(**_dst)(signed int _X1xi_1, signed int _X1yi_1)){
+            ((void)((*_dst)) /* ^?{} */);
+        }
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object6))__cleanup_dtor4) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(_X1xFPi_ii__2=(((void)(((void)(_tmp_cp_ret2=_X3f10FFPi_ii__iPiPid__1(3, (&_X1ai_2), (&_X1bi_2), 3.5))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2)));
+    }
+
     const signed int _X2f1Fi_iPiPi__2(signed int _X1ai_2, signed int *_X1bPi_2, signed int *_X1cPi_2){
         __attribute__ ((unused)) const signed int _X10_retval_f1Ki_2;
Index: tests/.expect/KRfunctions.x86.txt
===================================================================
--- tests/.expect/KRfunctions.x86.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/KRfunctions.x86.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -17,20 +17,38 @@
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
     struct S _X4_retS1S_1;
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
-    ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    }
+
     return _X4_retS1S_1;
 }
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 signed int _X2f3Fi_S1SS1SPi__1(struct S _X1aS1S_1, struct S _X1bS1S_1, signed int *_X1cPi_1){
@@ -59,5 +77,8 @@
     __attribute__ ((unused)) signed int *(*_X11_retval_f10FPi_ii__1)(signed int _X1xi_1, signed int _X1yi_1);
     signed int *_X1xFPi_ii__2(signed int __anonymous_object2, signed int __anonymous_object3);
-    ((void)(_X11_retval_f10FPi_ii__1=_X1xFPi_ii__2) /* ?{} */);
+    {
+        ((void)(_X11_retval_f10FPi_ii__1=_X1xFPi_ii__2) /* ?{} */);
+    }
+
     return _X11_retval_f10FPi_ii__1;
 }
@@ -82,7 +103,14 @@
     signed int _X1ai_2;
     signed int _X1bi_2;
-    signed int *(*_tmp_cp_ret2)(signed int _X1xi_1, signed int _X1yi_1);
-    ((void)(_X1xFPi_ii__2=(((void)(_tmp_cp_ret2=_X3f10FFPi_ii__iPiPid__1(3, (&_X1ai_2), (&_X1bi_2), 3.5))) , _tmp_cp_ret2)));
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        signed int *(*_tmp_cp_ret2)(signed int _X1xi_1, signed int _X1yi_1);
+        void __cleanup_dtor4(signed int *(**_dst)(signed int _X1xi_1, signed int _X1yi_1)){
+            ((void)((*_dst)) /* ^?{} */);
+        }
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object6))__cleanup_dtor4) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(_X1xFPi_ii__2=(((void)(((void)(_tmp_cp_ret2=_X3f10FFPi_ii__iPiPid__1(3, (&_X1ai_2), (&_X1bi_2), 3.5))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2)));
+    }
+
     const signed int _X2f1Fi_iPiPi__2(signed int _X1ai_2, signed int *_X1bPi_2, signed int *_X1cPi_2){
         __attribute__ ((unused)) const signed int _X10_retval_f1Ki_2;
Index: tests/.expect/attributes.x64.txt
===================================================================
--- tests/.expect/attributes.x64.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/attributes.x64.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -1,5 +1,8 @@
 signed int _X2laFi___1(){
     __attribute__ ((unused)) signed int _X10_retval_lai_1;
-    L: __attribute__ ((unused)) ((void)1);
+    {
+        L: __attribute__ ((unused)) ((void)1);
+    }
+
 }
 struct __attribute__ ((unused)) __anonymous0 {
@@ -17,5 +20,8 @@
 static inline struct __anonymous0 _X16_operator_assignFS12__anonymous0_S12__anonymous0S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, struct __anonymous0 _X4_srcS12__anonymous0_1){
     struct __anonymous0 _X4_retS12__anonymous0_1;
-    ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    {
+        ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    }
+
     return _X4_retS12__anonymous0_1;
 }
@@ -35,5 +41,8 @@
 static inline struct Agn2 _X16_operator_assignFS4Agn2_S4Agn2S4Agn2_autogen___1(struct Agn2 *_X4_dstS4Agn2_1, struct Agn2 _X4_srcS4Agn2_1){
     struct Agn2 _X4_retS4Agn2_1;
-    ((void)_X12_constructorFv_S4Agn2S4Agn2_autogen___1((&_X4_retS4Agn2_1), (*_X4_dstS4Agn2_1)));
+    {
+        ((void)_X12_constructorFv_S4Agn2S4Agn2_autogen___1((&_X4_retS4Agn2_1), (*_X4_dstS4Agn2_1)));
+    }
+
     return _X4_retS4Agn2_1;
 }
@@ -59,5 +68,8 @@
 static inline struct __anonymous2 _X16_operator_assignFS12__anonymous2_S12__anonymous2S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, struct __anonymous2 _X4_srcS12__anonymous2_1){
     struct __anonymous2 _X4_retS12__anonymous2_1;
-    ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    {
+        ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    }
+
     return _X4_retS12__anonymous2_1;
 }
@@ -76,5 +88,8 @@
 static inline struct Agn4 _X16_operator_assignFS4Agn4_S4Agn4S4Agn4_autogen___1(struct Agn4 *_X4_dstS4Agn4_1, struct Agn4 _X4_srcS4Agn4_1){
     struct Agn4 _X4_retS4Agn4_1;
-    ((void)_X12_constructorFv_S4Agn4S4Agn4_autogen___1((&_X4_retS4Agn4_1), (*_X4_dstS4Agn4_1)));
+    {
+        ((void)_X12_constructorFv_S4Agn4S4Agn4_autogen___1((&_X4_retS4Agn4_1), (*_X4_dstS4Agn4_1)));
+    }
+
     return _X4_retS4Agn4_1;
 }
@@ -104,148 +119,502 @@
 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1);
 static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3FdlS3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1, struct Fdl _X4_srcS3Fdl_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ^?{} */);
+    }
+
 }
 static inline struct Fdl _X16_operator_assignFS3Fdl_S3FdlS3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1, struct Fdl _X4_srcS3Fdl_1){
     struct Fdl _X4_retS3Fdl_1;
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1));
-    ((void)_X12_constructorFv_S3FdlS3Fdl_autogen___1((&_X4_retS3Fdl_1), (*_X4_dstS3Fdl_1)));
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S3FdlS3Fdl_autogen___1((&_X4_retS3Fdl_1), (*_X4_dstS3Fdl_1)));
+    }
+
     return _X4_retS3Fdl_1;
 }
 static inline void _X12_constructorFv_S3Fdli_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdlii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
+    }
+
 }
 __attribute__ ((unused)) signed int _X1fFi___1() asm ( "xyz" );
@@ -314,31 +683,67 @@
     __attribute__ ((unused,unused,unused,unused,used)) signed int _X3ad5i_2;
     __attribute__ ((unused,unused,unused,unused,unused)) signed int _X3ad6Fi___2();
-    ((void)sizeof(__attribute__ ((unused,unused)) signed int ));
-    ((void)sizeof(__attribute__ ((unused,unused,unused,unused)) signed int **));
-    ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int [((unsigned long int )5)]));
-    ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int (*)[((unsigned long int )10)]));
-    ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int ()));
+    {
+        ((void)sizeof(__attribute__ ((unused,unused)) signed int ));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused,unused)) signed int **));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int [((unsigned long int )5)]));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int (*)[((unsigned long int )10)]));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int ()));
+    }
+
     struct __attribute__ ((unused)) __anonymous3 {
         signed int _X1ii_2;
     };
     inline void _X12_constructorFv_S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2, struct __anonymous3 _X4_srcS12__anonymous3_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct __anonymous3 _X16_operator_assignFS12__anonymous3_S12__anonymous3S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2, struct __anonymous3 _X4_srcS12__anonymous3_2){
         struct __anonymous3 _X4_retS12__anonymous3_2;
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2));
-        ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___2((&_X4_retS12__anonymous3_2), (*_X4_dstS12__anonymous3_2)));
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___2((&_X4_retS12__anonymous3_2), (*_X4_dstS12__anonymous3_2)));
+        }
+
         return _X4_retS12__anonymous3_2;
     }
     inline void _X12_constructorFv_S12__anonymous3i_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X1ii_2) /* ?{} */);
-    }
-    ((void)sizeof(struct __anonymous3 ));
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
+    }
+    {
+        ((void)sizeof(struct __anonymous3 ));
+    }
+
     enum __attribute__ ((unused)) __anonymous4 {
         _X1RKM12__anonymous4_2,
@@ -347,5 +752,8 @@
     }
     inline void _X12_constructorFv_M12__anonymous4M12__anonymous4_intrinsic___2(enum __anonymous4 *_X4_dstM12__anonymous4_2, enum __anonymous4 _X4_srcM12__anonymous4_2){
-        ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_M12__anonymous4_intrinsic___2(__attribute__ ((unused)) enum __anonymous4 *_X4_dstM12__anonymous4_2){
@@ -353,9 +761,18 @@
     inline enum __anonymous4 _X16_operator_assignFM12__anonymous4_M12__anonymous4M12__anonymous4_intrinsic___2(enum __anonymous4 *_X4_dstM12__anonymous4_2, enum __anonymous4 _X4_srcM12__anonymous4_2){
         enum __anonymous4 _X4_retM12__anonymous4_2;
-        ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2));
-        ((void)(_X4_retM12__anonymous4_2=(*_X4_dstM12__anonymous4_2)) /* ?{} */);
+        {
+            ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2));
+        }
+
+        {
+            ((void)(_X4_retM12__anonymous4_2=(*_X4_dstM12__anonymous4_2)) /* ?{} */);
+        }
+
         return _X4_retM12__anonymous4_2;
     }
-    ((void)sizeof(enum __anonymous4 ));
+    {
+        ((void)sizeof(enum __anonymous4 ));
+    }
+
 }
 signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object9, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object10);
@@ -383,5 +800,8 @@
 static inline struct Vad _X16_operator_assignFS3Vad_S3VadS3Vad_autogen___1(struct Vad *_X4_dstS3Vad_1, struct Vad _X4_srcS3Vad_1){
     struct Vad _X4_retS3Vad_1;
-    ((void)_X12_constructorFv_S3VadS3Vad_autogen___1((&_X4_retS3Vad_1), (*_X4_dstS3Vad_1)));
+    {
+        ((void)_X12_constructorFv_S3VadS3Vad_autogen___1((&_X4_retS3Vad_1), (*_X4_dstS3Vad_1)));
+    }
+
     return _X4_retS3Vad_1;
 }
Index: tests/.expect/attributes.x86.txt
===================================================================
--- tests/.expect/attributes.x86.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/attributes.x86.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -1,5 +1,8 @@
 signed int _X2laFi___1(){
     __attribute__ ((unused)) signed int _X10_retval_lai_1;
-    L: __attribute__ ((unused)) ((void)1);
+    {
+        L: __attribute__ ((unused)) ((void)1);
+    }
+
 }
 struct __attribute__ ((unused)) __anonymous0 {
@@ -17,5 +20,8 @@
 static inline struct __anonymous0 _X16_operator_assignFS12__anonymous0_S12__anonymous0S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, struct __anonymous0 _X4_srcS12__anonymous0_1){
     struct __anonymous0 _X4_retS12__anonymous0_1;
-    ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    {
+        ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    }
+
     return _X4_retS12__anonymous0_1;
 }
@@ -35,5 +41,8 @@
 static inline struct Agn2 _X16_operator_assignFS4Agn2_S4Agn2S4Agn2_autogen___1(struct Agn2 *_X4_dstS4Agn2_1, struct Agn2 _X4_srcS4Agn2_1){
     struct Agn2 _X4_retS4Agn2_1;
-    ((void)_X12_constructorFv_S4Agn2S4Agn2_autogen___1((&_X4_retS4Agn2_1), (*_X4_dstS4Agn2_1)));
+    {
+        ((void)_X12_constructorFv_S4Agn2S4Agn2_autogen___1((&_X4_retS4Agn2_1), (*_X4_dstS4Agn2_1)));
+    }
+
     return _X4_retS4Agn2_1;
 }
@@ -59,5 +68,8 @@
 static inline struct __anonymous2 _X16_operator_assignFS12__anonymous2_S12__anonymous2S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, struct __anonymous2 _X4_srcS12__anonymous2_1){
     struct __anonymous2 _X4_retS12__anonymous2_1;
-    ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    {
+        ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    }
+
     return _X4_retS12__anonymous2_1;
 }
@@ -76,5 +88,8 @@
 static inline struct Agn4 _X16_operator_assignFS4Agn4_S4Agn4S4Agn4_autogen___1(struct Agn4 *_X4_dstS4Agn4_1, struct Agn4 _X4_srcS4Agn4_1){
     struct Agn4 _X4_retS4Agn4_1;
-    ((void)_X12_constructorFv_S4Agn4S4Agn4_autogen___1((&_X4_retS4Agn4_1), (*_X4_dstS4Agn4_1)));
+    {
+        ((void)_X12_constructorFv_S4Agn4S4Agn4_autogen___1((&_X4_retS4Agn4_1), (*_X4_dstS4Agn4_1)));
+    }
+
     return _X4_retS4Agn4_1;
 }
@@ -104,148 +119,502 @@
 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1);
 static inline void _X12_constructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3FdlS3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1, struct Fdl _X4_srcS3Fdl_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ^?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1) /* ^?{} */);
+    }
+
 }
 static inline struct Fdl _X16_operator_assignFS3Fdl_S3FdlS3Fdl_autogen___1(struct Fdl *_X4_dstS3Fdl_1, struct Fdl _X4_srcS3Fdl_1){
     struct Fdl _X4_retS3Fdl_1;
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1));
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1));
-    ((void)_X12_constructorFv_S3FdlS3Fdl_autogen___1((&_X4_retS3Fdl_1), (*_X4_dstS3Fdl_1)));
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X4_srcS3Fdl_1._X2f1i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X4_srcS3Fdl_1._X2f2i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X4_srcS3Fdl_1._X2f3i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X4_srcS3Fdl_1._X2f4i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X4_srcS3Fdl_1._X2f5i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X4_srcS3Fdl_1._X2f6i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X4_srcS3Fdl_1._X2f7i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X4_srcS3Fdl_1._X2f8i_1));
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X4_srcS3Fdl_1._X2f9Pi_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S3FdlS3Fdl_autogen___1((&_X4_retS3Fdl_1), (*_X4_dstS3Fdl_1)));
+    }
+
     return _X4_retS3Fdl_1;
 }
 static inline void _X12_constructorFv_S3Fdli_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdlii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3Fdliiiiiiii_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S3FdliiiiiiiiPi_autogen___1(struct Fdl *_X4_dstS3Fdl_1, __attribute__ ((unused)) signed int _X2f1i_1, __attribute__ ((unused)) signed int _X2f2i_1, __attribute__ ((unused,unused)) signed int _X2f3i_1, __attribute__ ((unused)) signed int _X2f4i_1, __attribute__ ((unused,unused)) signed int _X2f5i_1, signed int _X2f6i_1, __attribute__ ((unused,unused)) signed int _X2f7i_1, __attribute__ ((unused)) signed int _X2f8i_1, __attribute__ ((unused,unused)) signed int *_X2f9Pi_1){
-    ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
-    ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f1i_1=_X2f1i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f2i_1=_X2f2i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f3i_1=_X2f3i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f4i_1=_X2f4i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f5i_1=_X2f5i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f6i_1=_X2f6i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f7i_1=_X2f7i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f8i_1=_X2f8i_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS3Fdl_1)._X2f9Pi_1=_X2f9Pi_1) /* ?{} */);
+    }
+
 }
 __attribute__ ((unused)) signed int _X1fFi___1() asm ( "xyz" );
@@ -314,31 +683,67 @@
     __attribute__ ((unused,unused,unused,unused,used)) signed int _X3ad5i_2;
     __attribute__ ((unused,unused,unused,unused,unused)) signed int _X3ad6Fi___2();
-    ((void)sizeof(__attribute__ ((unused,unused)) signed int ));
-    ((void)sizeof(__attribute__ ((unused,unused,unused,unused)) signed int **));
-    ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int [((unsigned int )5)]));
-    ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int (*)[((unsigned int )10)]));
-    ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int ()));
+    {
+        ((void)sizeof(__attribute__ ((unused,unused)) signed int ));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused,unused)) signed int **));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int [((unsigned int )5)]));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int (*)[((unsigned int )10)]));
+    }
+
+    {
+        ((void)sizeof(__attribute__ ((unused,unused,unused)) signed int ()));
+    }
+
     struct __attribute__ ((unused)) __anonymous3 {
         signed int _X1ii_2;
     };
     inline void _X12_constructorFv_S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2, struct __anonymous3 _X4_srcS12__anonymous3_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct __anonymous3 _X16_operator_assignFS12__anonymous3_S12__anonymous3S12__anonymous3_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2, struct __anonymous3 _X4_srcS12__anonymous3_2){
         struct __anonymous3 _X4_retS12__anonymous3_2;
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2));
-        ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___2((&_X4_retS12__anonymous3_2), (*_X4_dstS12__anonymous3_2)));
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X4_srcS12__anonymous3_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___2((&_X4_retS12__anonymous3_2), (*_X4_dstS12__anonymous3_2)));
+        }
+
         return _X4_retS12__anonymous3_2;
     }
     inline void _X12_constructorFv_S12__anonymous3i_autogen___2(struct __anonymous3 *_X4_dstS12__anonymous3_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X1ii_2) /* ?{} */);
-    }
-    ((void)sizeof(struct __anonymous3 ));
+        {
+            ((void)((*_X4_dstS12__anonymous3_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
+    }
+    {
+        ((void)sizeof(struct __anonymous3 ));
+    }
+
     enum __attribute__ ((unused)) __anonymous4 {
         _X1RKM12__anonymous4_2,
@@ -347,5 +752,8 @@
     }
     inline void _X12_constructorFv_M12__anonymous4M12__anonymous4_intrinsic___2(enum __anonymous4 *_X4_dstM12__anonymous4_2, enum __anonymous4 _X4_srcM12__anonymous4_2){
-        ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_M12__anonymous4_intrinsic___2(__attribute__ ((unused)) enum __anonymous4 *_X4_dstM12__anonymous4_2){
@@ -353,9 +761,18 @@
     inline enum __anonymous4 _X16_operator_assignFM12__anonymous4_M12__anonymous4M12__anonymous4_intrinsic___2(enum __anonymous4 *_X4_dstM12__anonymous4_2, enum __anonymous4 _X4_srcM12__anonymous4_2){
         enum __anonymous4 _X4_retM12__anonymous4_2;
-        ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2));
-        ((void)(_X4_retM12__anonymous4_2=(*_X4_dstM12__anonymous4_2)) /* ?{} */);
+        {
+            ((void)((*_X4_dstM12__anonymous4_2)=_X4_srcM12__anonymous4_2));
+        }
+
+        {
+            ((void)(_X4_retM12__anonymous4_2=(*_X4_dstM12__anonymous4_2)) /* ?{} */);
+        }
+
         return _X4_retM12__anonymous4_2;
     }
-    ((void)sizeof(enum __anonymous4 ));
+    {
+        ((void)sizeof(enum __anonymous4 ));
+    }
+
 }
 signed int _X4apd1Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object9, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object10);
@@ -383,5 +800,8 @@
 static inline struct Vad _X16_operator_assignFS3Vad_S3VadS3Vad_autogen___1(struct Vad *_X4_dstS3Vad_1, struct Vad _X4_srcS3Vad_1){
     struct Vad _X4_retS3Vad_1;
-    ((void)_X12_constructorFv_S3VadS3Vad_autogen___1((&_X4_retS3Vad_1), (*_X4_dstS3Vad_1)));
+    {
+        ((void)_X12_constructorFv_S3VadS3Vad_autogen___1((&_X4_retS3Vad_1), (*_X4_dstS3Vad_1)));
+    }
+
     return _X4_retS3Vad_1;
 }
Index: tests/.expect/declarationSpecifier.x64.txt
===================================================================
--- tests/.expect/declarationSpecifier.x64.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/declarationSpecifier.x64.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -16,20 +16,38 @@
 static inline void _X12_constructorFv_S12__anonymous0i_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, struct __anonymous0 _X4_srcS12__anonymous0_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous0 _X16_operator_assignFS12__anonymous0_S12__anonymous0S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, struct __anonymous0 _X4_srcS12__anonymous0_1){
     struct __anonymous0 _X4_retS12__anonymous0_1;
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    }
+
     return _X4_retS12__anonymous0_1;
 }
 static inline void _X12_constructorFv_S12__anonymous0i_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
@@ -43,20 +61,38 @@
 static inline void _X12_constructorFv_S12__anonymous1i_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous1S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, struct __anonymous1 _X4_srcS12__anonymous1_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous1 _X16_operator_assignFS12__anonymous1_S12__anonymous1S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, struct __anonymous1 _X4_srcS12__anonymous1_1){
     struct __anonymous1 _X4_retS12__anonymous1_1;
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous1S12__anonymous1_autogen___1((&_X4_retS12__anonymous1_1), (*_X4_dstS12__anonymous1_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous1S12__anonymous1_autogen___1((&_X4_retS12__anonymous1_1), (*_X4_dstS12__anonymous1_1)));
+    }
+
     return _X4_retS12__anonymous1_1;
 }
 static inline void _X12_constructorFv_S12__anonymous1i_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
@@ -70,20 +106,38 @@
 static inline void _X12_constructorFv_S12__anonymous2i_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, struct __anonymous2 _X4_srcS12__anonymous2_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous2 _X16_operator_assignFS12__anonymous2_S12__anonymous2S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, struct __anonymous2 _X4_srcS12__anonymous2_1){
     struct __anonymous2 _X4_retS12__anonymous2_1;
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    }
+
     return _X4_retS12__anonymous2_1;
 }
 static inline void _X12_constructorFv_S12__anonymous2i_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
@@ -97,20 +151,38 @@
 static inline void _X12_constructorFv_S12__anonymous3i_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, struct __anonymous3 _X4_srcS12__anonymous3_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous3 _X16_operator_assignFS12__anonymous3_S12__anonymous3S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, struct __anonymous3 _X4_srcS12__anonymous3_1){
     struct __anonymous3 _X4_retS12__anonymous3_1;
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___1((&_X4_retS12__anonymous3_1), (*_X4_dstS12__anonymous3_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___1((&_X4_retS12__anonymous3_1), (*_X4_dstS12__anonymous3_1)));
+    }
+
     return _X4_retS12__anonymous3_1;
 }
 static inline void _X12_constructorFv_S12__anonymous3i_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous3 _X3x13KVS12__anonymous3_1;
@@ -124,20 +196,38 @@
 static inline void _X12_constructorFv_S12__anonymous4i_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous4S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, struct __anonymous4 _X4_srcS12__anonymous4_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous4 _X16_operator_assignFS12__anonymous4_S12__anonymous4S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, struct __anonymous4 _X4_srcS12__anonymous4_1){
     struct __anonymous4 _X4_retS12__anonymous4_1;
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous4S12__anonymous4_autogen___1((&_X4_retS12__anonymous4_1), (*_X4_dstS12__anonymous4_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous4S12__anonymous4_autogen___1((&_X4_retS12__anonymous4_1), (*_X4_dstS12__anonymous4_1)));
+    }
+
     return _X4_retS12__anonymous4_1;
 }
 static inline void _X12_constructorFv_S12__anonymous4i_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous4 _X3x14KVS12__anonymous4_1;
@@ -151,20 +241,38 @@
 static inline void _X12_constructorFv_S12__anonymous5i_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous5S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, struct __anonymous5 _X4_srcS12__anonymous5_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous5 _X16_operator_assignFS12__anonymous5_S12__anonymous5S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, struct __anonymous5 _X4_srcS12__anonymous5_1){
     struct __anonymous5 _X4_retS12__anonymous5_1;
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous5S12__anonymous5_autogen___1((&_X4_retS12__anonymous5_1), (*_X4_dstS12__anonymous5_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous5S12__anonymous5_autogen___1((&_X4_retS12__anonymous5_1), (*_X4_dstS12__anonymous5_1)));
+    }
+
     return _X4_retS12__anonymous5_1;
 }
 static inline void _X12_constructorFv_S12__anonymous5i_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous5 _X3x15KVS12__anonymous5_1;
@@ -178,20 +286,38 @@
 static inline void _X12_constructorFv_S12__anonymous6i_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous6S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, struct __anonymous6 _X4_srcS12__anonymous6_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous6 _X16_operator_assignFS12__anonymous6_S12__anonymous6S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, struct __anonymous6 _X4_srcS12__anonymous6_1){
     struct __anonymous6 _X4_retS12__anonymous6_1;
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous6S12__anonymous6_autogen___1((&_X4_retS12__anonymous6_1), (*_X4_dstS12__anonymous6_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous6S12__anonymous6_autogen___1((&_X4_retS12__anonymous6_1), (*_X4_dstS12__anonymous6_1)));
+    }
+
     return _X4_retS12__anonymous6_1;
 }
 static inline void _X12_constructorFv_S12__anonymous6i_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous6 _X3x16KVS12__anonymous6_1;
@@ -205,20 +331,38 @@
 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     struct __anonymous7 _X4_retS12__anonymous7_1;
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
+    }
+
     return _X4_retS12__anonymous7_1;
 }
 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous7 _X3x17KVS12__anonymous7_1;
@@ -240,20 +384,38 @@
 static inline void _X12_constructorFv_S12__anonymous8s_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous8S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, struct __anonymous8 _X4_srcS12__anonymous8_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous8 _X16_operator_assignFS12__anonymous8_S12__anonymous8S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, struct __anonymous8 _X4_srcS12__anonymous8_1){
     struct __anonymous8 _X4_retS12__anonymous8_1;
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1));
-    ((void)_X12_constructorFv_S12__anonymous8S12__anonymous8_autogen___1((&_X4_retS12__anonymous8_1), (*_X4_dstS12__anonymous8_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous8S12__anonymous8_autogen___1((&_X4_retS12__anonymous8_1), (*_X4_dstS12__anonymous8_1)));
+    }
+
     return _X4_retS12__anonymous8_1;
 }
 static inline void _X12_constructorFv_S12__anonymous8s_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous8 _X3x29KVS12__anonymous8_1;
@@ -267,20 +429,38 @@
 static inline void _X12_constructorFv_S12__anonymous9s_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous9S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, struct __anonymous9 _X4_srcS12__anonymous9_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous9 _X16_operator_assignFS12__anonymous9_S12__anonymous9S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, struct __anonymous9 _X4_srcS12__anonymous9_1){
     struct __anonymous9 _X4_retS12__anonymous9_1;
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1));
-    ((void)_X12_constructorFv_S12__anonymous9S12__anonymous9_autogen___1((&_X4_retS12__anonymous9_1), (*_X4_dstS12__anonymous9_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous9S12__anonymous9_autogen___1((&_X4_retS12__anonymous9_1), (*_X4_dstS12__anonymous9_1)));
+    }
+
     return _X4_retS12__anonymous9_1;
 }
 static inline void _X12_constructorFv_S12__anonymous9s_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous9 _X3x30KVS12__anonymous9_1;
@@ -294,20 +474,38 @@
 static inline void _X12_constructorFv_S13__anonymous10s_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous10S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, struct __anonymous10 _X4_srcS13__anonymous10_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous10 _X16_operator_assignFS13__anonymous10_S13__anonymous10S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, struct __anonymous10 _X4_srcS13__anonymous10_1){
     struct __anonymous10 _X4_retS13__anonymous10_1;
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous10S13__anonymous10_autogen___1((&_X4_retS13__anonymous10_1), (*_X4_dstS13__anonymous10_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous10S13__anonymous10_autogen___1((&_X4_retS13__anonymous10_1), (*_X4_dstS13__anonymous10_1)));
+    }
+
     return _X4_retS13__anonymous10_1;
 }
 static inline void _X12_constructorFv_S13__anonymous10s_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous10 _X3x31KVS13__anonymous10_1;
@@ -321,20 +519,38 @@
 static inline void _X12_constructorFv_S13__anonymous11s_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous11S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, struct __anonymous11 _X4_srcS13__anonymous11_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous11 _X16_operator_assignFS13__anonymous11_S13__anonymous11S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, struct __anonymous11 _X4_srcS13__anonymous11_1){
     struct __anonymous11 _X4_retS13__anonymous11_1;
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous11S13__anonymous11_autogen___1((&_X4_retS13__anonymous11_1), (*_X4_dstS13__anonymous11_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous11S13__anonymous11_autogen___1((&_X4_retS13__anonymous11_1), (*_X4_dstS13__anonymous11_1)));
+    }
+
     return _X4_retS13__anonymous11_1;
 }
 static inline void _X12_constructorFv_S13__anonymous11s_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous11 _X3x32KVS13__anonymous11_1;
@@ -348,20 +564,38 @@
 static inline void _X12_constructorFv_S13__anonymous12s_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous12S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, struct __anonymous12 _X4_srcS13__anonymous12_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous12 _X16_operator_assignFS13__anonymous12_S13__anonymous12S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, struct __anonymous12 _X4_srcS13__anonymous12_1){
     struct __anonymous12 _X4_retS13__anonymous12_1;
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous12S13__anonymous12_autogen___1((&_X4_retS13__anonymous12_1), (*_X4_dstS13__anonymous12_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous12S13__anonymous12_autogen___1((&_X4_retS13__anonymous12_1), (*_X4_dstS13__anonymous12_1)));
+    }
+
     return _X4_retS13__anonymous12_1;
 }
 static inline void _X12_constructorFv_S13__anonymous12s_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous12 _X3x33KVS13__anonymous12_1;
@@ -375,20 +609,38 @@
 static inline void _X12_constructorFv_S13__anonymous13s_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous13S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, struct __anonymous13 _X4_srcS13__anonymous13_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous13 _X16_operator_assignFS13__anonymous13_S13__anonymous13S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, struct __anonymous13 _X4_srcS13__anonymous13_1){
     struct __anonymous13 _X4_retS13__anonymous13_1;
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous13S13__anonymous13_autogen___1((&_X4_retS13__anonymous13_1), (*_X4_dstS13__anonymous13_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous13S13__anonymous13_autogen___1((&_X4_retS13__anonymous13_1), (*_X4_dstS13__anonymous13_1)));
+    }
+
     return _X4_retS13__anonymous13_1;
 }
 static inline void _X12_constructorFv_S13__anonymous13s_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous13 _X3x34KVS13__anonymous13_1;
@@ -402,20 +654,38 @@
 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     struct __anonymous14 _X4_retS13__anonymous14_1;
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
+    }
+
     return _X4_retS13__anonymous14_1;
 }
 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous14 _X3x35KVS13__anonymous14_1;
@@ -429,20 +699,38 @@
 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     struct __anonymous15 _X4_retS13__anonymous15_1;
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
+    }
+
     return _X4_retS13__anonymous15_1;
 }
 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous15 _X3x36KVS13__anonymous15_1;
@@ -472,20 +760,38 @@
 static inline void _X12_constructorFv_S13__anonymous16i_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous16S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, struct __anonymous16 _X4_srcS13__anonymous16_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous16 _X16_operator_assignFS13__anonymous16_S13__anonymous16S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, struct __anonymous16 _X4_srcS13__anonymous16_1){
     struct __anonymous16 _X4_retS13__anonymous16_1;
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous16S13__anonymous16_autogen___1((&_X4_retS13__anonymous16_1), (*_X4_dstS13__anonymous16_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous16S13__anonymous16_autogen___1((&_X4_retS13__anonymous16_1), (*_X4_dstS13__anonymous16_1)));
+    }
+
     return _X4_retS13__anonymous16_1;
 }
 static inline void _X12_constructorFv_S13__anonymous16i_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous16 _X3f31FS13__anonymous16___1();
@@ -499,20 +805,38 @@
 static inline void _X12_constructorFv_S13__anonymous17i_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous17S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, struct __anonymous17 _X4_srcS13__anonymous17_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous17 _X16_operator_assignFS13__anonymous17_S13__anonymous17S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, struct __anonymous17 _X4_srcS13__anonymous17_1){
     struct __anonymous17 _X4_retS13__anonymous17_1;
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous17S13__anonymous17_autogen___1((&_X4_retS13__anonymous17_1), (*_X4_dstS13__anonymous17_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous17S13__anonymous17_autogen___1((&_X4_retS13__anonymous17_1), (*_X4_dstS13__anonymous17_1)));
+    }
+
     return _X4_retS13__anonymous17_1;
 }
 static inline void _X12_constructorFv_S13__anonymous17i_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous17 _X3f32FS13__anonymous17___1();
@@ -526,20 +850,38 @@
 static inline void _X12_constructorFv_S13__anonymous18i_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous18S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, struct __anonymous18 _X4_srcS13__anonymous18_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous18 _X16_operator_assignFS13__anonymous18_S13__anonymous18S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, struct __anonymous18 _X4_srcS13__anonymous18_1){
     struct __anonymous18 _X4_retS13__anonymous18_1;
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous18S13__anonymous18_autogen___1((&_X4_retS13__anonymous18_1), (*_X4_dstS13__anonymous18_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous18S13__anonymous18_autogen___1((&_X4_retS13__anonymous18_1), (*_X4_dstS13__anonymous18_1)));
+    }
+
     return _X4_retS13__anonymous18_1;
 }
 static inline void _X12_constructorFv_S13__anonymous18i_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous18 _X3f33FS13__anonymous18___1();
@@ -553,20 +895,38 @@
 static inline void _X12_constructorFv_S13__anonymous19i_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous19S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, struct __anonymous19 _X4_srcS13__anonymous19_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous19 _X16_operator_assignFS13__anonymous19_S13__anonymous19S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, struct __anonymous19 _X4_srcS13__anonymous19_1){
     struct __anonymous19 _X4_retS13__anonymous19_1;
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous19S13__anonymous19_autogen___1((&_X4_retS13__anonymous19_1), (*_X4_dstS13__anonymous19_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous19S13__anonymous19_autogen___1((&_X4_retS13__anonymous19_1), (*_X4_dstS13__anonymous19_1)));
+    }
+
     return _X4_retS13__anonymous19_1;
 }
 static inline void _X12_constructorFv_S13__anonymous19i_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous19 _X3f34FS13__anonymous19___1();
@@ -580,20 +940,38 @@
 static inline void _X12_constructorFv_S13__anonymous20i_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous20S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, struct __anonymous20 _X4_srcS13__anonymous20_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous20 _X16_operator_assignFS13__anonymous20_S13__anonymous20S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, struct __anonymous20 _X4_srcS13__anonymous20_1){
     struct __anonymous20 _X4_retS13__anonymous20_1;
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous20S13__anonymous20_autogen___1((&_X4_retS13__anonymous20_1), (*_X4_dstS13__anonymous20_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous20S13__anonymous20_autogen___1((&_X4_retS13__anonymous20_1), (*_X4_dstS13__anonymous20_1)));
+    }
+
     return _X4_retS13__anonymous20_1;
 }
 static inline void _X12_constructorFv_S13__anonymous20i_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous20 _X3f35FS13__anonymous20___1();
@@ -607,20 +985,38 @@
 static inline void _X12_constructorFv_S13__anonymous21i_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous21S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, struct __anonymous21 _X4_srcS13__anonymous21_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous21 _X16_operator_assignFS13__anonymous21_S13__anonymous21S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, struct __anonymous21 _X4_srcS13__anonymous21_1){
     struct __anonymous21 _X4_retS13__anonymous21_1;
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous21S13__anonymous21_autogen___1((&_X4_retS13__anonymous21_1), (*_X4_dstS13__anonymous21_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous21S13__anonymous21_autogen___1((&_X4_retS13__anonymous21_1), (*_X4_dstS13__anonymous21_1)));
+    }
+
     return _X4_retS13__anonymous21_1;
 }
 static inline void _X12_constructorFv_S13__anonymous21i_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous21 _X3f36FS13__anonymous21___1();
@@ -634,20 +1030,38 @@
 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
     struct __anonymous22 _X4_retS13__anonymous22_1;
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1((&_X4_retS13__anonymous22_1), (*_X4_dstS13__anonymous22_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1((&_X4_retS13__anonymous22_1), (*_X4_dstS13__anonymous22_1)));
+    }
+
     return _X4_retS13__anonymous22_1;
 }
 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous22 _X3f37FS13__anonymous22___1();
@@ -661,20 +1075,38 @@
 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
     struct __anonymous23 _X4_retS13__anonymous23_1;
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1((&_X4_retS13__anonymous23_1), (*_X4_dstS13__anonymous23_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1((&_X4_retS13__anonymous23_1), (*_X4_dstS13__anonymous23_1)));
+    }
+
     return _X4_retS13__anonymous23_1;
 }
 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous23 _X3f38FS13__anonymous23___1();
@@ -689,7 +1121,13 @@
 signed int _X4mainFi_iPPKc__1(signed int _X4argci_1, const char **_X4argvPPKc_1){
     __attribute__ ((unused)) signed int _X12_retval_maini_1;
-    ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
-    ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
@@ -698,7 +1136,11 @@
 signed int main(signed int _X4argci_1, char **_X4argvPPc_1, char **_X4envpPPc_1){
     __attribute__ ((unused)) signed int _X12_retval_maini_1;
-    signed int _tmp_cp_ret2;
-    ((void)(_X12_retval_maini_1=(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , _tmp_cp_ret2)) /* ?{} */);
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        signed int _tmp_cp_ret2;
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object0))_X11_destructorFv_i_intrinsic___1) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(_X12_retval_maini_1=(((void)(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
Index: tests/.expect/declarationSpecifier.x86.txt
===================================================================
--- tests/.expect/declarationSpecifier.x86.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/declarationSpecifier.x86.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -16,20 +16,38 @@
 static inline void _X12_constructorFv_S12__anonymous0i_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, struct __anonymous0 _X4_srcS12__anonymous0_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous0 _X16_operator_assignFS12__anonymous0_S12__anonymous0S12__anonymous0_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, struct __anonymous0 _X4_srcS12__anonymous0_1){
     struct __anonymous0 _X4_retS12__anonymous0_1;
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X4_srcS12__anonymous0_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous0S12__anonymous0_autogen___1((&_X4_retS12__anonymous0_1), (*_X4_dstS12__anonymous0_1)));
+    }
+
     return _X4_retS12__anonymous0_1;
 }
 static inline void _X12_constructorFv_S12__anonymous0i_autogen___1(struct __anonymous0 *_X4_dstS12__anonymous0_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous0_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous0 _X3x10KVS12__anonymous0_1;
@@ -43,20 +61,38 @@
 static inline void _X12_constructorFv_S12__anonymous1i_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous1S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, struct __anonymous1 _X4_srcS12__anonymous1_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous1 _X16_operator_assignFS12__anonymous1_S12__anonymous1S12__anonymous1_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, struct __anonymous1 _X4_srcS12__anonymous1_1){
     struct __anonymous1 _X4_retS12__anonymous1_1;
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous1S12__anonymous1_autogen___1((&_X4_retS12__anonymous1_1), (*_X4_dstS12__anonymous1_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X4_srcS12__anonymous1_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous1S12__anonymous1_autogen___1((&_X4_retS12__anonymous1_1), (*_X4_dstS12__anonymous1_1)));
+    }
+
     return _X4_retS12__anonymous1_1;
 }
 static inline void _X12_constructorFv_S12__anonymous1i_autogen___1(struct __anonymous1 *_X4_dstS12__anonymous1_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous1_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous1 _X3x11KVS12__anonymous1_1;
@@ -70,20 +106,38 @@
 static inline void _X12_constructorFv_S12__anonymous2i_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, struct __anonymous2 _X4_srcS12__anonymous2_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous2 _X16_operator_assignFS12__anonymous2_S12__anonymous2S12__anonymous2_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, struct __anonymous2 _X4_srcS12__anonymous2_1){
     struct __anonymous2 _X4_retS12__anonymous2_1;
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X4_srcS12__anonymous2_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous2S12__anonymous2_autogen___1((&_X4_retS12__anonymous2_1), (*_X4_dstS12__anonymous2_1)));
+    }
+
     return _X4_retS12__anonymous2_1;
 }
 static inline void _X12_constructorFv_S12__anonymous2i_autogen___1(struct __anonymous2 *_X4_dstS12__anonymous2_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous2_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous2 _X3x12KVS12__anonymous2_1;
@@ -97,20 +151,38 @@
 static inline void _X12_constructorFv_S12__anonymous3i_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, struct __anonymous3 _X4_srcS12__anonymous3_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous3 _X16_operator_assignFS12__anonymous3_S12__anonymous3S12__anonymous3_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, struct __anonymous3 _X4_srcS12__anonymous3_1){
     struct __anonymous3 _X4_retS12__anonymous3_1;
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___1((&_X4_retS12__anonymous3_1), (*_X4_dstS12__anonymous3_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X4_srcS12__anonymous3_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous3S12__anonymous3_autogen___1((&_X4_retS12__anonymous3_1), (*_X4_dstS12__anonymous3_1)));
+    }
+
     return _X4_retS12__anonymous3_1;
 }
 static inline void _X12_constructorFv_S12__anonymous3i_autogen___1(struct __anonymous3 *_X4_dstS12__anonymous3_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous3_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous3 _X3x13KVS12__anonymous3_1;
@@ -124,20 +196,38 @@
 static inline void _X12_constructorFv_S12__anonymous4i_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous4S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, struct __anonymous4 _X4_srcS12__anonymous4_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous4 _X16_operator_assignFS12__anonymous4_S12__anonymous4S12__anonymous4_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, struct __anonymous4 _X4_srcS12__anonymous4_1){
     struct __anonymous4 _X4_retS12__anonymous4_1;
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous4S12__anonymous4_autogen___1((&_X4_retS12__anonymous4_1), (*_X4_dstS12__anonymous4_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X4_srcS12__anonymous4_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous4S12__anonymous4_autogen___1((&_X4_retS12__anonymous4_1), (*_X4_dstS12__anonymous4_1)));
+    }
+
     return _X4_retS12__anonymous4_1;
 }
 static inline void _X12_constructorFv_S12__anonymous4i_autogen___1(struct __anonymous4 *_X4_dstS12__anonymous4_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous4_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous4 _X3x14KVS12__anonymous4_1;
@@ -151,20 +241,38 @@
 static inline void _X12_constructorFv_S12__anonymous5i_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous5S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, struct __anonymous5 _X4_srcS12__anonymous5_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous5 _X16_operator_assignFS12__anonymous5_S12__anonymous5S12__anonymous5_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, struct __anonymous5 _X4_srcS12__anonymous5_1){
     struct __anonymous5 _X4_retS12__anonymous5_1;
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous5S12__anonymous5_autogen___1((&_X4_retS12__anonymous5_1), (*_X4_dstS12__anonymous5_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X4_srcS12__anonymous5_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous5S12__anonymous5_autogen___1((&_X4_retS12__anonymous5_1), (*_X4_dstS12__anonymous5_1)));
+    }
+
     return _X4_retS12__anonymous5_1;
 }
 static inline void _X12_constructorFv_S12__anonymous5i_autogen___1(struct __anonymous5 *_X4_dstS12__anonymous5_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous5_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous5 _X3x15KVS12__anonymous5_1;
@@ -178,20 +286,38 @@
 static inline void _X12_constructorFv_S12__anonymous6i_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous6S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, struct __anonymous6 _X4_srcS12__anonymous6_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous6 _X16_operator_assignFS12__anonymous6_S12__anonymous6S12__anonymous6_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, struct __anonymous6 _X4_srcS12__anonymous6_1){
     struct __anonymous6 _X4_retS12__anonymous6_1;
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous6S12__anonymous6_autogen___1((&_X4_retS12__anonymous6_1), (*_X4_dstS12__anonymous6_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X4_srcS12__anonymous6_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous6S12__anonymous6_autogen___1((&_X4_retS12__anonymous6_1), (*_X4_dstS12__anonymous6_1)));
+    }
+
     return _X4_retS12__anonymous6_1;
 }
 static inline void _X12_constructorFv_S12__anonymous6i_autogen___1(struct __anonymous6 *_X4_dstS12__anonymous6_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous6_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous6 _X3x16KVS12__anonymous6_1;
@@ -205,20 +331,38 @@
 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous7 _X16_operator_assignFS12__anonymous7_S12__anonymous7S12__anonymous7_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, struct __anonymous7 _X4_srcS12__anonymous7_1){
     struct __anonymous7 _X4_retS12__anonymous7_1;
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1));
-    ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X4_srcS12__anonymous7_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous7S12__anonymous7_autogen___1((&_X4_retS12__anonymous7_1), (*_X4_dstS12__anonymous7_1)));
+    }
+
     return _X4_retS12__anonymous7_1;
 }
 static inline void _X12_constructorFv_S12__anonymous7i_autogen___1(struct __anonymous7 *_X4_dstS12__anonymous7_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous7_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous7 _X3x17KVS12__anonymous7_1;
@@ -240,20 +384,38 @@
 static inline void _X12_constructorFv_S12__anonymous8s_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous8S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, struct __anonymous8 _X4_srcS12__anonymous8_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous8 _X16_operator_assignFS12__anonymous8_S12__anonymous8S12__anonymous8_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, struct __anonymous8 _X4_srcS12__anonymous8_1){
     struct __anonymous8 _X4_retS12__anonymous8_1;
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1));
-    ((void)_X12_constructorFv_S12__anonymous8S12__anonymous8_autogen___1((&_X4_retS12__anonymous8_1), (*_X4_dstS12__anonymous8_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X4_srcS12__anonymous8_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous8S12__anonymous8_autogen___1((&_X4_retS12__anonymous8_1), (*_X4_dstS12__anonymous8_1)));
+    }
+
     return _X4_retS12__anonymous8_1;
 }
 static inline void _X12_constructorFv_S12__anonymous8s_autogen___1(struct __anonymous8 *_X4_dstS12__anonymous8_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous8_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous8 _X3x29KVS12__anonymous8_1;
@@ -267,20 +429,38 @@
 static inline void _X12_constructorFv_S12__anonymous9s_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S12__anonymous9S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, struct __anonymous9 _X4_srcS12__anonymous9_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous9 _X16_operator_assignFS12__anonymous9_S12__anonymous9S12__anonymous9_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, struct __anonymous9 _X4_srcS12__anonymous9_1){
     struct __anonymous9 _X4_retS12__anonymous9_1;
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1));
-    ((void)_X12_constructorFv_S12__anonymous9S12__anonymous9_autogen___1((&_X4_retS12__anonymous9_1), (*_X4_dstS12__anonymous9_1)));
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X4_srcS12__anonymous9_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S12__anonymous9S12__anonymous9_autogen___1((&_X4_retS12__anonymous9_1), (*_X4_dstS12__anonymous9_1)));
+    }
+
     return _X4_retS12__anonymous9_1;
 }
 static inline void _X12_constructorFv_S12__anonymous9s_autogen___1(struct __anonymous9 *_X4_dstS12__anonymous9_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS12__anonymous9_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous9 _X3x30KVS12__anonymous9_1;
@@ -294,20 +474,38 @@
 static inline void _X12_constructorFv_S13__anonymous10s_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous10S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, struct __anonymous10 _X4_srcS13__anonymous10_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous10 _X16_operator_assignFS13__anonymous10_S13__anonymous10S13__anonymous10_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, struct __anonymous10 _X4_srcS13__anonymous10_1){
     struct __anonymous10 _X4_retS13__anonymous10_1;
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous10S13__anonymous10_autogen___1((&_X4_retS13__anonymous10_1), (*_X4_dstS13__anonymous10_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X4_srcS13__anonymous10_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous10S13__anonymous10_autogen___1((&_X4_retS13__anonymous10_1), (*_X4_dstS13__anonymous10_1)));
+    }
+
     return _X4_retS13__anonymous10_1;
 }
 static inline void _X12_constructorFv_S13__anonymous10s_autogen___1(struct __anonymous10 *_X4_dstS13__anonymous10_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous10_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 volatile const struct __anonymous10 _X3x31KVS13__anonymous10_1;
@@ -321,20 +519,38 @@
 static inline void _X12_constructorFv_S13__anonymous11s_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous11S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, struct __anonymous11 _X4_srcS13__anonymous11_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous11 _X16_operator_assignFS13__anonymous11_S13__anonymous11S13__anonymous11_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, struct __anonymous11 _X4_srcS13__anonymous11_1){
     struct __anonymous11 _X4_retS13__anonymous11_1;
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous11S13__anonymous11_autogen___1((&_X4_retS13__anonymous11_1), (*_X4_dstS13__anonymous11_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X4_srcS13__anonymous11_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous11S13__anonymous11_autogen___1((&_X4_retS13__anonymous11_1), (*_X4_dstS13__anonymous11_1)));
+    }
+
     return _X4_retS13__anonymous11_1;
 }
 static inline void _X12_constructorFv_S13__anonymous11s_autogen___1(struct __anonymous11 *_X4_dstS13__anonymous11_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous11_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous11 _X3x32KVS13__anonymous11_1;
@@ -348,20 +564,38 @@
 static inline void _X12_constructorFv_S13__anonymous12s_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous12S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, struct __anonymous12 _X4_srcS13__anonymous12_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous12 _X16_operator_assignFS13__anonymous12_S13__anonymous12S13__anonymous12_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, struct __anonymous12 _X4_srcS13__anonymous12_1){
     struct __anonymous12 _X4_retS13__anonymous12_1;
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous12S13__anonymous12_autogen___1((&_X4_retS13__anonymous12_1), (*_X4_dstS13__anonymous12_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X4_srcS13__anonymous12_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous12S13__anonymous12_autogen___1((&_X4_retS13__anonymous12_1), (*_X4_dstS13__anonymous12_1)));
+    }
+
     return _X4_retS13__anonymous12_1;
 }
 static inline void _X12_constructorFv_S13__anonymous12s_autogen___1(struct __anonymous12 *_X4_dstS13__anonymous12_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous12_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous12 _X3x33KVS13__anonymous12_1;
@@ -375,20 +609,38 @@
 static inline void _X12_constructorFv_S13__anonymous13s_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous13S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, struct __anonymous13 _X4_srcS13__anonymous13_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous13 _X16_operator_assignFS13__anonymous13_S13__anonymous13S13__anonymous13_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, struct __anonymous13 _X4_srcS13__anonymous13_1){
     struct __anonymous13 _X4_retS13__anonymous13_1;
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous13S13__anonymous13_autogen___1((&_X4_retS13__anonymous13_1), (*_X4_dstS13__anonymous13_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X4_srcS13__anonymous13_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous13S13__anonymous13_autogen___1((&_X4_retS13__anonymous13_1), (*_X4_dstS13__anonymous13_1)));
+    }
+
     return _X4_retS13__anonymous13_1;
 }
 static inline void _X12_constructorFv_S13__anonymous13s_autogen___1(struct __anonymous13 *_X4_dstS13__anonymous13_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous13_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous13 _X3x34KVS13__anonymous13_1;
@@ -402,20 +654,38 @@
 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous14 _X16_operator_assignFS13__anonymous14_S13__anonymous14S13__anonymous14_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, struct __anonymous14 _X4_srcS13__anonymous14_1){
     struct __anonymous14 _X4_retS13__anonymous14_1;
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X4_srcS13__anonymous14_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous14S13__anonymous14_autogen___1((&_X4_retS13__anonymous14_1), (*_X4_dstS13__anonymous14_1)));
+    }
+
     return _X4_retS13__anonymous14_1;
 }
 static inline void _X12_constructorFv_S13__anonymous14s_autogen___1(struct __anonymous14 *_X4_dstS13__anonymous14_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous14_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous14 _X3x35KVS13__anonymous14_1;
@@ -429,20 +699,38 @@
 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1);
 static inline void _X12_constructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous15 _X16_operator_assignFS13__anonymous15_S13__anonymous15S13__anonymous15_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, struct __anonymous15 _X4_srcS13__anonymous15_1){
     struct __anonymous15 _X4_retS13__anonymous15_1;
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1));
-    ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X4_srcS13__anonymous15_1._X1is_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous15S13__anonymous15_autogen___1((&_X4_retS13__anonymous15_1), (*_X4_dstS13__anonymous15_1)));
+    }
+
     return _X4_retS13__anonymous15_1;
 }
 static inline void _X12_constructorFv_S13__anonymous15s_autogen___1(struct __anonymous15 *_X4_dstS13__anonymous15_1, signed short int _X1is_1){
-    ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X1is_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous15_1)._X1is_1=_X1is_1) /* ?{} */);
+    }
+
 }
 static volatile const struct __anonymous15 _X3x36KVS13__anonymous15_1;
@@ -472,20 +760,38 @@
 static inline void _X12_constructorFv_S13__anonymous16i_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous16S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, struct __anonymous16 _X4_srcS13__anonymous16_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous16 _X16_operator_assignFS13__anonymous16_S13__anonymous16S13__anonymous16_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, struct __anonymous16 _X4_srcS13__anonymous16_1){
     struct __anonymous16 _X4_retS13__anonymous16_1;
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous16S13__anonymous16_autogen___1((&_X4_retS13__anonymous16_1), (*_X4_dstS13__anonymous16_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X4_srcS13__anonymous16_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous16S13__anonymous16_autogen___1((&_X4_retS13__anonymous16_1), (*_X4_dstS13__anonymous16_1)));
+    }
+
     return _X4_retS13__anonymous16_1;
 }
 static inline void _X12_constructorFv_S13__anonymous16i_autogen___1(struct __anonymous16 *_X4_dstS13__anonymous16_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous16_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous16 _X3f31FS13__anonymous16___1();
@@ -499,20 +805,38 @@
 static inline void _X12_constructorFv_S13__anonymous17i_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous17S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, struct __anonymous17 _X4_srcS13__anonymous17_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous17 _X16_operator_assignFS13__anonymous17_S13__anonymous17S13__anonymous17_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, struct __anonymous17 _X4_srcS13__anonymous17_1){
     struct __anonymous17 _X4_retS13__anonymous17_1;
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous17S13__anonymous17_autogen___1((&_X4_retS13__anonymous17_1), (*_X4_dstS13__anonymous17_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X4_srcS13__anonymous17_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous17S13__anonymous17_autogen___1((&_X4_retS13__anonymous17_1), (*_X4_dstS13__anonymous17_1)));
+    }
+
     return _X4_retS13__anonymous17_1;
 }
 static inline void _X12_constructorFv_S13__anonymous17i_autogen___1(struct __anonymous17 *_X4_dstS13__anonymous17_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous17_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous17 _X3f32FS13__anonymous17___1();
@@ -526,20 +850,38 @@
 static inline void _X12_constructorFv_S13__anonymous18i_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous18S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, struct __anonymous18 _X4_srcS13__anonymous18_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous18 _X16_operator_assignFS13__anonymous18_S13__anonymous18S13__anonymous18_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, struct __anonymous18 _X4_srcS13__anonymous18_1){
     struct __anonymous18 _X4_retS13__anonymous18_1;
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous18S13__anonymous18_autogen___1((&_X4_retS13__anonymous18_1), (*_X4_dstS13__anonymous18_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X4_srcS13__anonymous18_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous18S13__anonymous18_autogen___1((&_X4_retS13__anonymous18_1), (*_X4_dstS13__anonymous18_1)));
+    }
+
     return _X4_retS13__anonymous18_1;
 }
 static inline void _X12_constructorFv_S13__anonymous18i_autogen___1(struct __anonymous18 *_X4_dstS13__anonymous18_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous18_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous18 _X3f33FS13__anonymous18___1();
@@ -553,20 +895,38 @@
 static inline void _X12_constructorFv_S13__anonymous19i_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous19S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, struct __anonymous19 _X4_srcS13__anonymous19_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous19 _X16_operator_assignFS13__anonymous19_S13__anonymous19S13__anonymous19_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, struct __anonymous19 _X4_srcS13__anonymous19_1){
     struct __anonymous19 _X4_retS13__anonymous19_1;
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous19S13__anonymous19_autogen___1((&_X4_retS13__anonymous19_1), (*_X4_dstS13__anonymous19_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X4_srcS13__anonymous19_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous19S13__anonymous19_autogen___1((&_X4_retS13__anonymous19_1), (*_X4_dstS13__anonymous19_1)));
+    }
+
     return _X4_retS13__anonymous19_1;
 }
 static inline void _X12_constructorFv_S13__anonymous19i_autogen___1(struct __anonymous19 *_X4_dstS13__anonymous19_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous19_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous19 _X3f34FS13__anonymous19___1();
@@ -580,20 +940,38 @@
 static inline void _X12_constructorFv_S13__anonymous20i_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous20S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, struct __anonymous20 _X4_srcS13__anonymous20_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous20 _X16_operator_assignFS13__anonymous20_S13__anonymous20S13__anonymous20_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, struct __anonymous20 _X4_srcS13__anonymous20_1){
     struct __anonymous20 _X4_retS13__anonymous20_1;
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous20S13__anonymous20_autogen___1((&_X4_retS13__anonymous20_1), (*_X4_dstS13__anonymous20_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X4_srcS13__anonymous20_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous20S13__anonymous20_autogen___1((&_X4_retS13__anonymous20_1), (*_X4_dstS13__anonymous20_1)));
+    }
+
     return _X4_retS13__anonymous20_1;
 }
 static inline void _X12_constructorFv_S13__anonymous20i_autogen___1(struct __anonymous20 *_X4_dstS13__anonymous20_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous20_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous20 _X3f35FS13__anonymous20___1();
@@ -607,20 +985,38 @@
 static inline void _X12_constructorFv_S13__anonymous21i_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous21S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, struct __anonymous21 _X4_srcS13__anonymous21_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous21 _X16_operator_assignFS13__anonymous21_S13__anonymous21S13__anonymous21_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, struct __anonymous21 _X4_srcS13__anonymous21_1){
     struct __anonymous21 _X4_retS13__anonymous21_1;
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous21S13__anonymous21_autogen___1((&_X4_retS13__anonymous21_1), (*_X4_dstS13__anonymous21_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X4_srcS13__anonymous21_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous21S13__anonymous21_autogen___1((&_X4_retS13__anonymous21_1), (*_X4_dstS13__anonymous21_1)));
+    }
+
     return _X4_retS13__anonymous21_1;
 }
 static inline void _X12_constructorFv_S13__anonymous21i_autogen___1(struct __anonymous21 *_X4_dstS13__anonymous21_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous21_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous21 _X3f36FS13__anonymous21___1();
@@ -634,20 +1030,38 @@
 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous22 _X16_operator_assignFS13__anonymous22_S13__anonymous22S13__anonymous22_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, struct __anonymous22 _X4_srcS13__anonymous22_1){
     struct __anonymous22 _X4_retS13__anonymous22_1;
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1((&_X4_retS13__anonymous22_1), (*_X4_dstS13__anonymous22_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X4_srcS13__anonymous22_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous22S13__anonymous22_autogen___1((&_X4_retS13__anonymous22_1), (*_X4_dstS13__anonymous22_1)));
+    }
+
     return _X4_retS13__anonymous22_1;
 }
 static inline void _X12_constructorFv_S13__anonymous22i_autogen___1(struct __anonymous22 *_X4_dstS13__anonymous22_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous22_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous22 _X3f37FS13__anonymous22___1();
@@ -661,20 +1075,38 @@
 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct __anonymous23 _X16_operator_assignFS13__anonymous23_S13__anonymous23S13__anonymous23_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, struct __anonymous23 _X4_srcS13__anonymous23_1){
     struct __anonymous23 _X4_retS13__anonymous23_1;
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1));
-    ((void)_X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1((&_X4_retS13__anonymous23_1), (*_X4_dstS13__anonymous23_1)));
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X4_srcS13__anonymous23_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S13__anonymous23S13__anonymous23_autogen___1((&_X4_retS13__anonymous23_1), (*_X4_dstS13__anonymous23_1)));
+    }
+
     return _X4_retS13__anonymous23_1;
 }
 static inline void _X12_constructorFv_S13__anonymous23i_autogen___1(struct __anonymous23 *_X4_dstS13__anonymous23_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS13__anonymous23_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 static inline volatile const struct __anonymous23 _X3f38FS13__anonymous23___1();
@@ -689,7 +1121,13 @@
 signed int _X4mainFi_iPPKc__1(signed int _X4argci_1, const char **_X4argvPPKc_1){
     __attribute__ ((unused)) signed int _X12_retval_maini_1;
-    ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
-    ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
@@ -698,7 +1136,11 @@
 signed int main(signed int _X4argci_1, char **_X4argvPPc_1, char **_X4envpPPc_1){
     __attribute__ ((unused)) signed int _X12_retval_maini_1;
-    signed int _tmp_cp_ret2;
-    ((void)(_X12_retval_maini_1=(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , _tmp_cp_ret2)) /* ?{} */);
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        signed int _tmp_cp_ret2;
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object0))_X11_destructorFv_i_intrinsic___1) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(_X12_retval_maini_1=(((void)(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
Index: tests/.expect/extension.x64.txt
===================================================================
--- tests/.expect/extension.x64.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/extension.x64.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -15,40 +15,106 @@
 static inline void _X12_constructorFv_S1Siii_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1, signed int _X1bi_1, signed int _X1ci_1);
 static inline void _X12_constructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ^?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1) /* ^?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ai_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1) /* ^?{} */);
+    }
+
 }
 static inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
     struct S _X4_retS1S_1;
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1));
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1));
-    ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1));
-    ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1));
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1));
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    }
+
     return _X4_retS1S_1;
 }
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1Sii_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1, signed int _X1bi_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1Siii_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1, signed int _X1bi_1, signed int _X1ci_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1=_X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1=_X1ci_1) /* ?{} */);
+    }
+
 }
 __extension__ union U {
@@ -65,5 +131,8 @@
 }
 static inline void _X12_constructorFv_U1UU1U_autogen___1(union U *_X4_dstU1U_1, union U _X4_srcU1U_1){
-    ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
+    {
+        ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
+    }
+
 }
 static inline void _X11_destructorFv_U1U_autogen___1(__attribute__ ((unused)) union U *_X4_dstU1U_1){
@@ -71,10 +140,19 @@
 static inline union U _X16_operator_assignFU1U_U1UU1U_autogen___1(union U *_X4_dstU1U_1, union U _X4_srcU1U_1){
     union U _X4_retU1U_1;
-    ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
-    ((void)_X12_constructorFv_U1UU1U_autogen___1((&_X4_retU1U_1), (*_X4_dstU1U_1)));
+    {
+        ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
+    }
+
+    {
+        ((void)_X12_constructorFv_U1UU1U_autogen___1((&_X4_retU1U_1), (*_X4_dstU1U_1)));
+    }
+
     return _X4_retU1U_1;
 }
 static inline void _X12_constructorFv_U1Ui_autogen___1(union U *_X4_dstU1U_1, signed int _X1ai_1){
-    ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X1ai_1)), sizeof(signed int )));
+    {
+        ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X1ai_1)), sizeof(signed int )));
+    }
+
 }
 __extension__ enum E {
@@ -97,105 +175,322 @@
     };
     inline void _X12_constructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        }
+
     }
     inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
         struct S _X4_retS1S_2;
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2));
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2));
-        ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2));
-        ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        }
+
         return _X4_retS1S_2;
     }
     inline void _X12_constructorFv_S1Si_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Sii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Siii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SiiiPi_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2, signed int *_X1xPi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SiiiPiPi_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2, signed int *_X1xPi_2, signed int *_X1yPi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SiiiPiPiPi_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2, signed int *_X1xPi_2, signed int *_X1yPi_2, signed int *_X1zPi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2=_X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2=_X1zPi_2) /* ?{} */);
+        }
+
     }
     signed int _X1ii_2 = (__extension__ _X1ai_1+__extension__ 3);
-    ((void)__extension__ 3);
-    ((void)__extension__ _X1ai_1);
+    {
+        ((void)__extension__ 3);
+    }
+
+    {
+        ((void)__extension__ _X1ai_1);
+    }
+
     __extension__ signed int _X1ai_2;
     __extension__ signed int _X1bi_2;
     __extension__ signed int _X1ci_2;
-    ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
-    signed int _tmp_cp_ret2;
-    ((void)(((void)(_tmp_cp_ret2=__extension__ _X4fredFi_i__1(3))) , _tmp_cp_ret2));
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
+    {
+        signed int _tmp_cp_ret2;
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object0))_X11_destructorFv_i_intrinsic___1) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(((void)(((void)(_tmp_cp_ret2=__extension__ _X4fredFi_i__1(3))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2));
+    }
+
     __extension__ signed int _X4maryFi_i__2(signed int _X1pi_2){
         __attribute__ ((unused)) signed int _X12_retval_maryi_2;
     }
-    ((void)__extension__ sizeof(3));
-    ((void)__extension__ ((3!=((signed int )0)) || (4!=((signed int )0))));
-    ((void)__extension__ __alignof__(__extension__ _X1ai_2));
-    ((void)((__extension__ _X1ai_2!=((signed int )0)) || (((__extension__ _X1bi_2!=((signed int )0)) && (__extension__ _X1ci_2!=((signed int )0)))!=((signed int )0))));
-    ((void)(((__extension__ _X1ai_2>__extension__ _X1bi_2)!=((signed int )0)) ? __extension__ _X1ci_2 : __extension__ _X1ci_2));
-    ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
-    ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
-}
+    {
+        ((void)__extension__ sizeof(3));
+    }
+
+    {
+        ((void)__extension__ ((3!=((signed int )0)) || (4!=((signed int )0))));
+    }
+
+    {
+        ((void)__extension__ __alignof__(__extension__ _X1ai_2));
+    }
+
+    {
+        ((void)((__extension__ _X1ai_2!=((signed int )0)) || (((__extension__ _X1bi_2!=((signed int )0)) && (__extension__ _X1ci_2!=((signed int )0)))!=((signed int )0))));
+    }
+
+    {
+        ((void)(((__extension__ _X1ai_2>__extension__ _X1bi_2)!=((signed int )0)) ? __extension__ _X1ci_2 : __extension__ _X1ci_2));
+    }
+
+    {
+        ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
+    {
+        ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
+    }
+
+}
Index: tests/.expect/extension.x86.txt
===================================================================
--- tests/.expect/extension.x86.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/extension.x86.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -15,40 +15,106 @@
 static inline void _X12_constructorFv_S1Siii_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1, signed int _X1bi_1, signed int _X1ci_1);
 static inline void _X12_constructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ^?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1) /* ^?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ai_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1) /* ^?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1) /* ^?{} */);
+    }
+
 }
 static inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
     struct S _X4_retS1S_1;
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1));
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1));
-    ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1));
-    ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X4_srcS1S_1._X1ai_1));
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X4_srcS1S_1._X1bi_1));
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1=_X4_srcS1S_1._X1ci_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    }
+
     return _X4_retS1S_1;
 }
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1Sii_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1, signed int _X1bi_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1Siii_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ai_1, signed int _X1bi_1, signed int _X1ci_1){
-    ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
-    ((void)((*_X4_dstS1S_1)._X1ci_1=_X1ci_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ai_1=_X1ai_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1bi_1=_X1bi_1) /* ?{} */);
+    }
+
+    {
+        ((void)((*_X4_dstS1S_1)._X1ci_1=_X1ci_1) /* ?{} */);
+    }
+
 }
 __extension__ union U {
@@ -65,5 +131,8 @@
 }
 static inline void _X12_constructorFv_U1UU1U_autogen___1(union U *_X4_dstU1U_1, union U _X4_srcU1U_1){
-    ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
+    {
+        ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
+    }
+
 }
 static inline void _X11_destructorFv_U1U_autogen___1(__attribute__ ((unused)) union U *_X4_dstU1U_1){
@@ -71,10 +140,19 @@
 static inline union U _X16_operator_assignFU1U_U1UU1U_autogen___1(union U *_X4_dstU1U_1, union U _X4_srcU1U_1){
     union U _X4_retU1U_1;
-    ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
-    ((void)_X12_constructorFv_U1UU1U_autogen___1((&_X4_retU1U_1), (*_X4_dstU1U_1)));
+    {
+        ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X4_srcU1U_1)), sizeof(union U )));
+    }
+
+    {
+        ((void)_X12_constructorFv_U1UU1U_autogen___1((&_X4_retU1U_1), (*_X4_dstU1U_1)));
+    }
+
     return _X4_retU1U_1;
 }
 static inline void _X12_constructorFv_U1Ui_autogen___1(union U *_X4_dstU1U_1, signed int _X1ai_1){
-    ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X1ai_1)), sizeof(signed int )));
+    {
+        ((void)__builtin_memcpy(((void *)_X4_dstU1U_1), ((const void *)(&_X1ai_1)), sizeof(signed int )));
+    }
+
 }
 __extension__ enum E {
@@ -97,105 +175,322 @@
     };
     inline void _X12_constructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        }
+
     }
     inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
         struct S _X4_retS1S_2;
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2));
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2));
-        ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2));
-        ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X4_srcS1S_2._X1xPi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X4_srcS1S_2._X1yPi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2=_X4_srcS1S_2._X1zPi_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        }
+
         return _X4_retS1S_2;
     }
     inline void _X12_constructorFv_S1Si_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Sii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Siii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SiiiPi_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2, signed int *_X1xPi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SiiiPiPi_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2, signed int *_X1xPi_2, signed int *_X1yPi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SiiiPiPiPi_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2, signed int *_X1xPi_2, signed int *_X1yPi_2, signed int *_X1zPi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1zPi_2=_X1zPi_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1xPi_2=_X1xPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1yPi_2=_X1yPi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1zPi_2=_X1zPi_2) /* ?{} */);
+        }
+
     }
     signed int _X1ii_2 = (__extension__ _X1ai_1+__extension__ 3);
-    ((void)__extension__ 3);
-    ((void)__extension__ _X1ai_1);
+    {
+        ((void)__extension__ 3);
+    }
+
+    {
+        ((void)__extension__ _X1ai_1);
+    }
+
     __extension__ signed int _X1ai_2;
     __extension__ signed int _X1bi_2;
     __extension__ signed int _X1ci_2;
-    ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
-    signed int _tmp_cp_ret2;
-    ((void)(((void)(_tmp_cp_ret2=__extension__ _X4fredFi_i__1(3))) , _tmp_cp_ret2));
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
+    {
+        signed int _tmp_cp_ret2;
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object0))_X11_destructorFv_i_intrinsic___1) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(((void)(((void)(_tmp_cp_ret2=__extension__ _X4fredFi_i__1(3))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2));
+    }
+
     __extension__ signed int _X4maryFi_i__2(signed int _X1pi_2){
         __attribute__ ((unused)) signed int _X12_retval_maryi_2;
     }
-    ((void)__extension__ sizeof(3));
-    ((void)__extension__ ((3!=((signed int )0)) || (4!=((signed int )0))));
-    ((void)__extension__ __alignof__(__extension__ _X1ai_2));
-    ((void)((__extension__ _X1ai_2!=((signed int )0)) || (((__extension__ _X1bi_2!=((signed int )0)) && (__extension__ _X1ci_2!=((signed int )0)))!=((signed int )0))));
-    ((void)(((__extension__ _X1ai_2>__extension__ _X1bi_2)!=((signed int )0)) ? __extension__ _X1ci_2 : __extension__ _X1ci_2));
-    ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
-    ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
-}
+    {
+        ((void)__extension__ sizeof(3));
+    }
+
+    {
+        ((void)__extension__ ((3!=((signed int )0)) || (4!=((signed int )0))));
+    }
+
+    {
+        ((void)__extension__ __alignof__(__extension__ _X1ai_2));
+    }
+
+    {
+        ((void)((__extension__ _X1ai_2!=((signed int )0)) || (((__extension__ _X1bi_2!=((signed int )0)) && (__extension__ _X1ci_2!=((signed int )0)))!=((signed int )0))));
+    }
+
+    {
+        ((void)(((__extension__ _X1ai_2>__extension__ _X1bi_2)!=((signed int )0)) ? __extension__ _X1ci_2 : __extension__ _X1ci_2));
+    }
+
+    {
+        ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
+    {
+        ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
+    }
+
+}
Index: tests/.expect/functions.x64.txt
===================================================================
--- tests/.expect/functions.x64.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/functions.x64.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -3,7 +3,16 @@
 signed int _X1fFi_Fi__Fi_i_Fi__Fi_i_Fv____1(signed int (*__anonymous_object0)(void), signed int (*__anonymous_object1)(signed int __anonymous_object2), signed int (*__anonymous_object3)(void), signed int (*__anonymous_object4)(signed int __anonymous_object5), void (*_X1gFv___1)(void)){
     __attribute__ ((unused)) signed int _X9_retval_fi_1;
-    ((void)(*_X1gFv___1)());
-    ((void)_X1gFv___1());
-    ((void)(_X1gFv___1=_X1hFv___1));
+    {
+        ((void)(*_X1gFv___1)());
+    }
+
+    {
+        ((void)_X1gFv___1());
+    }
+
+    {
+        ((void)(_X1gFv___1=_X1hFv___1));
+    }
+
 }
 signed int _X2f1Fi___1(){
@@ -183,5 +192,8 @@
 const double _X3fooFd_d__1(double __anonymous_object20){
     __attribute__ ((unused)) const double _X11_retval_fooKd_1;
-    ((void)((*((double *)(&_X11_retval_fooKd_1)))=3.0) /* ?{} */);
+    {
+        ((void)((*((double *)(&_X11_retval_fooKd_1)))=3.0) /* ?{} */);
+    }
+
     return _X11_retval_fooKd_1;
 }
@@ -195,20 +207,38 @@
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
     struct S _X4_retS1S_1;
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
-    ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    }
+
     return _X4_retS1S_1;
 }
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 struct S _X3rtnFS1S_i__1(signed int __anonymous_object21){
Index: tests/.expect/functions.x86.txt
===================================================================
--- tests/.expect/functions.x86.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/functions.x86.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -3,7 +3,16 @@
 signed int _X1fFi_Fi__Fi_i_Fi__Fi_i_Fv____1(signed int (*__anonymous_object0)(void), signed int (*__anonymous_object1)(signed int __anonymous_object2), signed int (*__anonymous_object3)(void), signed int (*__anonymous_object4)(signed int __anonymous_object5), void (*_X1gFv___1)(void)){
     __attribute__ ((unused)) signed int _X9_retval_fi_1;
-    ((void)(*_X1gFv___1)());
-    ((void)_X1gFv___1());
-    ((void)(_X1gFv___1=_X1hFv___1));
+    {
+        ((void)(*_X1gFv___1)());
+    }
+
+    {
+        ((void)_X1gFv___1());
+    }
+
+    {
+        ((void)(_X1gFv___1=_X1hFv___1));
+    }
+
 }
 signed int _X2f1Fi___1(){
@@ -183,5 +192,8 @@
 const double _X3fooFd_d__1(double __anonymous_object20){
     __attribute__ ((unused)) const double _X11_retval_fooKd_1;
-    ((void)((*((double *)(&_X11_retval_fooKd_1)))=3.0) /* ?{} */);
+    {
+        ((void)((*((double *)(&_X11_retval_fooKd_1)))=3.0) /* ?{} */);
+    }
+
     return _X11_retval_fooKd_1;
 }
@@ -195,20 +207,38 @@
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1);
 static inline void _X12_constructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X12_constructorFv_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1) /* ?{} */);
+    }
+
 }
 static inline void _X11_destructorFv_S1S_autogen___1(struct S *_X4_dstS1S_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1) /* ^?{} */);
+    }
+
 }
 static inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___1(struct S *_X4_dstS1S_1, struct S _X4_srcS1S_1){
     struct S _X4_retS1S_1;
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
-    ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X4_srcS1S_1._X1ii_1));
+    }
+
+    {
+        ((void)_X12_constructorFv_S1SS1S_autogen___1((&_X4_retS1S_1), (*_X4_dstS1S_1)));
+    }
+
     return _X4_retS1S_1;
 }
 static inline void _X12_constructorFv_S1Si_autogen___1(struct S *_X4_dstS1S_1, signed int _X1ii_1){
-    ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    {
+        ((void)((*_X4_dstS1S_1)._X1ii_1=_X1ii_1) /* ?{} */);
+    }
+
 }
 struct S _X3rtnFS1S_i__1(signed int __anonymous_object21){
Index: tests/.expect/gccExtensions.x64.txt
===================================================================
--- tests/.expect/gccExtensions.x64.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/gccExtensions.x64.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -38,40 +38,106 @@
     };
     inline void _X12_constructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        }
+
     }
     inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
         struct S _X4_retS1S_2;
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
-        ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        }
+
         return _X4_retS1S_2;
     }
     inline void _X12_constructorFv_S1Si_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Sii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Siii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
     }
     signed int _X1ii_2 = __extension__ 3;
@@ -79,7 +145,16 @@
     __extension__ signed int _X1bi_2;
     __extension__ signed int _X1ci_2;
-    ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
-    ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
-    ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    {
+        ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
+    }
+
+    {
+        ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
+    {
+        ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
     signed int _X2a1i_2;
     const signed int _X2a2Ki_2;
@@ -96,20 +171,38 @@
     };
     inline void _X12_constructorFv_S2s2_autogen___2(struct s2 *_X4_dstS2s2_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S2s2S2s2_autogen___2(struct s2 *_X4_dstS2s2_2, struct s2 _X4_srcS2s2_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S2s2_autogen___2(struct s2 *_X4_dstS2s2_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct s2 _X16_operator_assignFS2s2_S2s2S2s2_autogen___2(struct s2 *_X4_dstS2s2_2, struct s2 _X4_srcS2s2_2){
         struct s2 _X4_retS2s2_2;
-        ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2));
-        ((void)_X12_constructorFv_S2s2S2s2_autogen___2((&_X4_retS2s2_2), (*_X4_dstS2s2_2)));
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S2s2S2s2_autogen___2((&_X4_retS2s2_2), (*_X4_dstS2s2_2)));
+        }
+
         return _X4_retS2s2_2;
     }
     inline void _X12_constructorFv_S2s2i_autogen___2(struct s2 *_X4_dstS2s2_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
     }
     struct s3 {
@@ -117,20 +210,38 @@
     };
     inline void _X12_constructorFv_S2s3_autogen___2(struct s3 *_X4_dstS2s3_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S2s3S2s3_autogen___2(struct s3 *_X4_dstS2s3_2, struct s3 _X4_srcS2s3_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S2s3_autogen___2(struct s3 *_X4_dstS2s3_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct s3 _X16_operator_assignFS2s3_S2s3S2s3_autogen___2(struct s3 *_X4_dstS2s3_2, struct s3 _X4_srcS2s3_2){
         struct s3 _X4_retS2s3_2;
-        ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2));
-        ((void)_X12_constructorFv_S2s3S2s3_autogen___2((&_X4_retS2s3_2), (*_X4_dstS2s3_2)));
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S2s3S2s3_autogen___2((&_X4_retS2s3_2), (*_X4_dstS2s3_2)));
+        }
+
         return _X4_retS2s3_2;
     }
     inline void _X12_constructorFv_S2s3i_autogen___2(struct s3 *_X4_dstS2s3_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
     }
     struct s3 _X2x1S2s3_2;
@@ -140,20 +251,38 @@
     };
     inline void _X12_constructorFv_S2s4_autogen___2(struct s4 *_X4_dstS2s4_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S2s4S2s4_autogen___2(struct s4 *_X4_dstS2s4_2, struct s4 _X4_srcS2s4_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S2s4_autogen___2(struct s4 *_X4_dstS2s4_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct s4 _X16_operator_assignFS2s4_S2s4S2s4_autogen___2(struct s4 *_X4_dstS2s4_2, struct s4 _X4_srcS2s4_2){
         struct s4 _X4_retS2s4_2;
-        ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2));
-        ((void)_X12_constructorFv_S2s4S2s4_autogen___2((&_X4_retS2s4_2), (*_X4_dstS2s4_2)));
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S2s4S2s4_autogen___2((&_X4_retS2s4_2), (*_X4_dstS2s4_2)));
+        }
+
         return _X4_retS2s4_2;
     }
     inline void _X12_constructorFv_S2s4i_autogen___2(struct s4 *_X4_dstS2s4_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
     }
     struct s4 _X2x2S2s4_2;
@@ -162,7 +291,13 @@
     signed int _X2m2A0A0i_2[((unsigned long int )10)][((unsigned long int )10)];
     signed int _X2m3A0A0i_2[((unsigned long int )10)][((unsigned long int )10)];
-    ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
-    ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
@@ -171,7 +306,11 @@
 signed int main(signed int _X4argci_1, char **_X4argvPPc_1, char **_X4envpPPc_1){
     __attribute__ ((unused)) signed int _X12_retval_maini_1;
-    signed int _tmp_cp_ret2;
-    ((void)(_X12_retval_maini_1=(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , _tmp_cp_ret2)) /* ?{} */);
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        signed int _tmp_cp_ret2;
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object0))_X11_destructorFv_i_intrinsic___1) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(_X12_retval_maini_1=(((void)(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
Index: tests/.expect/gccExtensions.x86.txt
===================================================================
--- tests/.expect/gccExtensions.x86.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/.expect/gccExtensions.x86.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -38,40 +38,106 @@
     };
     inline void _X12_constructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S1S_autogen___2(struct S *_X4_dstS1S_2){
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ^?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2) /* ^?{} */);
+        }
+
     }
     inline struct S _X16_operator_assignFS1S_S1SS1S_autogen___2(struct S *_X4_dstS1S_2, struct S _X4_srcS1S_2){
         struct S _X4_retS1S_2;
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
-        ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X4_srcS1S_2._X1ai_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X4_srcS1S_2._X1bi_2));
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X4_srcS1S_2._X1ci_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S1SS1S_autogen___2((&_X4_retS1S_2), (*_X4_dstS1S_2)));
+        }
+
         return _X4_retS1S_2;
     }
     inline void _X12_constructorFv_S1Si_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Sii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S1Siii_autogen___2(struct S *_X4_dstS1S_2, signed int _X1ai_2, signed int _X1bi_2, signed int _X1ci_2){
-        ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
-        ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS1S_2)._X1ai_2=_X1ai_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1bi_2=_X1bi_2) /* ?{} */);
+        }
+
+        {
+            ((void)((*_X4_dstS1S_2)._X1ci_2=_X1ci_2) /* ?{} */);
+        }
+
     }
     signed int _X1ii_2 = __extension__ 3;
@@ -79,7 +145,16 @@
     __extension__ signed int _X1bi_2;
     __extension__ signed int _X1ci_2;
-    ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
-    ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
-    ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    {
+        ((void)(((void)(((void)__extension__ _X1ai_2) , __extension__ _X1bi_2)) , __extension__ _X1ci_2));
+    }
+
+    {
+        ((void)(__extension__ _X1ai_2=(__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
+    {
+        ((void)(__extension__ _X1ai_2=__extension__ (__extension__ _X1bi_2+__extension__ _X1ci_2)));
+    }
+
     signed int _X2a1i_2;
     const signed int _X2a2Ki_2;
@@ -96,20 +171,38 @@
     };
     inline void _X12_constructorFv_S2s2_autogen___2(struct s2 *_X4_dstS2s2_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S2s2S2s2_autogen___2(struct s2 *_X4_dstS2s2_2, struct s2 _X4_srcS2s2_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S2s2_autogen___2(struct s2 *_X4_dstS2s2_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct s2 _X16_operator_assignFS2s2_S2s2S2s2_autogen___2(struct s2 *_X4_dstS2s2_2, struct s2 _X4_srcS2s2_2){
         struct s2 _X4_retS2s2_2;
-        ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2));
-        ((void)_X12_constructorFv_S2s2S2s2_autogen___2((&_X4_retS2s2_2), (*_X4_dstS2s2_2)));
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2=_X4_srcS2s2_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S2s2S2s2_autogen___2((&_X4_retS2s2_2), (*_X4_dstS2s2_2)));
+        }
+
         return _X4_retS2s2_2;
     }
     inline void _X12_constructorFv_S2s2i_autogen___2(struct s2 *_X4_dstS2s2_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS2s2_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s2_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
     }
     struct s3 {
@@ -117,20 +210,38 @@
     };
     inline void _X12_constructorFv_S2s3_autogen___2(struct s3 *_X4_dstS2s3_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S2s3S2s3_autogen___2(struct s3 *_X4_dstS2s3_2, struct s3 _X4_srcS2s3_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S2s3_autogen___2(struct s3 *_X4_dstS2s3_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct s3 _X16_operator_assignFS2s3_S2s3S2s3_autogen___2(struct s3 *_X4_dstS2s3_2, struct s3 _X4_srcS2s3_2){
         struct s3 _X4_retS2s3_2;
-        ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2));
-        ((void)_X12_constructorFv_S2s3S2s3_autogen___2((&_X4_retS2s3_2), (*_X4_dstS2s3_2)));
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2=_X4_srcS2s3_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S2s3S2s3_autogen___2((&_X4_retS2s3_2), (*_X4_dstS2s3_2)));
+        }
+
         return _X4_retS2s3_2;
     }
     inline void _X12_constructorFv_S2s3i_autogen___2(struct s3 *_X4_dstS2s3_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS2s3_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s3_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
     }
     struct s3 _X2x1S2s3_2;
@@ -140,20 +251,38 @@
     };
     inline void _X12_constructorFv_S2s4_autogen___2(struct s4 *_X4_dstS2s4_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X12_constructorFv_S2s4S2s4_autogen___2(struct s4 *_X4_dstS2s4_2, struct s4 _X4_srcS2s4_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2) /* ?{} */);
+        }
+
     }
     inline void _X11_destructorFv_S2s4_autogen___2(struct s4 *_X4_dstS2s4_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ^?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2) /* ^?{} */);
+        }
+
     }
     inline struct s4 _X16_operator_assignFS2s4_S2s4S2s4_autogen___2(struct s4 *_X4_dstS2s4_2, struct s4 _X4_srcS2s4_2){
         struct s4 _X4_retS2s4_2;
-        ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2));
-        ((void)_X12_constructorFv_S2s4S2s4_autogen___2((&_X4_retS2s4_2), (*_X4_dstS2s4_2)));
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2=_X4_srcS2s4_2._X1ii_2));
+        }
+
+        {
+            ((void)_X12_constructorFv_S2s4S2s4_autogen___2((&_X4_retS2s4_2), (*_X4_dstS2s4_2)));
+        }
+
         return _X4_retS2s4_2;
     }
     inline void _X12_constructorFv_S2s4i_autogen___2(struct s4 *_X4_dstS2s4_2, signed int _X1ii_2){
-        ((void)((*_X4_dstS2s4_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        {
+            ((void)((*_X4_dstS2s4_2)._X1ii_2=_X1ii_2) /* ?{} */);
+        }
+
     }
     struct s4 _X2x2S2s4_2;
@@ -162,7 +291,13 @@
     signed int _X2m2A0A0i_2[((unsigned int )10)][((unsigned int )10)];
     signed int _X2m3A0A0i_2[((unsigned int )10)][((unsigned int )10)];
-    ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=((signed int )0)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
-    ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    {
+        ((void)(_X12_retval_maini_1=0) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
@@ -171,7 +306,11 @@
 signed int main(signed int _X4argci_1, char **_X4argvPPc_1, char **_X4envpPPc_1){
     __attribute__ ((unused)) signed int _X12_retval_maini_1;
-    signed int _tmp_cp_ret2;
-    ((void)(_X12_retval_maini_1=(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , _tmp_cp_ret2)) /* ?{} */);
-    ((void)(_tmp_cp_ret2) /* ^?{} */);
+    {
+        signed int _tmp_cp_ret2;
+        __attribute__ ((cleanup(__destroy_Destructor))) struct __Destructor _ret_dtor4 = { 0, ((void (*)(void *__anonymous_object0))_X11_destructorFv_i_intrinsic___1) };
+        void **_dtype_static_member_4 = ((void **)(&_ret_dtor4._X6objectPY12__T_generic__1));
+        ((void)(_X12_retval_maini_1=(((void)(((void)(_tmp_cp_ret2=invoke_main(_X4argci_1, _X4argvPPc_1, _X4envpPPc_1))) , ((*_dtype_static_member_4)=((void *)(&_tmp_cp_ret2))))) , _tmp_cp_ret2)) /* ?{} */);
+    }
+
     return _X12_retval_maini_1;
 }
Index: tests/raii/.expect/memberCtors-ERR1.txt
===================================================================
--- tests/raii/.expect/memberCtors-ERR1.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/raii/.expect/memberCtors-ERR1.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -1,1 +1,1 @@
-raii/memberCtors.cfa:71:1 error: in void ?{}(B &b), field a2 used before being constructed
+raii/memberCtors.cfa:92:1 error: in void ?{}(B &b), field a2 used before being constructed
Index: tests/raii/.expect/memberCtors.txt
===================================================================
--- tests/raii/.expect/memberCtors.txt	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/raii/.expect/memberCtors.txt	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -1,213 +1,219 @@
 Before declaration of b1
-constructing int
-constructing int
-constructing int
-constructing int
-constructing int
-constructing int
-begin construct B
+constructing int id: 0
+constructing int id: 1
+constructing int id: 2
+default construct A 0
+constructing int id: 3
+constructing int id: 4
+constructing int id: 5
+default construct A 1
+begin construct B id: 0
 assign b.a2
-constructing int
-constructing int
-begin construct A
-construct a.x
-constructing int: 1001
-assign a.y
-assigning int: 0 0
-end construct A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 1001
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-begin ?=? A
-copy constructing int: 1001
-destructing int: 1001
-destructing int: 1001
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
+constructing int id: 6
+constructing int id: 7
+begin construct A id: 2
+construct a.x
+constructing int: 1001 id: 8
+assign a.y
+assigning int: 0 0 id: 6
+end construct A
+copy constructing int: 0 id: 9
+copy constructing int: 0 id: 10
+begin copy construct A id: 3
+copy construct this.x
+copy constructing int: 1001 id: 11
+assign this.y
+copy constructing int: 0 id: 12
+destructing int: 0 id: 12
+destructing int: 0 id: 12
+end copy construct A
+begin ?=? A id: 0
+copy constructing int: 1001 id: 13
+destructing int: 1001 id: 13
+destructing int: 1001 id: 13
+copy constructing int: 0 id: 14
+destructing int: 0 id: 14
+destructing int: 0 id: 14
+copy constructing int: 0 id: 15
+destructing int: 0 id: 15
+destructing int: 0 id: 15
 end ?=? A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 1001
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-destructing int: 0
-destructing int: 0
-destructing int: 1001
-destructing int: 0
-destructing int: 0
-destructing int: 1001
+copy constructing int: 0 id: 16
+copy constructing int: 0 id: 17
+begin copy construct A id: 4
+copy construct this.x
+copy constructing int: 1001 id: 18
+assign this.y
+copy constructing int: 0 id: 19
+destructing int: 0 id: 19
+destructing int: 0 id: 19
+end copy construct A
+destructing int: 0 id: 17
+destructing int: 0 id: 19
+destructing int: 1001 id: 18
+destructing int: 0 id: 10
+destructing int: 0 id: 12
+destructing int: 1001 id: 11
 construct b.a1
-constructing int
-constructing int
-begin construct A
-construct a.x
-constructing int: 1000
-assign a.y
-assigning int: 0 0
+constructing int id: 20
+constructing int id: 21
+begin construct A id: 5
+construct a.x
+constructing int: 1000 id: 22
+assign a.y
+assigning int: 0 0 id: 20
 end construct A
 end construct B
-destructing int: 0
-destructing int: 0
-destructing int: 1001
+destructing int: 0 id: 7
+destructing int: 0 id: 6
+destructing int: 1001 id: 8
 Before declaration of b2
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 1000
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 1001
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 0
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
+copy constructing int: 0 id: 23
+copy constructing int: 0 id: 24
+begin copy construct A id: 6
+copy construct this.x
+copy constructing int: 1000 id: 25
+assign this.y
+copy constructing int: 0 id: 26
+destructing int: 0 id: 26
+destructing int: 0 id: 26
+end copy construct A
+copy constructing int: 0 id: 27
+copy constructing int: 0 id: 28
+begin copy construct A id: 7
+copy construct this.x
+copy constructing int: 1001 id: 29
+assign this.y
+copy constructing int: 0 id: 30
+destructing int: 0 id: 30
+destructing int: 0 id: 30
+end copy construct A
+copy constructing int: 0 id: 31
+copy constructing int: 0 id: 32
+begin copy construct A id: 8
+copy construct this.x
+copy constructing int: 0 id: 33
+assign this.y
+copy constructing int: 0 id: 34
+destructing int: 0 id: 34
+destructing int: 0 id: 34
 end copy construct A
 End of main
-constructing int
-constructing int
-begin construct A
-construct a.x
-constructing int: 999
-assign a.y
-assigning int: 0 0
-end construct A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 999
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-begin ?=? A
-copy constructing int: 999
-destructing int: 999
-destructing int: 999
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
+begin destruct B id: 1
+constructing int id: 35
+constructing int id: 36
+begin construct A id: 9
+construct a.x
+constructing int: 999 id: 37
+assign a.y
+assigning int: 0 0 id: 35
+end construct A
+copy constructing int: 0 id: 38
+copy constructing int: 0 id: 39
+begin copy construct A id: 10
+copy construct this.x
+copy constructing int: 999 id: 40
+assign this.y
+copy constructing int: 0 id: 41
+destructing int: 0 id: 41
+destructing int: 0 id: 41
+end copy construct A
+begin ?=? A id: 7
+copy constructing int: 999 id: 42
+destructing int: 999 id: 42
+destructing int: 999 id: 42
+copy constructing int: 0 id: 43
+destructing int: 0 id: 43
+destructing int: 0 id: 43
+copy constructing int: 0 id: 44
+destructing int: 0 id: 44
+destructing int: 0 id: 44
 end ?=? A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 999
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-destructing int: 0
-destructing int: 0
-destructing int: 999
-destructing int: 0
-destructing int: 0
-destructing int: 999
-destructing int: 0
-destructing int: 0
-destructing int: 1000
-destructing int: 0
-destructing int: 0
-destructing int: 999
-destructing int: 0
-destructing int: 0
-destructing int: 0
-destructing int: 0
-destructing int: 0
-destructing int: 999
-constructing int
-constructing int
-begin construct A
-construct a.x
-constructing int: 999
-assign a.y
-assigning int: 0 0
-end construct A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 999
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-begin ?=? A
-copy constructing int: 999
-destructing int: 999
-destructing int: 999
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
+copy constructing int: 0 id: 45
+copy constructing int: 0 id: 46
+begin copy construct A id: 11
+copy construct this.x
+copy constructing int: 999 id: 47
+assign this.y
+copy constructing int: 0 id: 48
+destructing int: 0 id: 48
+destructing int: 0 id: 48
+end copy construct A
+destructing int: 0 id: 46
+destructing int: 0 id: 48
+destructing int: 999 id: 47
+destructing int: 0 id: 39
+destructing int: 0 id: 41
+destructing int: 999 id: 40
+destructing int: 0 id: 24
+destructing int: 0 id: 26
+destructing int: 1000 id: 25
+end destruct B
+destructing int: 0 id: 36
+destructing int: 0 id: 35
+destructing int: 999 id: 37
+destructing int: 0 id: 32
+destructing int: 0 id: 34
+destructing int: 0 id: 33
+destructing int: 0 id: 44
+destructing int: 0 id: 43
+destructing int: 999 id: 42
+begin destruct B id: 2
+constructing int id: 49
+constructing int id: 50
+begin construct A id: 12
+construct a.x
+constructing int: 999 id: 51
+assign a.y
+assigning int: 0 0 id: 49
+end construct A
+copy constructing int: 0 id: 52
+copy constructing int: 0 id: 53
+begin copy construct A id: 13
+copy construct this.x
+copy constructing int: 999 id: 54
+assign this.y
+copy constructing int: 0 id: 55
+destructing int: 0 id: 55
+destructing int: 0 id: 55
+end copy construct A
+begin ?=? A id: 0
+copy constructing int: 999 id: 56
+destructing int: 999 id: 56
+destructing int: 999 id: 56
+copy constructing int: 0 id: 57
+destructing int: 0 id: 57
+destructing int: 0 id: 57
+copy constructing int: 0 id: 58
+destructing int: 0 id: 58
+destructing int: 0 id: 58
 end ?=? A
-copy constructing int: 0
-copy constructing int: 0
-begin copy construct A
-copy construct this.x
-copy constructing int: 999
-assign this.y
-copy constructing int: 0
-destructing int: 0
-destructing int: 0
-end copy construct A
-destructing int: 0
-destructing int: 0
-destructing int: 999
-destructing int: 0
-destructing int: 0
-destructing int: 999
-destructing int: 0
-destructing int: 0
-destructing int: 1000
-destructing int: 0
-destructing int: 0
-destructing int: 999
-destructing int: 0
-destructing int: 0
-destructing int: 0
-destructing int: 0
-destructing int: 0
-destructing int: 999
+copy constructing int: 0 id: 59
+copy constructing int: 0 id: 60
+begin copy construct A id: 14
+copy construct this.x
+copy constructing int: 999 id: 61
+assign this.y
+copy constructing int: 0 id: 62
+destructing int: 0 id: 62
+destructing int: 0 id: 62
+end copy construct A
+destructing int: 0 id: 60
+destructing int: 0 id: 62
+destructing int: 999 id: 61
+destructing int: 0 id: 53
+destructing int: 0 id: 55
+destructing int: 999 id: 54
+destructing int: 0 id: 21
+destructing int: 0 id: 20
+destructing int: 1000 id: 22
+end destruct B
+destructing int: 0 id: 50
+destructing int: 0 id: 49
+destructing int: 999 id: 51
+destructing int: 0 id: 5
+destructing int: 0 id: 4
+destructing int: 0 id: 3
+destructing int: 0 id: 58
+destructing int: 0 id: 57
+destructing int: 999 id: 56
Index: tests/raii/memberCtors.cfa
===================================================================
--- tests/raii/memberCtors.cfa	(revision 1d832f4bfb43313e3f83a1b5e2db90f7b3c6cf30)
+++ tests/raii/memberCtors.cfa	(revision a200795e703916156fb98c276dcb4da596a519bd)
@@ -1,40 +1,57 @@
 struct WrappedInt {
   int x;
+  int id;
 };
+int intID = 0;
 
 void ?{}(WrappedInt & this) {
-  printf("constructing int\n");
+  this.id = intID++;
+  printf("constructing int id: %d\n", this.id);
   this.x = 0;
 }
 
 void ?{}(WrappedInt & this, WrappedInt other) {
-  printf("copy constructing int: %d\n", other.x);
+  this.id = intID++;
+  printf("copy constructing int: %d id: %d\n", other.x, this.id);
   this.x = other.x;
 }
 
 void ?{}(WrappedInt & this, int x) {
-  printf("constructing int: %d\n", x);
+  this.id = intID++;
+  printf("constructing int: %d id: %d\n", x, this.id);
   this.x = x;
 }
 
 void ^?{}(WrappedInt & this) {
-  printf("destructing int: %d\n", this.x);
+  printf("destructing int: %d id: %d\n", this.x, this.id);
 }
 
-void ?=?(WrappedInt & this, int x) {
-  printf("assigning int: %d %d\n", this.x, x);
+/* WrappedInt */ void ?=?(WrappedInt & this, int x) {
+  printf("assigning int: %d %d id: %d\n", this.x, x, this.id);
   this.x = x;
+  // return this;
 }
+
+// WrappedInt ?=?(WrappedInt & this, WrappedInt other) {
+//   printf("assigning int: %d %d\n", this.x, other.x);
+//   this.x = other.x;
+//   return this;
+// }
 
 struct A {
   WrappedInt x, y, z;
+  int id;
 };
+int AID = 0;
 
 void ?{}(A & a) {
   // currently must define default ctor, since there's no "= default" syntax
+  a.id = AID++;
+  printf("default construct A %d\n", a.id);
 }
 
 void ?{}(A & a, int x) {
-  printf("begin construct A\n");
+  a.id = AID++;
+  printf("begin construct A id: %d\n", a.id);
   printf("construct a.x\n");
   (a.x){ x+999 };
@@ -45,5 +62,6 @@
 
 void ?{}(A & this, A other) {
-  printf("begin copy construct A\n");
+  this.id = AID++;
+  printf("begin copy construct A id: %d\n", this.id);
   printf("copy construct this.x\n");
   (this.x){ other.x };
@@ -54,5 +72,5 @@
 
 A ?=?(A & this, A other) {
-  printf("begin ?=? A\n");
+  printf("begin ?=? A id: %d\n", this.id);
   this.x = other.x;
   this.y = other.y;
@@ -64,8 +82,11 @@
 struct B {
   A a1, a2, a3;
+  int id;
 };
+int BID = 0;
 
 void ?{}(B & b) {
-  printf("begin construct B\n");
+  b.id = BID++;
+  printf("begin construct B id: %d\n", b.id);
   printf("assign b.a2\n");
   b.a2 = (A) { 2 };
@@ -79,11 +100,14 @@
 
 void ^?{}(B & b) {
+  b.id = BID++;
+  printf("begin destruct B id: %d\n", b.id);
   b.a2 = (A) { 0 };
   ^(b.a1){};
+  printf("end destruct B\n");
 } // a2, a3 never destructed - will be automatically destructed
 
 int main() {
   printf("Before declaration of b1\n");
-  B b1;
+  B b1;  // b1 = { { 1000, 0, 0 }, { 1001, 0, 0 }, { 0, 0, 0 } }
   printf("Before declaration of b2\n");
   B b2 = b1;
