Index: src/Parser/parser.yy
===================================================================
--- src/Parser/parser.yy	(revision 7fdb94e149275ab27bb762fdf43b65253f25b3a8)
+++ src/Parser/parser.yy	(revision 2f0a06782533aa6fcd6240724fe8d0dce348e8c6)
@@ -10,6 +10,6 @@
 // Created On       : Sat Sep  1 20:22:55 2001
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Mon May 21 21:44:01 2018
-// Update Count     : 3350
+// Last Modified On : Tue May 22 08:41:57 2018
+// Update Count     : 3353
 //
 
@@ -1419,15 +1419,15 @@
 	TYPEDEF cfa_variable_specifier
 		{
-			typedefTable.addToEnclosingScope( *$2->name, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$2->name, TYPEDEFname );
 			$$ = $2->addTypedef();
 		}
 	| TYPEDEF cfa_function_specifier
 		{
-			typedefTable.addToEnclosingScope( *$2->name, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$2->name, TYPEDEFname );
 			$$ = $2->addTypedef();
 		}
 	| cfa_typedef_declaration pop ',' push no_attr_identifier
 		{
-			typedefTable.addToEnclosingScope( *$5, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$5, TYPEDEFname );
 			$$ = $1->appendList( $1->cloneType( $5 ) );
 		}
@@ -1440,25 +1440,25 @@
 	TYPEDEF type_specifier declarator
 		{
-			typedefTable.addToEnclosingScope( *$3->name, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$3->name, TYPEDEFname );
 			$$ = $3->addType( $2 )->addTypedef();
 		}
 	| typedef_declaration pop ',' push declarator
 		{
-			typedefTable.addToEnclosingScope( *$5->name, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$5->name, TYPEDEFname );
 			$$ = $1->appendList( $1->cloneBaseType( $5 )->addTypedef() );
 		}
 	| type_qualifier_list TYPEDEF type_specifier declarator // remaining OBSOLESCENT (see 2 )
 		{
-			typedefTable.addToEnclosingScope( *$4->name, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$4->name, TYPEDEFname );
 			$$ = $4->addType( $3 )->addQualifiers( $1 )->addTypedef();
 		}
 	| type_specifier TYPEDEF declarator
 		{
-			typedefTable.addToEnclosingScope( *$3->name, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$3->name, TYPEDEFname );
 			$$ = $3->addType( $1 )->addTypedef();
 		}
 	| type_specifier TYPEDEF type_qualifier_list declarator
 		{
-			typedefTable.addToEnclosingScope( *$4->name, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$4->name, TYPEDEFname );
 			$$ = $4->addQualifiers( $1 )->addTypedef()->addType( $1 );
 		}
@@ -1491,10 +1491,10 @@
 //	 declarator asm_name_opt initializer_opt
 //		{
-//			typedefTable.addToEnclosingScope( TypedefTable::ID );
+//			typedefTable.addToEnclosingScope( IDENTIFIER );
 //			$$ = ( $2->addType( $1 ))->addAsmName( $3 )->addInitializer( $4 );
 //		}
 //	| declaring_list ',' attribute_list_opt declarator asm_name_opt initializer_opt
 //		{
-//			typedefTable.addToEnclosingScope( TypedefTable::ID );
+//			typedefTable.addToEnclosingScope( IDENTIFIER );
 //			$$ = $1->appendList( $1->cloneBaseType( $4->addAsmName( $5 )->addInitializer( $6 ) ) );
 //		}
@@ -1812,5 +1812,5 @@
 		{
 			typedefTable.makeTypedef( *$3 );			// create typedef
-			if ( forall ) typedefTable.changeKind( *$3, TypedefTable::TG ); // possibly update
+			if ( forall ) typedefTable.changeKind( *$3, TYPEGENname ); // possibly update
 			forall = false;								// reset
 		}
@@ -1826,5 +1826,5 @@
 		{
 			typedefTable.makeTypedef( *$3 );
-			if ( forall ) typedefTable.changeKind( *$3, TypedefTable::TG ); // possibly update
+			if ( forall ) typedefTable.changeKind( *$3, TYPEGENname ); // possibly update
 			forall = false;								// reset
 			$$ = DeclarationNode::newAggregate( $1, $3, nullptr, nullptr, false )->addQualifiers( $2 );
@@ -2187,5 +2187,5 @@
 type_parameter:											// CFA
 	type_class no_attr_identifier_or_type_name
-		{ typedefTable.addToEnclosingScope( *$2, TypedefTable::TD ); }
+		{ typedefTable.addToEnclosingScope( *$2, TYPEDEFname ); }
 	  type_initializer_opt assertion_list_opt
 		{ $$ = DeclarationNode::newTypeParam( $1, $2 )->addTypeInitializer( $4 )->addAssertions( $5 ); }
@@ -2256,10 +2256,10 @@
 	no_attr_identifier_or_type_name
 		{
-			typedefTable.addToEnclosingScope( *$1, TypedefTable::TD );
+			typedefTable.addToEnclosingScope( *$1, TYPEDEFname );
 			$$ = DeclarationNode::newTypeDecl( $1, 0 );
 		}
 	| no_attr_identifier_or_type_name '(' push type_parameter_list pop ')'
 		{
-			typedefTable.addToEnclosingScope( *$1, TypedefTable::TG );
+			typedefTable.addToEnclosingScope( *$1, TYPEGENname );
 			$$ = DeclarationNode::newTypeDecl( $1, $4 );
 		}
@@ -2731,7 +2731,6 @@
 paren_type:
 	typedef
-		{ // hide type name by variable name
-			typedefTable.addToEnclosingScope( *$1->name, TypedefTable::ID );
-		}
+		// hide type name in enclosing scope by variable name
+		{ typedefTable.addToEnclosingScope( *$1->name, IDENTIFIER ); }
 	| '(' paren_type ')'
 		{ $$ = $2; }
