Index: src/Parser/DeclarationNode.cc
===================================================================
--- src/Parser/DeclarationNode.cc	(revision 679a2609d317ee3840e5702dbd73842c77514621)
+++ src/Parser/DeclarationNode.cc	(revision e07caa205c9b4722ae70dd338e75f6c51cd6adf9)
@@ -10,6 +10,6 @@
 // Created On       : Sat May 16 12:34:05 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Jul 18 22:50:27 2018
-// Update Count     : 1096
+// Last Modified On : Thu Jul 19 17:40:03 2018
+// Update Count     : 1106
 //
 
@@ -54,14 +54,5 @@
 
 DeclarationNode::DeclarationNode() :
-		builtin( NoBuiltinType ),
-		type( nullptr ),
-		inLine( false ),
-		bitfieldWidth( nullptr ),
-		hasEllipsis( false ),
-		linkage( ::linkage ),
-		asmName( nullptr ),
-		initializer( nullptr ),
-		extension( false ),
-		asmStmt( nullptr ) {
+	linkage( ::linkage ) {
 
 //	variable.name = nullptr;
@@ -1004,25 +995,26 @@
 				//   struct T;            // anonymous member
 				// };
-				if ( ! (extracted && decl->name == "" && ! anon) ) {
-					if (decl->name == "") {
+				if ( ! (extracted && decl->name == "" && ! anon && ! cur->get_inLine()) ) {
+					if ( decl->name == "" ) {
 						if ( DeclarationWithType * dwt = dynamic_cast<DeclarationWithType *>( decl ) ) {
 							if ( ReferenceToType * aggr = dynamic_cast<ReferenceToType *>( dwt->get_type() ) ) {
 								if ( aggr->name.find("anonymous") == std::string::npos ) {
-									if ( ! cur->inLine ) {
-										// temporary: warn about anonymous member declarations of named types, since this conflicts with the syntax for the forward declaration of an anonymous type
+									if ( ! cur->get_inLine() ) {
+										// temporary: warn about anonymous member declarations of named types, since
+										// this conflicts with the syntax for the forward declaration of an anonymous type
 										SemanticWarning( cur->location, Warning::AggrForwardDecl, aggr->name.c_str() );
-									}
-								}
-							}
-						}
-					}
+									} // if
+								} // if
+							} // if
+						} // if
+					} // if
 					decl->location = cur->location;
-					* out++ = decl;
-				}
+					*out++ = decl;
+				} // if
 			} // if
 		} catch( SemanticErrorException &e ) {
 			errors.append( e );
 		} // try
-	} // while
+	} // for
 
 	if ( ! errors.isEmpty() ) {
Index: src/Parser/ParseNode.h
===================================================================
--- src/Parser/ParseNode.h	(revision 679a2609d317ee3840e5702dbd73842c77514621)
+++ src/Parser/ParseNode.h	(revision e07caa205c9b4722ae70dd338e75f6c51cd6adf9)
@@ -10,6 +10,6 @@
 // Created On       : Sat May 16 13:28:16 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Jul 18 17:35:55 2018
-// Update Count     : 844
+// Last Modified On : Thu Jul 19 15:55:26 2018
+// Update Count     : 848
 //
 
@@ -303,4 +303,7 @@
 	bool get_extension() const { return extension; }
 	DeclarationNode * set_extension( bool exten ) { extension = exten; return this; }
+
+	bool get_inLine() const { return inLine; }
+	DeclarationNode * set_inLine( bool inL ) { inLine = inL; return this; }
   public:
 	DeclarationNode * get_last() { return (DeclarationNode *)ParseNode::get_last(); }
@@ -327,22 +330,22 @@
 	StaticAssert_t assert;
 
-	BuiltinType builtin;
-
-	TypeData * type;
-
-	bool inLine;
+	BuiltinType builtin = NoBuiltinType;
+
+	TypeData * type = nullptr;
+
+	bool inLine = false;
 	Type::FuncSpecifiers funcSpecs;
 	Type::StorageClasses storageClasses;
 
-	ExpressionNode * bitfieldWidth;
+	ExpressionNode * bitfieldWidth = nullptr;
 	std::unique_ptr<ExpressionNode> enumeratorValue;
-	bool hasEllipsis;
+	bool hasEllipsis = false;
 	LinkageSpec::Spec linkage;
-	Expression * asmName;
+	Expression * asmName = nullptr;
 	std::list< Attribute * > attributes;
-	InitializerNode * initializer;
+	InitializerNode * initializer = nullptr;
 	bool extension = false;
 	std::string error;
-	StatementNode * asmStmt;
+	StatementNode * asmStmt = nullptr;
 
 	static UniqueName anonymous;
Index: src/Parser/parser.yy
===================================================================
--- src/Parser/parser.yy	(revision 679a2609d317ee3840e5702dbd73842c77514621)
+++ src/Parser/parser.yy	(revision e07caa205c9b4722ae70dd338e75f6c51cd6adf9)
@@ -10,6 +10,6 @@
 // Created On       : Sat Sep  1 20:22:55 2001
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Jul 19 10:21:43 2018
-// Update Count     : 3808
+// Last Modified On : Thu Jul 19 16:42:16 2018
+// Update Count     : 3820
 //
 
@@ -114,4 +114,11 @@
 	} // for
 } // distExt
