Contact us Heritage collections Image license terms
HOME ACL Associates Technology Literature Applications Society Software revisited
Further reading □ Contents1. Introduction2. Basic symbols and comments3. Identifiers, accumulators and cells4. Types and values5. Addresses and storage allocation6. Simple cell designation7. Assignment statements8. Integer accumulator assignments9. Real accumulator assignments10. Long accumulator assignments11. Cell assignments12. Block structure13. Procedures and labels14. Conditional and control statements15. Functions16. Cell declarations17. Synonym declarations18. Storage allocation19. Subcompilation and global storage20. Define statements, conditional compilation and include statements21. Compiler directives22. FORTRAN/PLASYD mixed programming23. ALGOL/PLASYD mixed programming24. Useful library routines25. Use of TASK macro to compile PLASYD programs26. SMO cell designation27. Compiler output28. PLAN instructions not provided for in PLASYD □ Appendices □ 1: Errors and comments2: 1900 character set3: Syntax definitions in alphabetical order4: Use of program XMED5: 1900 order code6: Code genereated for typical PLASYD statements7: A sample PLASYD program8: Less commonly used directivesReferences
ACD C&A INF CCD CISD Archives Contact us Heritage archives Image license terms

Search

   
ACLLiteratureICL 1906A manualsPLASYD
ACLLiteratureICL 1906A manualsPLASYD
ACL ACD C&A INF CCD CISD Archives
Further reading

Contents1. Introduction2. Basic symbols and comments3. Identifiers, accumulators and cells4. Types and values5. Addresses and storage allocation6. Simple cell designation7. Assignment statements8. Integer accumulator assignments9. Real accumulator assignments10. Long accumulator assignments11. Cell assignments12. Block structure13. Procedures and labels14. Conditional and control statements15. Functions16. Cell declarations17. Synonym declarations18. Storage allocation19. Subcompilation and global storage20. Define statements, conditional compilation and include statements21. Compiler directives22. FORTRAN/PLASYD mixed programming23. ALGOL/PLASYD mixed programming24. Useful library routines25. Use of TASK macro to compile PLASYD programs26. SMO cell designation27. Compiler output28. PLAN instructions not provided for in PLASYD
Appendices
1: Errors and comments2: 1900 character set3: Syntax definitions in alphabetical order4: Use of program XMED5: 1900 order code6: Code genereated for typical PLASYD statements7: A sample PLASYD program8: Less commonly used directivesReferences

APPENDIX 1: ERRORS AND COMMENTS

A1.1 Errors

