Index: src/Parser/DeclarationNode.cc
===================================================================
--- src/Parser/DeclarationNode.cc	(revision 395fc378ab2a1e951811ea084320ee6ea6f95015)
+++ src/Parser/DeclarationNode.cc	(revision 615a0968e86dc63f469d72baac2918969c809f3f)
@@ -10,6 +10,6 @@
 // Created On       : Sat May 16 12:34:05 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Mar 16 17:16:31 2017
-// Update Count     : 1014
+// Last Modified On : Fri Mar 17 08:46:05 2017
+// Update Count     : 1017
 //
 
@@ -432,5 +432,5 @@
 		for ( unsigned int i = 0; i < Type::NumTypeQualifier; i += 1 ) { // find duplicates
 			if ( qsrc[i] && qdst[i] ) {
-				appendError( error, string( "duplicate " ) + Type::Qualifiers::Names[i] );
+				appendError( error, string( "duplicate " ) + Type::QualifiersNames[i] );
 			} // if
 		} // for
@@ -442,5 +442,5 @@
 		for ( unsigned int i = 0; i < Type::NumFuncSpecifier; i += 1 ) { // find duplicates
 			if ( funcSpecs[i] && src->funcSpecs[i] ) {
-				appendError( error, string( "duplicate " ) + Type::FuncSpecifiers::Names[i] );
+				appendError( error, string( "duplicate " ) + Type::FuncSpecifiersNames[i] );
 			} // if
 		} // for
@@ -451,11 +451,11 @@
 			for ( unsigned int i = 0; i < Type::NumStorageClass; i += 1 ) { // find duplicates
 				if ( storageClasses[i] && src->storageClasses[i] ) {
-					appendError( error, string( "duplicate " ) + Type::StorageClasses::Names[i] );
+					appendError( error, string( "duplicate " ) + Type::StorageClassesNames[i] );
 				} // if
 			} // for
 			// src is the new item being added and has a single bit
 		} else if ( ! src->storageClasses.is_threadlocal ) { // conflict ?
-			appendError( error, string( "conflicting " ) + Type::StorageClasses::Names[storageClasses.ffs()] +
-						 " & " + Type::StorageClasses::Names[src->storageClasses.ffs()] );
+			appendError( error, string( "conflicting " ) + Type::StorageClassesNames[storageClasses.ffs()] +
+						 " & " + Type::StorageClassesNames[src->storageClasses.ffs()] );
 			src->storageClasses.reset();				// FIX to preserve invariant of one basic storage specifier
 		} // if
Index: src/Parser/TypeData.cc
===================================================================
--- src/Parser/TypeData.cc	(revision 395fc378ab2a1e951811ea084320ee6ea6f95015)
+++ src/Parser/TypeData.cc	(revision 615a0968e86dc63f469d72baac2918969c809f3f)
@@ -10,6 +10,6 @@
 // Created On       : Sat May 16 15:12:51 2015
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Thu Mar 16 08:32:42 2017
-// Update Count     : 559
+// Last Modified On : Fri Mar 17 08:46:10 2017
+// Update Count     : 560
 //
 
@@ -227,5 +227,5 @@
 void TypeData::print( ostream &os, int indent ) const {
 	for ( int i = 0; i < Type::NumTypeQualifier; i += 1 ) {
-		if ( qualifiers[i] ) os << Type::Qualifiers::Names[ i ] << ' ';
+		if ( qualifiers[i] ) os << Type::QualifiersNames[ i ] << ' ';
 	} // for
 
Index: src/Parser/lex.ll
===================================================================
--- src/Parser/lex.ll	(revision 395fc378ab2a1e951811ea084320ee6ea6f95015)
+++ src/Parser/lex.ll	(revision 615a0968e86dc63f469d72baac2918969c809f3f)
@@ -10,6 +10,6 @@
  * Created On       : Sat Sep 22 08:58:10 2001
  * Last Modified By : Peter A. Buhr
- * Last Modified On : Thu Mar  9 21:38:26 2017
- * Update Count     : 505
+ * Last Modified On : Mon Mar 13 08:36:17 2017
+ * Update Count     : 506
  */
 
@@ -313,4 +313,5 @@
 
 				/* punctuation */
+"@"				{ ASCIIOP_RETURN(); }
 "["				{ ASCIIOP_RETURN(); }
 "]"				{ ASCIIOP_RETURN(); }