+
+void distInl( DeclarationNode * declaration ) {
+	// distribute EXTENSION across all declarations
+	for ( DeclarationNode *iter = declaration; iter != nullptr; iter = (DeclarationNode *)iter->get_next() ) {
+		iter->set_inLine( true );
+	} // for
+} // distInl
 
 void distQual( DeclarationNode * declaration, DeclarationNode * qualifiers ) {
@@ -338,5 +345,5 @@
 %type<decl> exception_declaration
 
-%type<decl> field_declaration_list_opt field_declaration field_declaring_list_opt field_declarator field_abstract_list field_abstract_opt
+%type<decl> field_declaration_list_opt field_declaration field_declaring_list_opt field_declarator field_abstract_list_opt field_abstract
 %type<en> field field_name_list field_name fraction_constants_opt
 
@@ -1938,5 +1945,5 @@
 			if ( $2 ) {									// field declarator ?
 				$$ = distAttr( $1, $2 );
-			} else if ( $1->type && $1->type->kind == TypeData::Aggregate && $1->type->aggregate.anon ) {
+			} else if ( $1->type && $1->type->kind == TypeData::Aggregate ) {
 				$$ = DeclarationNode::newName( nullptr );
 				$$ = distAttr( $1, $$ );				// mark all fields in list
@@ -1960,8 +1967,9 @@
 			} // if
 		}
-	| INLINE type_specifier field_abstract_list ';'		// CFA
+	| INLINE type_specifier field_abstract_list_opt ';'	// CFA
 		{
 			$3->inLine = true;
 			$$ = distAttr( $2, $3 );					// mark all fields in list
+			distInl( $3 );
 		}
 	| typedef_declaration ';'							// CFA
@@ -1984,5 +1992,5 @@
 
 field_declarator:
-	bit_subrange_size									// no field name
+	bit_subrange_size									// C special case, no field name
 		{ $$ = DeclarationNode::newBitfield( $1 ); }
 	| variable_declarator bit_subrange_size_opt
@@ -1994,17 +2002,15 @@
 	;
 
-field_abstract_list:
-	field_abstract_opt
-	| field_abstract_list ',' attribute_list_opt field_abstract_opt
-		{ $$ = $1->appendList( $4->addQualifiers( $3 ) ); }
-	;
-
-field_abstract_opt:
+field_abstract_list_opt:
 	// empty
 		{ $$ = DeclarationNode::newName( nullptr ); }
-	| bit_subrange_size									// no field name
-		// A semantic check is required to ensure bit_subrange only appears on integral types.
-		{ $$ = DeclarationNode::newBitfield( $1 ); }
-	| variable_abstract_declarator
+	| field_abstract
+	| field_abstract_list_opt ',' attribute_list_opt field_abstract
+		{ $$ = $1->appendList( $4->addQualifiers( $3 ) ); }
+	;
+
+field_abstract:
+	// 	no bit fields
+	variable_abstract_declarator
 	;
 