Error
Number
Meaning Corrective action taken
0 ; or END scanned and STACK broken STACK is discarded until correct symbol appears.
1 END not matched by BEGIN on STACK STACK is discarded until BEGIN appears or STACK terminates.
2 BASE statement in LOWER declaration The statement is ignored.
3 **** read as source END's forced in to match BEGIN's on stack
4 Type declaration not followed by identifier list Skip to a recognisable symbol.
5 Illegal symbol in identifier list Skip to a recognisable symbol.
6 Incorrect array length (not absolute const, or defined) Array length 1 is assumed.
7 Identifier declared twice Identifier ignored
8 Incorrect structure of LOCAL (ALL) (BUT) The statement is ignored.
9 Illegal symbol in label list The statement is ignored.
10 Unmatched bracketing Assume )
11 Identifier already declared Skip to ;
12 Illegal source construction Skip to ;
13
14 LOWEND or GLOBEND missing No action
15 PURE storage not initialised Sets to zero
16
17 Too many items in an array Surplus items ignored
18 $ of a lower item used in a DEFINE statement Skip to a, or ;
19 LOWEND without corresponding LOWER LOWEND ignored
20 DEFINE not followed by identifier Skip to a comma or ;
21 Identifier after DEFINE already declared Skip to a comma or ;
22 Identifier not followed by = in DEFINE statement Skip to a comma or ;
23 Separator missing in initial value list , assumed
24 GLOBEND without matching GLOBAL GLOBEND ignored
25 Impossible error (Stack not free for begin) Error ignored
26 LOWER not followed by αtype or GLOBAL Type INTEGER is assumed
27 GLOBAL not followed by block identifier An area %%%G is created
28 Block identifier not followed by : A colon is assumed to be present
29 Block identifier followed by illegal declaration Type INTEGER is assumed
30 LONG not followed by xtype or rtype declaration Type INTEGER is assumed
31 SYN of item already declared Skip to a comma or ;
32 Illegal displacement Zero substitued
33 Error after ACC or SYN Skip to a comma or ;
34 ACC αidentifier not followed by SYN Skip to a comma or ;
35 Identifier list not terminated by SYN or ; ; assumed
36 Illegal expression in DEFINE declaration Value of definee indeterminate
37 Illegal format in DEFINE declaration Skip to a comma or ;
38 Illegally formed absolute expression in DEFINE declaration Skip to a comma or ;
39 Error in initial value list (incorrect type, undefined ident. etc.) Zero substituted
40 Illegal symbol within (----) sequence Assume constant of 0
41 Illegal symbol following a modifier Assume closing right bracket
42 Illegal symbol following SMO index Assume closing right bracket
43 Illegal symbol in simple SMO index The statement is ignored
44 Closing bracket not found Assume closing right bracket
45 Link accumulator not specified in PROCEDURE Link accumulator X0 is assumed
46 Illegal accumulator given for PROCEDURE Link accumulator X0 is assumed
47 PROCEDURE not followed by identifier Skip to ;
48 OBEY, not an xcell The statement is ignored
49 Illegal operand . Zero substituted
50 Undeclared identifier in L.H.S. The statement is ignored
51 Identifier undeclared at current block The statement is ignored
52 Unmodified cell asignment to UPPER No action
53 Undeclared identifier in statement R.H.S. A null instruction is generated
54 Identifier undeclared at current block A null instruction is generated
55 Incompatible types A null instruction is generated
56 Cell assignment: αcell := αcell Rest of statement is ignored
57 Accumulator assignment of The statement is ignored
58 Cell assignment of constant not equal zero The statement is ignored
59 Illegal operator A null instruction is generated
60 Identifier too long The identifier is truncated to 32 characters
61 Real number out of range Zero substituted
62 Illegal characters following & of real number Number is ignored
63 NOT encountered on its own NOT is ignored
64 Too many characters in character sequence Truncated to four characters
65 Count (CNT) greater than 511 Count field is zeroised
66 Octal longer than 16 digits Octal is truncated
67 8 or 9 appearing in an octal number Put in as #10 or #11
68 #, or & standing alone Character is ignored
69 Subfile name after INCLUDE too long Statement is ignored
70 Subfile name in INCLUDE not found on MACROFILE Statement is ignored
71 INCLUDE statement not on a line by itself Other code on the line is ignored
72 MINUS not followed by a number MINUS ignored
73 ?number not followed by ( ( is assumed
74 Conditional compilation switch >10 No conditional action taken
75 ? not followed by a number No conditional action taken
76 String longer than 244 characters String is truncated
77 Truncation to >23 bits No truncation done
78 Error in function statement Statement ignored; NULL output
79 Accumulator used as label := assumed
80 Undeclared identifier in a bracketed sequence Identifier ignored
81 END found within a CASE statement CASEND inserted before END
82 Illegal operator Rest of statement is ignored
83 More than 100 branch aheads at this point Branch ahead table cleared
84 WHILE clause not terminated by DO The statement is ignored
85 IF clause not terminated by THEN The statement is ignored
86 Stack error on fixing-up IF statement The statement is ignored
87 Label identifier previously declared Item redeclared as label
88 Not :=0 in a cell assignment Null generated
89 Illegal modifier in CASE clause Modifies X1 is assumed
90 Multiple assignment in a single statement Rest of statement is ignored
91 Illegal symbol in place of operator A semicolon is inserted following previous operand
92 Program or segment starts with illegal symbol A BEGIN is assumed missing
93 Illegal first character of a statement The statement is ignored
94 Statement starts with identifier and illegal symbol A semi-colon is inserted between identifier and symbol
95 Cell designator not followed by ← or := The statement is ignored
96 Illegal symbol in place of operand The statement is ignored
97 END, ELSE or; should have been found A semi-colon is inserted
98 Wrong type of identifier in PROCEDURE or GOTO statement The statement is ignored
99 ENTRY not in range 0-9 Entry not generated
A0 @ or £ not followed by identifier The statement is ignored
A1 Illegal operator before address The statement is ignored
A2 Illegal address assignment The statement is ignored
A3 CHAR sequence incorrectly terminated The statement is ignored
A4 Undeclared identifier after $ No action
A5 Undeclared identifier after £ No action
A6 Illegal declaration Operand set to zero
A7 Illegal identifier after @ Operand set to zero
B0 BRINGOVERLAY not followed by identifier The statement is ignored
B1 CUEOVERLAY not followed by identifier The statement is ignored
B2 Identifier not correctly declared The statement is ignored
C0 Illegal condition statement The condition is ignored skip to next THEN or DO
C1 Illegal symbol following relation The condition is ignored skip to next THEN or DO
C2 Base symbol not followed by identifier The condition is ignored skip to next THEN or DO
C3 Displacement symbol not followed by identifier The condition is ignored skip to next THEN or DO
C4 Character comparison with $ 'CH' is ignored
C5 $ identifier (index) outside range 0 - 4095 The condition is ignored skip to next THEN or DO
C6 AND, OR appear in same compound condition The first to appear is assumed
C7 Undeclared identifier in condition Zero is substituted
C8 Incompatible types in condition The condition is ignored skip to next THEN or DO
C9 Not integer accumulator on LHS of condition The condition is ignored skip to next THEN or DO
D0 SMO in a condition when SMOMACRO is set or assumed The condition is ignored skip to next THEN or DO
E1 FOR not followed by integer acc. assignment No action
E2 Illegal increment in FOR clause The statement is ignored up to DO
E3 UNTIL not found in FOR clause No action
E4 Illegal limit in FOR clause The statement is ignored up to DO
E5 DO does not terminate FOR clause No action
E6 Illegal item following '-' in limit The statement is ignored up to DO
E7 Stack is broken on fixing-up DO No action
E8 No STEP between FOR and UNTIL Step 1 assumed
E9 END not followed by ; END or ELSE ; inserted
F1 Illegal operand in function statement The statement is ignored
F2 Illegal constant operand The statement is ignored
F3 Function statement not terminated by ) No action
F4 Undeclared operand in function statement The statement is ignored
G0 GOTO not followed by identifier The statement is ignored
G6 Illegal character in DATA statement The symbol is ignored
G7 Block identifier declared differently elsewhere Skip to ;
G8 Redefinition of GLOBAL area in different mode The area is forced into LOWER
G9 Too many GLOBAL declarations in segment Compiler HALTS:-XX at this point
M0 Monadic operator in wrong context The statement is ignored
M1 Unrecognised monadic operator Rest of statement is ignored
M2 MEMBER not followed by ( The statement is ignored
M3 Member number >5 The statement is ignored
M4 Member number not followed by comma The statement is ignored
M5 Member priority >99 The statement is ignored
M6 No ) at close of member statement ) assumed
M7 ) not followed by ; in member statement ; assumed
P0 Not integer or definee after comma in a procedure statement 0 substituted
P1 Procedures nested to depth > 16 SENDTO file (if any) is closed
P2 Number after comma in a procedure statement >63 0 substituted
P3 Accumulator not followed by comma or ) in procedure statement ) assumed
R0 Identifier not found where expected Skip to ;
R1 Identifier not followed by ( in replacers statement Skip to ;
R2 ( not followed by integer in replacers statement Skip to ;
R3 Integer >510 in replacers statement 510 substituted
R4 Integer not followed by ) in replacers statement Skip to ;
R5 ; should terminate a replacers statement ; asumed

A1.2 Comments

Comment
Number
Meaning
1 Section of source not compiled as conditional compilation switch is off
2 A second [ has been found before a ]
3 A ] has been found without a matching [
4 a double-length 'shift-type' instruction has been generated
5 Nested LOWER declarations have been used
6 , not followed by SL in an INCLUDE statement, SL assumed
7 A SMO macro has been generated
8 CARRY or NOT CARRY not the first in a compound condition
9 Trivial condition, eg ≥#400CNT
10 No D after a double length integer
11 Base generated, though no BASE statement present
12 Attempt to access item outside normal domain
20 Other than one machine instruction generated by a statement in a case sequence
21 Division will corrupt an accumulator not explicitly mentioned in the statement (as in PLAN)
22 Multiplication will use an accumulator not explicitly mentioned in the statement (as in PLAN)
⇑ Top of page
© Chilton Computing and UKRI Science and Technology Facilities Council webmaster@chilton-computing.org.uk
Our thanks to UKRI Science and Technology Facilities Council for hosting this site