anchor.diff:  	[ * char-length ] [ component-initialization ]
   */
   	component-decl :
  -		component-name ( '(' component-array-spec ')' ) ? ( lbracket coarray-spec rbracket ) ? ( '*' char-length ) ? component-initialization ?
  +		component-name ( '(' component-array-spec ')' ) ? ( '[' coarray-spec ']' ) ? ( '*' char-length ) ? component-initialization ?
   	;
   	
   	component-decl-list :
  
positive.code: 	R444 private-components-stmt is PRIVATE
  */
  	private-components-stmt :
  		'PRIVATE'
  	;
  
  /*
  
negative.code: 	NUMBER_SIGN : "#";
  	COLON : ":";
  	COMMERCIAL_AT : "@";
  
  	/*
  	 * Keywords
  	 */ 
  	ABSTRACT : 'ABSTRACT' ;
  	ALLOCATABLE : 'ALLOCATABLE' ;
  	ALLOCATE : 'ALLOCATE' ;
  	ASYNCHRONOUS : 'ASYNCHRONOUS' ;
  	BIND : 'BIND' ;
  	CHARACTER : 'CHARACTER' ;
  	CLASS : 'CLASS' ; 
  	CODIMENSION : 'CODIMENSION' ;
  	COMMON : 'COMMON' ;
  	COMPLEX : 'COMPLEX' ;
  	CONTIGUOUS : 'CONTIGUOUS' ;
  	DATA : 'DATA' ;
  	DEALLOCATE : 'DEALLOCATE' ;
  	DEFERRED : 'DEFERRED' ;
  	DIMENSION : 'DIMENSION' ;
  	DOUBLE_PRECISION : 'DOUBLE\\s+PRECISION' ;
  	END_ENUM : 'END\\s+ENUM' ;
  	END_TYPE : 'END\\s+TYPE' ;
  	ENUM : 'ENUM' ;
  	ENUMERATOR : 'ENUMERATOR' ;
  	EQUIVALENCE : 'EQUIVALENCE' ;
  	ERRMSG : 'ERRMSG' ;
  	EXTENDS : 'EXTENDS' ;
  	EXTERNAL : 'DIMENSION' ;
  	FINAL : 'FINAL' ;
  	GENERIC : 'GENERIC' ;
  	IM : 'IM' ;
  	IMPLICIT : 'IMPLICIT' ;
  	IMPLICIT_NONE : 'IMPLICIT\\s+NONE' ;
  	IN : 'IN' ;
  	INOUT : 'INOUT' ;
  	INTEGER : 'INTEGER' ;
  	INTENT : 'INTENT'  ;
  	INTRINSIC : 'INTRINSIC' ;
  	KIND : 'KIND' ;
  	LEN : 'LEN' ;
  	LOGICAL : 'LOGICAL' ;
  	MOLD : 'MOLD' ;
  	NAME : 'NAME' ;
  	NAMELIST : 'NAMELIST' ;
  	NON_OVERRIDABLE : 'NON\\s+OVERRIDABLE' ;
  	NOPASS : 'NOPASS' ;
  	NULLIFY : 'NULLIFY' ;
  	OPTIONAL : 'OPTIONAL' ;
  	OUT : 'OUT' ;
  	PASS : 'PASS' ;
  	PARAMETER : 'PARAMETER' ;
  	POINTER : 'POINTER' ;
  	PRIVATE : 'PRIVATE' ;
  	PROCEDURE : 'PROCEDURE' ; 
  	PROTECTED : 'PROTECTED' ;
  	PUBLIC : 'PUBLIC' ;
  	RE : 'RE' ;
  	REAL : 'REAL' ;
  	SAVE : 'SAVE' ;
  	SEQUENCE : 'SEQUENCE' ;
  	SOURCE : 'SOURCE' ;
  	STAT : 'STAT' ;
  	TARGET : 'TARGET' ;
  	TYPE : 'TYPE' ;
  	VALUE : 'SAVE' ;
  	VOLATILE : 'VOLATILE' ;
  
  
  	NAME : LETTER ALPHANUMERIC_CHARACTER
  			"{0,62}";
  	INT_LITERAL_CONSTANT : DIGIT_STRING "(_"
  			KIND_PARAM ")?";
  	REAL_LITERAL_CONSTANT : "(" SIGNIFICANT "("
  			EXPONENT_LETTER EXPONENT ")?(_" KIND_PARAM ")?|"
  			DIGIT_STRING EXPONENT_LETTER EXPONENT "(_" KIND_PARAM
  			")?)";
  	COMPLEX_LITERAL_CONSTANT : "\\(" REAL_PART
  			"\\s*,\\s*" IMAG_PART "\\)";
  	CHAR_LITERAL_CONSTANT : "(" KIND_PARAM
  			"_)?(\"" REP_CHAR_DOUBLE_QUOTE "*\"|'"
  			REP_CHAR_SINGLE_QUOTE "*')";
  	LOGICAL_LITERAL_CONSTANT : "(\\.TRUE\\.|\\.FALSE\\.)(_"
  			KIND_PARAM ")?";
  	BOZ_LITERAL_CONSTANT : "(" BINARY_CONSTANT
  			"|" OCTAL_CONSTANT "|" HEX_CONSTANT ")";
  
  /****************************************************************************
   * P R O D U C T I O N S
  