Rev 9893 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9893 | Rev 9895 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | (* |
1 | (* |
2 | BSD 2-Clause License |
2 | BSD 2-Clause License |
Line 3... | Line 3... | ||
3 | 3 | ||
4 | Copyright (c) 2018-2022, Anton Krotov |
4 | Copyright (c) 2018-2023, Anton Krotov |
5 | All rights reserved. |
5 | All rights reserved. |
Line 6... | Line 6... | ||
6 | *) |
6 | *) |
Line 1135... | Line 1135... | ||
1135 | ELSE |
1135 | ELSE |
1136 | IL.AddCmd(IL.opMODR, 2) |
1136 | IL.AddCmd(IL.opMODR, 2) |
1137 | END |
1137 | END |
Line 1138... | Line 1138... | ||
1138 | 1138 | ||
1139 | |PROG.stORD: |
1139 | |PROG.stORD: |
1140 | IL.AddCmd(IL.opPRECALL, 0); |
1140 | cmd1 := IL.getlast(); |
1141 | PExpression(parser, e); |
1141 | PExpression(parser, e); |
1142 | PARS.check(isChar(e) OR isBoolean(e) OR isSet(e) OR isCharW(e) OR isStringW1(e), pos, 66); |
1142 | PARS.check(isChar(e) OR isBoolean(e) OR isSet(e) OR isCharW(e) OR isStringW1(e), pos, 66); |
1143 | IF e.obj = eCONST THEN |
1143 | IF e.obj = eCONST THEN |
1144 | IF isStringW1(e) THEN |
1144 | IF isStringW1(e) THEN |
1145 | ASSERT(ARITH.setInt(e.value, StrToWChar(e.value.string(SCAN.STRING).s))) |
1145 | ASSERT(ARITH.setInt(e.value, StrToWChar(e.value.string(SCAN.STRING).s))) |
1146 | ELSE |
1146 | ELSE |
1147 | ARITH.ord(e.value) |
1147 | ARITH.ord(e.value) |
1148 | END |
1148 | END |
1149 | ELSE |
1149 | ELSE |
- | 1150 | IF isBoolean(e) THEN |
|
- | 1151 | cmd2 := IL.getlast(); |
|
- | 1152 | IL.setlast(cmd1); |
|
- | 1153 | IL.AddCmd(IL.opPRECALL, 0); |
|
- | 1154 | IL.AddCmd0(IL.opRES); |
|
- | 1155 | IL.drop; |
|
1150 | IF isBoolean(e) THEN |
1156 | IL.setlast(cmd2); |
1151 | IL._ord |
1157 | IL._ord |
1152 | END |
1158 | END |
1153 | END; |
1159 | END; |