Index: src/tests/.expect/attributes.x64.txt
===================================================================
--- src/tests/.expect/attributes.x64.txt	(revision 679a2609d317ee3840e5702dbd73842c77514621)
+++ src/tests/.expect/attributes.x64.txt	(revision e07caa205c9b4722ae70dd338e75f6c51cd6adf9)
@@ -88,5 +88,4 @@
     __attribute__ ((used,unused,unused)) signed int __f7__i_1;
     __attribute__ ((used,used,unused)) signed int __f8__i_1;
-    __attribute__ ((unused)) signed int __anonymous_object0;
     __attribute__ ((unused,unused)) signed int *__f9__Pi_1;
 };
@@ -103,6 +102,5 @@
 static inline void ___constructor__F_4sFdliiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1);
 static inline void ___constructor__F_4sFdliiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1);
-static inline void ___constructor__F_4sFdliiiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object1);
-static inline void ___constructor__F_4sFdliiiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object2, __attribute__ ((unused,unused)) signed int *__f9__Pi_1);
+static inline void ___constructor__F_4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused,unused)) signed int *__f9__Pi_1);
 static inline void ___constructor__F_4sFdl_autogen___1(struct Fdl *___dst__4sFdl_1){
     ((void)((*___dst__4sFdl_1).__f1__i_1) /* ?{} */);
@@ -114,5 +112,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -126,10 +123,8 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1=___src__4sFdl_1.__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1=___src__4sFdl_1.__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0=___src__4sFdl_1.__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1=___src__4sFdl_1.__f9__Pi_1) /* ?{} */);
 }
 static inline void ___destructor__F_4sFdl_autogen___1(struct Fdl *___dst__4sFdl_1){
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ^?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ^?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ^?{} */);
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ^?{} */);
@@ -151,5 +146,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1=___src__4sFdl_1.__f7__i_1));
     ((void)((*___dst__4sFdl_1).__f8__i_1=___src__4sFdl_1.__f8__i_1));
-    ((void)((*___dst__4sFdl_1).__anonymous_object0=___src__4sFdl_1.__anonymous_object0));
     ((void)((*___dst__4sFdl_1).__f9__Pi_1=___src__4sFdl_1.__f9__Pi_1));
     ((void)___constructor__F_4sFdl4sFdl_autogen___1((&___ret__4sFdl_1), (*___dst__4sFdl_1)));
@@ -165,5 +159,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -177,5 +170,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -189,5 +181,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -201,5 +192,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -213,5 +203,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -225,5 +214,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -237,5 +225,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
 }
@@ -249,8 +236,7 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
-}
-static inline void ___constructor__F_4sFdliiiiiiiii_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object3){
+    ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
+}
+static inline void ___constructor__F_4sFdliiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused,unused)) signed int *__f9__Pi_1){
     ((void)((*___dst__4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
@@ -261,17 +247,4 @@
     ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0=__anonymous_object3) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f9__Pi_1) /* ?{} */);
-}
-static inline void ___constructor__F_4sFdliiiiiiiiiPi_autogen___1(struct Fdl *___dst__4sFdl_1, __attribute__ ((unused)) signed int __f1__i_1, __attribute__ ((unused)) signed int __f2__i_1, __attribute__ ((unused,unused)) signed int __f3__i_1, __attribute__ ((unused)) signed int __f4__i_1, __attribute__ ((unused,unused)) signed int __f5__i_1, signed int __f6__i_1, __attribute__ ((unused,unused)) signed int __f7__i_1, __attribute__ ((unused)) signed int __f8__i_1, __attribute__ ((unused)) signed int __anonymous_object4, __attribute__ ((unused,unused)) signed int *__f9__Pi_1){
-    ((void)((*___dst__4sFdl_1).__f1__i_1=__f1__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f2__i_1=__f2__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f3__i_1=__f3__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f4__i_1=__f4__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f5__i_1=__f5__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f6__i_1=__f6__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f7__i_1=__f7__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__f8__i_1=__f8__i_1) /* ?{} */);
-    ((void)((*___dst__4sFdl_1).__anonymous_object0=__anonymous_object4) /* ?{} */);
     ((void)((*___dst__4sFdl_1).__f9__Pi_1=__f9__Pi_1) /* ?{} */);
 }
@@ -293,11 +266,11 @@
     __attribute__ ((unused)) signed int **const ___retval_f2__CPPi_1;
 }
