› Форумы › Другие компиляторы PL/I › Iron Spring › Ответ в теме: Iron Spring
Спасибо, посмотрел. Действительно, когда есть много отложенных (нереализованных пока) возможностей, он падает на втором проходе.
Из непонятных мне ошибок:
1. Оператор free
allocate a;
allocate a, b;
free a;
принимает, а вот
free a, b;
не принимает:
635 FREE YK0RC, PYK0RC, JK0RC, PJK0RC;
636 (ERR222)Invalid syntax in FREE statement at «YK0RC,PYK0RC,JK0RC,PJK0RC».
636 (INF249)-input flushed to next «;».
а вот это место непонятно вообще тут принимает?
808 IF N2^=0B THEN
809 FREE JJ1A, YY1A, JJD, YYD, PJ1A, PY1A, DJ1A, PDJ1A, DY1A, PDY1A,
810 PJD, PYD;
811 (ERR222)Invalid syntax in FREE statement at «JJ1A,YY1A,JJD,YYD».
811 (INF249)-input flushed to next «;».
811 IF KEYW THEN FREE JJA, YYA, PJA, PYA, DJA, PDJA, DYA, PDYA;
812
813 (ERR222)Invalid syntax in FREE statement at «JJA,YYA,PJA,PYA».
813 (INF249)-input flushed to next «;».
Или это все следствие комплексности некоторых массивов?
2. PUT DATA
оператор put data; не принимает, хорошо бы проверить, примет ли put data();
3. Непонятно, почему не нравится:
479 (ERR208)Unrecognized keyword GMS.
479 LOCATE GMS FILE(F1) SET(PR);
и сообщение тоже противоречивое
4. Не поддерживается встроенная функция secs
5. Не нравится некрасивое, но нормальное объявление:
62 DCL(M INIT(1d10),M1 INIT(1e-10),X00 INIT(1e-20),X0I INIT(18.0e0),
63 X0K1 INIT(1.5e0),X0K2 INIT(17.5e0),E1 INIT(1.0e-17),
64 PI INIT(3.14159265358979324e0),D(5),A,B,C,T,H,A1,AX,Z,GM,S,X1,X2,
65 QN,QC,I1,I0,K1,K0,BX,DX,B0,B1,B2,B3,B4,C0,$,#,#0,#2,#3,#4,#8,
62 (ERR222)Invalid syntax in INITIAL list at «1 D10».
6. То же странно:
10 DCL S(0:59) CHAR(80) VAR CONNECTED;
10 (ERR254)Invalid attribute CONNECTED.
11 S( 0)=’P E З У Л Ь T A T Ы P A C Ч E T A’;
12 S( 1)=’PACЧET ПAPAMETPOB ЦИЛИHДPИЧECKOЙ AHTEHHOЙ PEШETKИ’;
13 S( 2)=’ЧИCЛO ЭЛEMEHTOB (CEKTOPИAЛЬHЫX BOЛHOBOДOB) B ПEPEДAЮЩEЙ’;
и потом:
11 (INF684)Array argument for S assumed to be CONNECTED.
12 (INF684)Array argument for S assumed to be CONNECTED.
13 (INF684)Array argument for S assumed to be CONNECTED.
Надо будет собрать и послать. Если у Вас что-нибудь есть — шлите — я отработаю.