Index: src/Parser/parser.yy
===================================================================
--- src/Parser/parser.yy	(revision b2da05741abf9ee33682eff93563c8cf8bcd7eba)
+++ src/Parser/parser.yy	(revision c28bcc70dd18798fb233be8674960aa1fd57e47e)
@@ -10,6 +10,6 @@
 // Created On       : Sat Sep  1 20:22:55 2001
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Wed Mar 28 17:52:24 2018
-// Update Count     : 3130
+// Last Modified On : Tue Apr 17 17:10:30 2018
+// Update Count     : 3144
 //
 
@@ -391,5 +391,5 @@
 %precedence '('
 
-%locations			// support location tracking for error messages
+%locations												// support location tracking for error messages
 
 %start translation_unit									// parse-tree root
@@ -1708,8 +1708,4 @@
 	| LONG
 		{ $$ = DeclarationNode::newLength( DeclarationNode::Long ); }
-	| ZERO_T
-		{ $$ = DeclarationNode::newBuiltinType( DeclarationNode::Zero ); }
-	| ONE_T
-		{ $$ = DeclarationNode::newBuiltinType( DeclarationNode::One ); }
 	| VALIST											// GCC, __builtin_va_list
 		{ $$ = DeclarationNode::newBuiltinType( DeclarationNode::Valist ); }
@@ -1731,4 +1727,5 @@
 basic_type_specifier:
 	direct_type
+		// Cannot have type modifiers, e.g., short, long, etc.
 	| type_qualifier_list_opt indirect_type type_qualifier_list_opt
 		{ $$ = $2->addQualifiers( $1 )->addQualifiers( $3 ); }
@@ -1736,5 +1733,4 @@
 
 direct_type:
-		// A semantic check is necessary for conflicting type qualifiers.
 	basic_type_name
 	| type_qualifier_list basic_type_name
@@ -1755,4 +1751,8 @@
 	| ATTR_TYPEGENname '(' comma_expression ')'			// CFA: e.g., @type(a+b) y;
 		{ $$ = DeclarationNode::newAttr( $1, $3 ); }
+	| ZERO_T											// CFA
+		{ $$ = DeclarationNode::newBuiltinType( DeclarationNode::Zero ); }
+	| ONE_T												// CFA
+		{ $$ = DeclarationNode::newBuiltinType( DeclarationNode::One ); }
 	;
 