-__attribute__ ((unused,used,unused)) signed int (*__f3__FPA0i_i__1(signed int __anonymous_object5))[];
+__attribute__ ((unused,used,unused)) signed int (*__f3__FPA0i_i__1(signed int __anonymous_object0))[];
 __attribute__ ((unused,unused)) signed int (*__f3__FPA0i_i__1(signed int __p__i_1))[]{
     __attribute__ ((unused)) signed int (*___retval_f3__PA0i_1)[];
 }
-__attribute__ ((unused,used,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object6);
-__attribute__ ((unused,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object7){
-    __attribute__ ((unused)) signed int (*___retval_f4__Fi_i__1)(signed int __anonymous_object8);
+__attribute__ ((unused,used,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object1);
+__attribute__ ((unused,unused)) signed int (*__f4__FFi_i____1())(signed int __anonymous_object2){
+    __attribute__ ((unused)) signed int (*___retval_f4__Fi_i__1)(signed int __anonymous_object3);
 }
 signed int __vtr__Fi___1(){
@@ -329,8 +302,8 @@
 signed int __tpr2__Fi_PPi__1(__attribute__ ((unused,unused,unused,unused,unused,unused)) signed int **__Foo__PPi_1);
 signed int __tpr3__Fi_Pi__1(__attribute__ ((unused,unused,unused)) signed int *__Foo__Pi_1);
-signed int __tpr4__Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object9)(__attribute__ ((unused,unused)) signed int __anonymous_object10[((unsigned long int )5)]));
+signed int __tpr4__Fi_Fi_Pi___1(__attribute__ ((unused,unused)) signed int (*__anonymous_object4)(__attribute__ ((unused,unused)) signed int __anonymous_object5[((unsigned long int )5)]));
 signed int __tpr5__Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__Fi___1)());
 signed int __tpr6__Fi_Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__Foo__Fi___1)());
-signed int __tpr7__Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object11)(__attribute__ ((unused)) signed int (*__anonymous_object12)(__attribute__ ((unused,unused)) signed int __anonymous_object13)));
+signed int __tpr7__Fi_Fi_Fi_i____1(__attribute__ ((unused,unused)) signed int (*__anonymous_object6)(__attribute__ ((unused)) signed int (*__anonymous_object7)(__attribute__ ((unused,unused)) signed int __anonymous_object8)));
 signed int __ad__Fi___1(){
     __attribute__ ((unused)) signed int ___retval_ad__i_1;
@@ -386,16 +359,16 @@
     ((void)sizeof(enum __anonymous4 ));
 }
-signed int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object14, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object15);
-signed int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object16, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object17);
-signed int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object18, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object19);
-signed int __apd4__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object20)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)());
-signed int __apd5__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)(__attribute__ ((unused)) signed int __anonymous_object23), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object24)(__attribute__ ((unused)) signed int __anonymous_object25));
-signed int __apd6__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object26)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object27)());
-signed int __apd7__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object28)(__attribute__ ((unused)) signed int __anonymous_object29), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object30)(__attribute__ ((unused)) signed int __anonymous_object31));
+signed int __apd1__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object9, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object10);
+signed int __apd2__Fi_PPiPPi__1(__attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object11, __attribute__ ((unused,unused,unused,unused)) signed int **__anonymous_object12);
+signed int __apd3__Fi_PiPi__1(__attribute__ ((unused,unused,unused)) signed int *__anonymous_object13, __attribute__ ((unused,unused,unused)) signed int *__anonymous_object14);
+signed int __apd4__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object15)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object16)());
+signed int __apd5__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object17)(__attribute__ ((unused)) signed int __anonymous_object18), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object19)(__attribute__ ((unused)) signed int __anonymous_object20));
+signed int __apd6__Fi_Fi__Fi____1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object21)(), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object22)());
+signed int __apd7__Fi_Fi_i_Fi_i___1(__attribute__ ((unused,unused,unused)) signed int (*__anonymous_object23)(__attribute__ ((unused)) signed int __anonymous_object24), __attribute__ ((unused,unused,unused)) signed int (*__anonymous_object25)(__attribute__ ((unused)) signed int __anonymous_object26));
 struct Vad {
-    __attribute__ ((unused)) signed int __anonymous_object32;
-    __attribute__ ((unused,unused)) signed int *__anonymous_object33;
-    __attribute__ ((unused,unused)) signed int __anonymous_object34[((unsigned long int )10)];
-    __attribute__ ((unused,unused)) signed int (*__anonymous_object35)();
+    __attribute__ ((unused)) signed int __anonymous_object27;
+    __attribute__ ((unused)) signed int __anonymous_object28:4;
+    __attribute__ ((unused)) signed int __anonymous_object29:4;
+    __attribute__ ((unused,unused)) signed int __anonymous_object30:6;
 };
 static inline void ___constructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1);
