Google
 

Trailing-Edge - PDP-10 Archives - FORTRAN-10_Alpha_31-jul-86 - ashelp.bli
There are 12 other files named ashelp.bli in the archive. Click here to see a list.
!COPYRIGHT (c) DIGITAL EQUIPMENT CORPORATION 1974, 1986
!ALL RIGHTS RESERVED.
!
!THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
!ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH LICENSE AND WITH THE
!INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY  OTHER
!COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
!OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF THE  SOFTWARE  IS  HEREBY
!TRANSFERRED.
!
!THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT  NOTICE
!AND  SHOULD  NOT  BE  CONSTRUED  AS A COMMITMENT BY DIGITAL EQUIPMENT
!CORPORATION.
!
!DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY  OF  ITS
!SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.

! Author: */TFV/RVM

! REQUIRE FILE ASHELP.BLI 

GLOBAL BIND ASHELV  =  #11^24 + 0^18 + #1514;	! Version Date: 22-Mar-82

%(

***** Begin Revision History *****

2	-----	-----	CHANGE THE VALUES OF EXTDEFS AND EXTDEF
			IN ORDER TO FIX UP THE &NAME EXTERNAL FORM

***** Begin Version 4A *****

3	235	-----	DEFINE CODE FOR NAMELIST ITEM
4	265	15946	ADD E139 TO EXTERNAL LIST

***** Begin Version 7 *****

5	1213	TFV	------
	Add CHARPLIT for CHARACTER data

1514	RVM	22-Mar-82
	Define a new mask number INTRSCDEF for NAMDEF.  INTRSCDEF is
	used to determine conflicts in attributes of INTRINSIC functions.

***** End Revision History *****

)%

! HERE ARE A SERIES OF USEFUL ITEMS FOR THE STATEMENT AND ACTION ROUTINES

EXTERNAL LEXNAM,SYNTAX;
EXTERNAL NEWENTRY,ENTRY,LEXICAL,LEXEMEGEN,LEXL,LSAVE,FATLERR,FATLEX,WARNERR,WARNLEX,GSTLEXEME;
EXTERNAL  ARPLIT,SFPLIT,ARGPLIT,FNPLIT,SUBSPLIT,REALPLIT,INTGPLIT,LOGIPLIT,DOUBPLIT,COMPLIT;
%[1213]%	EXTERNAL CHARPLIT;
EXTERNAL LOOK4CHAR,GSTCSCAN,GSTSSCAN,STK,TYPE,SP,IDTYPE,PROGNAME,SAVSPACE;

MACRO
	EOSPLIT = .LEXNAM[EOSLEX] $,
	LEXPLITV = .LEXNAM[.VREG<LEFT>]  $,
	LEXPLITL = .LEXNAM[ .LEXL<LEFT> ]  $,
	NOEOSERRV = FATLEX( EOSPLIT,LEXPLITV,E0<0,0>)  $,
	NOEOSERRL = FATLEX ( EOSPLIT, LEXPLITL , E0<0,0> ) $,
	ERR0V(X) = FATLEX( X,  LEXPLITV,  E0<0,0> ) $,
	ERR0L(X) = FATLEX ( X,  LEXPLITL,  E0<0,0> )  $,
	LABLPLIT = .LEXNAM[LABELEX]  $,
	LPARPLIT = .LEXNAM[LPAREN]  $,
	RPARPLIT = .LEXNAM[RPAREN]  $,
	IDENPLIT = .LEXNAM[IDENTIFIER ]  $;

	EXTERNAL	% ERROR MESSAGE NUMBERS %	
		E0,E1,E2,E3,E4,E5,E6,E7,E8,E9,E10,E11,E12,E13,E14,E15,E16,
		E17,E18,E19,E20,E21,E22,E23,E24,E25,E26,E27,
		E28,E29,E30,E31,E32,E33,E34,E35,E36,E37,E38,E39,E40,E41,E42,E43,E44,
		E45,E46,E47,E48,E49,E50,
		E51,E52,E53,E54,E55,E56,E57,E58,E59,E60,E61,E62,E63,E64,E65,
		E66,E67,E68,E69,E70,E71,E72,E73,E74,E75,E76,E77,E78,E79,E80,
		E81,E82,E83,E84,E85,E86,E87,E88,E89,E90,E91,E92,E93,E94,E95,
		E96,E97,E98,E99,E100,E101,E102,E103,E104,E105,E106,E107,E108,E109,E110,
		E111,E112,E113,E114,E115,E116,E117,E118,E119,E120,E121,E122,E123,E124,E139;


	MACRO ELMNT=0,0,FULL$, ELMNT1=0,1,FULL$, ELMNT2=0,2,FULL$, ELMNT3=0,3,FULL$,ELMNT4=0,4,FULL$,ELMNT5=0,5,FULL$;

	%THE FOLLOWING ARE THE PARAMETERS TO NAMDEF() %

	BIND
		ARRYDEF = 0,	!ARRAY DEFINITION
		ARRYDEFT = 1,	!ARRAY IN TYPE STATEMENT
		STFNDEF = 2,	!STATEMENT FUNCTION
		EXTDEF = 3,	! EXTERNAL STATEMENT
		NMLSTDEF = 4,	!NAMELIST NAME
		VARARY = 5,	!VARIABLE OR ARRAY
		IDDEFT = 6,	!IDENTIFIER IN TYPE STATEMENT
		IDDEFINE = 7,	!IDENTIFIER DEFINITION
		ENTRYDEF = 8,	!ENTRY POINT IE. FUNCTION, SUBROUTINE,ENTRY,PROGRAM
		EXTDEFS = 9,	!FUNCTION IN EXTERNAL STATEMENT PRECEEDED BY &/*
		CMNBLK = 10,	!COMMON BLOCK NAME
		PARADEF = 11,	!PARAMETER NAME DEFINITION
		NMLSTITM = 12,	!NAMELIST ITEM
%1514%		INTRSCDEF = 13;	!Function in INTRINSIC statement

	% THE FOLLOWING ARE PARAMETERS TO NAMREF/SET() WHICH DEFINE THE TYPE OF THE GIVEN NAME%

	BIND
		VARYREF = 0,	! VARIABLE OR ARRAY
!		VARIABL1 = 1,	!VARIABLE
!		ARRAYNM1 = 2,	!ARRAY NAME
!		FNNAME1 = 3,	!FUNCTION NAME
		NMLSTREF = 4,	!NAMELIST NAME
		PARAREF = 5;	!PARAMETER NAME REFERENCE
				!(NOTE THAT THIS VALUE IS USED DIRECTLY IN
				! LEXICAL  )


	% THE FOLLOWING ARE USED TO SET TYPE FOR I/O STATEMENT PROCESSING AND DATA STATEMENTS %

	BIND
		DATALST = 0,	!DATA STATEMENT LIST
		NORMAL = 1,
		READD = 3,	!INPUT
		WRITEE = 4;	!OUTPUT


	% THE FOLLOWING ARE USED TO SET THE SETUSE FLAG FOR BLDVAR %
	BIND
		SETT = 0,  USE =1;