anchor.diff:  BEFORE : B E F O R E;
   BEGINNING : B E G I N N I N G;
   BINARY : B I N A R Y;
  +BIT : B I T;
   BLANK : B L A N K;
   BLOCK : B L O C K;
  +BOUNDS : B O U N D S;
   BOTTOM : B O T T O M;
   BY : B Y;
   CALL : C A L L;
  
positive.code: TRUE : T R U E;
  TRUNCATED : T R U N C A T E D;
  TYPE : T Y P E;
  UNIT : U N I T;
  UNLOCK : U N L O C K;
  UNLOCKFILE : U N L O C K F I L E;
  
negative.code: ;
  
  dataExternalClause :
  	IS? EXTERNAL (BY literal)?
  ;
  
  dataGlobalClause :
  	IS? GLOBAL
  ;
  
  dataTypeDefClause :
  	IS? TYPEDEF
  ;
  
  dataThreadLocalClause :
  	IS? THREAD_LOCAL
  ;
  
  dataUsageClause :
  	(USAGE IS?)?
  	(
  		BINARY (TRUNCATED | EXTENDED)?
  		| BIT
  		| COMP
  		| COMP_1
  		| COMP_2
  		| COMP_3
  		| COMP_4
  		| COMP_5
  		| COMPUTATIONAL
  		| COMPUTATIONAL_1
  		| COMPUTATIONAL_2
  		| COMPUTATIONAL_3
  		| COMPUTATIONAL_4
  		| COMPUTATIONAL_5
  		| CONTROL_POINT
  		| DATE
  		| DISPLAY
  		| DISPLAY_1
  		| DOUBLE
  		| EVENT
  		| FUNCTION_POINTER
  		| INDEX
  		| KANJI
  		| LOCK
  		| NATIONAL
  		| PACKED_DECIMAL
  		| POINTER
  		| PROCEDURE_POINTER
  		| REAL
  		| TASK
  	)
  	(
  		RECEIVED? BY? (CONTENT | REFERENCE | REF)
  	)?
  ;
  
  dataSignClause :
  