Ошибка компиляции: UniData LSELECT - PullRequest
0 голосов
/ 11 июня 2018

Я нашел программу LSELECT на веб-сайте программного обеспечения для ракет, но у меня возникли проблемы с ее компиляцией.

У кого-нибудь был успех с ней?

Здесьошибки:

:BASIC BS LSELECT

Compiling Unibasic: BS/LSELECT in mode 'm'.
main program: syntax error at or before
<line 126> GETLIST SOURCE.LIST TO 9 ELSE
           -----------------------^
Expecting: array,variable

Warning: there are some statements after END near line 132
error: the following labels are used but have not been defined:
SHOW.MESSAGE
FINISH.UP
BUILD.LIST2
LOAD.TEMP.FILE
CREATE.TEMP.FILE
  near line 243
compilation failed

1 Ответ

0 голосов
/ 12 июня 2018

Существуют различные варианты команд TCL, а также базовых программ.Это позволяет переносить код из разных устаревших систем в Unidata и не выполнять полную переписывание.Этот код написан для базового варианта Unidata.Вы можете временно переключиться на это в своем сеансе, выполнив:

:BASICTYPE "U"

Или добавьте директиву компилятора в начало программы, которая сообщает Unidata, какой базовый подинтаксис использовать.Все они очень близки, с довольно небольшими различиями.

$BASICTYPE "U"

https://docs.rocketsoftware.com/nxt/gateway.dll/RKBnew20/unidata/previous%20versions/v7.2/unidata_unibasicapplicationsdevguide_v72.pdf

Стиль выбора - это стандартное значение по умолчанию, потому что большая часть кода, работающего на Unidata, портирована из более старого Pickили Pick-совместимые системы.Поэтому многие приложения устанавливают BASICTYPE "P" и ECLTYPE "P" в пункте LOGIN для совместимости.Согласно "HELP BASICTYPE" опция M предназначена для разновидностей McDonnell Douglas или Reality.

ECLTYPE - еще одна распространенная вещь, которую нужно настроить - она ​​управляет обработкой определенных аргументов команды.Наиболее полезными являются TO DELIM или TO XML, которые доступны только в ECLTYPE U. Хитрость заключается в том, что имена команд в нижнем регистре всегда оцениваются в ECLTYPE U, поэтому вам не нужно всегда переключаться вперед и назад - просто используйте нижнийна случай если вы захотите эти "современные" расширения из 90-х; -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...