@@ -403,113 +376,21 @@
 static inline void ___destructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1);
 static inline struct Vad ___operator_assign__F4sVad_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1);
-static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object36);
-static inline void ___constructor__F_4sVadiPi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object37, __attribute__ ((unused,unused)) signed int *__anonymous_object38);
-static inline void ___constructor__F_4sVadiPiA0i_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object39, __attribute__ ((unused,unused)) signed int *__anonymous_object40, __attribute__ ((unused,unused)) signed int __anonymous_object41[((unsigned long int )10)]);
-static inline void ___constructor__F_4sVadiPiA0iFi___autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object42, __attribute__ ((unused,unused)) signed int *__anonymous_object43, __attribute__ ((unused,unused)) signed int __anonymous_object44[((unsigned long int )10)], __attribute__ ((unused,unused)) signed int (*__anonymous_object45)());
+static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object31);
 static inline void ___constructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1){
-    ((void)((*___dst__4sVad_1).__anonymous_object32) /* ?{} */);
-    ((void)((*___dst__4sVad_1).__anonymous_object33) /* ?{} */);
-    {
-        signed int _index0 = 0;
-        for (;(_index0<10);((void)(++_index0))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index0)]) /* ?{} */);
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);
+    ((void)((*___dst__4sVad_1).__anonymous_object27) /* ?{} */);
 }
 static inline void ___constructor__F_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1){
-    ((void)((*___dst__4sVad_1).__anonymous_object32=___src__4sVad_1.__anonymous_object32) /* ?{} */);
-    ((void)((*___dst__4sVad_1).__anonymous_object33=___src__4sVad_1.__anonymous_object33) /* ?{} */);
-    {
-        signed int _index1 = 0;
-        for (;(_index1<10);((void)(++_index1))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index1)]=___src__4sVad_1.__anonymous_object34[((signed long int )_index1)]) /* ?{} */);
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object35=___src__4sVad_1.__anonymous_object35) /* ?{} */);
+    ((void)((*___dst__4sVad_1).__anonymous_object27=___src__4sVad_1.__anonymous_object27) /* ?{} */);
 }
 static inline void ___destructor__F_4sVad_autogen___1(struct Vad *___dst__4sVad_1){
-    ((void)((*___dst__4sVad_1).__anonymous_object35) /* ^?{} */);
-    {
-        signed int _index2 = (10-1);
-        for (;(_index2>=0);((void)(--_index2))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index2)]) /* ^?{} */);
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object33) /* ^?{} */);
-    ((void)((*___dst__4sVad_1).__anonymous_object32) /* ^?{} */);
+    ((void)((*___dst__4sVad_1).__anonymous_object27) /* ^?{} */);
 }
 static inline struct Vad ___operator_assign__F4sVad_4sVad4sVad_autogen___1(struct Vad *___dst__4sVad_1, struct Vad ___src__4sVad_1){
     struct Vad ___ret__4sVad_1;
-    ((void)((*___dst__4sVad_1).__anonymous_object32=___src__4sVad_1.__anonymous_object32));
-    ((void)((*___dst__4sVad_1).__anonymous_object33=___src__4sVad_1.__anonymous_object33));
-    {
-        signed int _index3 = 0;
-        for (;(_index3<10);((void)(++_index3))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index3)]=___src__4sVad_1.__anonymous_object34[((signed long int )_index3)]));
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object35=___src__4sVad_1.__anonymous_object35));
+    ((void)((*___dst__4sVad_1).__anonymous_object27=___src__4sVad_1.__anonymous_object27));
     ((void)___constructor__F_4sVad4sVad_autogen___1((&___ret__4sVad_1), (*___dst__4sVad_1)));
     return ___ret__4sVad_1;
 }
-static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object46){
-    ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object46) /* ?{} */);
-    ((void)((*___dst__4sVad_1).__anonymous_object33) /* ?{} */);
-    {
-        signed int _index4 = 0;
-        for (;(_index4<10);((void)(++_index4))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index4)]) /* ?{} */);
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);
-}
-static inline void ___constructor__F_4sVadiPi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object47, __attribute__ ((unused,unused)) signed int *__anonymous_object48){
-    ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object47) /* ?{} */);
-    ((void)((*___dst__4sVad_1).__anonymous_object33=__anonymous_object48) /* ?{} */);
-    {
-        signed int _index5 = 0;
-        for (;(_index5<10);((void)(++_index5))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index5)]) /* ?{} */);
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);
-}
-static inline void ___constructor__F_4sVadiPiA0i_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object49, __attribute__ ((unused,unused)) signed int *__anonymous_object50, __attribute__ ((unused,unused)) signed int __anonymous_object51[((unsigned long int )10)]){
-    ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object49) /* ?{} */);
-    ((void)((*___dst__4sVad_1).__anonymous_object33=__anonymous_object50) /* ?{} */);
-    {
-        signed int _index6 = 0;
-        for (;(_index6<10);((void)(++_index6))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index6)]=__anonymous_object51[((signed long int )_index6)]) /* ?{} */);
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object35) /* ?{} */);
-}
-static inline void ___constructor__F_4sVadiPiA0iFi___autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object52, __attribute__ ((unused,unused)) signed int *__anonymous_object53, __attribute__ ((unused,unused)) signed int __anonymous_object54[((unsigned long int )10)], __attribute__ ((unused,unused)) signed int (*__anonymous_object55)()){
-    ((void)((*___dst__4sVad_1).__anonymous_object32=__anonymous_object52) /* ?{} */);
-    ((void)((*___dst__4sVad_1).__anonymous_object33=__anonymous_object53) /* ?{} */);
-    {
-        signed int _index7 = 0;
-        for (;(_index7<10);((void)(++_index7))) {
-            ((void)((*___dst__4sVad_1).__anonymous_object34[((signed long int )_index7)]=__anonymous_object54[((signed long int )_index7)]) /* ?{} */);
-        }
-
-    }
-
-    ((void)((*___dst__4sVad_1).__anonymous_object35=__anonymous_object55) /* ?{} */);
-}
+static inline void ___constructor__F_4sVadi_autogen___1(struct Vad *___dst__4sVad_1, __attribute__ ((unused)) signed int __anonymous_object32){
+    ((void)((*___dst__4sVad_1).__anonymous_object27=__anonymous_object32) /* ?{} */);
+}
Index: src/tests/attributes.c
===================================================================
--- src/tests/attributes.c	(revision 679a2609d317ee3840e5702dbd73842c77514621)
+++ src/tests/attributes.c	(revision e07caa205c9b4722ae70dd338e75f6c51cd6adf9)
@@ -10,6 +10,6 @@
 // Created On       : Mon Feb  6 16:07:02 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sun Jul  8 21:12:07 2018
-// Update Count     : 8
+// Last Modified On : Thu Jul 19 13:50:51 2018
+// Update Count     : 15
 // 
 
@@ -42,5 +42,4 @@
     __attribute__(( unused )) int f5 __attribute__(( unused ));
     __attribute__(( used )) int f6 __attribute__(( packed )), f7 __attribute__(( unused )) __attribute__(( unused )), __attribute__(( used )) f8 __attribute__(( unused ));
-    int __attribute__(( unused ));
     int ( ( * (f9) __attribute__(( unused )) ) __attribute__(( unused )) );
 };
@@ -149,7 +148,6 @@
 struct Vad {
     int __attribute__(( unused ));
-    int __attribute__(( unused )) * __attribute__(( unused ));
-    int __attribute__(( unused )) [10] __attribute__(( unused ));
-    int __attribute__(( unused )) (*)() __attribute__(( unused ));
+    int __attribute__(( unused )) :4;
+    int __attribute__(( unused )) :4, __attribute__(( unused )) :6;
 };
 
