CSL-CROOK - Wykaz błędów translacji
Przejdź do nawigacji
Przejdź do wyszukiwania
Błędy fazy translacji są sygnalizowane przez translator CSL są sygnalizowane w postaci następującego komunikatu:
#ERROR NR <numer błędu> linia ^
gdzie:
- nr - numer błędu
- linia - błędna linia w języku CSL
- ^ - identyfikator wskazujący miejsce wystąpienia błędu w linii
| Nr błędu | Opis |
|---|---|
| 00 | nieprawidłowy znak w kolumnie 6 lub 4, rekord w instrukcji lub zdanie nie jest dekodowane (po wystąpieniu błędu w instrukcji poprzedniej); |
| 01 | niedopuszczalny znak w kolumnie 1; |
| 02 | znak nienumeryczny w kolumnach 2-5 lub etykieta nie kończy się w 5 kolumnie; |
| 03 | brak etykiety w instrukcji FORMAT; |
| 04 | etykieta większa od 3999 lub taka etykieta już wystąpiła w segmencie; |
| 05 | zdanie z "#" lub z "*" może występować tylko poza segmentem w CSL-U; |
| 06 | 81 znak w rekordzie różny od znaku CR (powrotu karetki); |
| 07 | puste pole informacyjne (kolumny 7-72) w rekordzie; |
| 08 | za duży stopień wcięcia instrukcji w programie (większy od 19); |
| 09 | instrukcja zaczyna się od złej kolumny (nie od kolumny 7, 9, 11, ...); |
| 10 | błąd części adresowej w instrukcji; |
| 11 | w ramach testu nie może występować część adresowa; |
| 12 | znak lub znaki, których nie powinno już być do końca instrukcji; |
| 13 | nazwa zmiennej pokrywa się z nazwą słowa strukturalnego lub słowo strukturalne źle użyte w instrukcji; |
| 14 | niedopuszczalne znaki przed słowem strukturalnym w instrukcji; |
| 15 | nazwa zmiennej dłuższa niż 18 liter lub błąd w nazwie (po nazwie ni wystąpiła kropka); |
| 16 | zła nazwa zbioru lub histogramu; |
| 17 | zbiory nie należą do tej samej klasy lub zbiór nie należy do danej klasy; |
| 18 | błąd w budowie zdania; |
| 19 | zła nazwa klasy lub zerowy wymiar klasy; |
| 20 | błąd numeru klucza w instrukcji CHECK lub PRISET; |
| 21 | słowo strukturalne MASTER, FUNCTION, SUBROUTINE lub BLOCK DATA występują wewnątrz segmentu; |
| 22 | instrukcja BEGIN i RECYCLE mogą występować jedynie po instrukcji ACTIVITIES; |
| 23 | zły typ zdania na końcu pętli DO; |
| 24 | pętla FOR zakończona instrukcjami o zbyt dużym wcięciu wiersza; |
| 25 | kolejne stopnie wcięć instrukcji w programie mogą się różnić o 1; |
| 26 | w tym miejscu nie może występować instrukcja wcięta; |
| 27 | dana instrukcja powinna być wcięta; |
| 28 | przekroczenie ilości nazw zmiennych (w segmencie może występować co najwyżej 255 zmiennych); |
| 29 | brak zdania FORMAT, do którego odwołują się instrukcje READ lub WRITE; |
| 30 | przekroczenie pól roboczych translatora; |
| 31 | zły typ zmiennej CSL lub użycie zmiennej niezdefiniowanej; |
| 32 | słowo GAINS musi być pierwszym słowem strukturalnym w instrukcji lub występować po słowach HEAD lub TAIL; |
| 33 | słowo TO może jedynie występować po GO lub CONVERT; |
| 34 | zerowy lub zbyt duży indeks w wyrażeniu indeksowym; |
| 35 | błąd w budowie wyrażenia; |
| 36 | nieparzysta ilość nawiasów lewo- i prawostronnych w wyrażeniu; |
| 37 | błąd w nazwie (więcej niż 6 znaków) w nazwie w instrukcjach FUNCTION, SUBROUTINE lub COMMON; |
| 38 | za duży poziom pogrążenia funkcji w innej funkcji (większy od 10); |
| 39 | słowo OR może występować tylko w ramach tekstu; |
| 40 | po słowie SPLIT mogą występować jedynie słowa INTO, HEAD, ELSE lub TAIL; |
| 41 | po słowie FIND mogą występować jedynie słowa FIRST, LAST, MAX lub MIN; |
| 42 | ponowne użycie lub definiowanie nazwy; |
| 43 | po słowie CLASS mogą występować jedynie słowa TIME, SET lub BSET; |
| 44 | zła deklaracja nazwy komórki czasowej (t. Xxx); |
| 45 | PMEND może występować w programie jedynie za instrukcją POSMORTEM; |
| 46 | instrukcja ACTIVITIES może występować jedynie w segmencie MASTER i tylko jednokrotnie; |
| 47 | instrukcja RETURN może występować jedynie w segmentach FUNCTION lub SUBROUTINE; |
| 48 | po słowie BLOCK może być tylko słowo DATA; |
| 49 | błąd w zdaniu z "#"; |
| 50 | brak takiej etykiety w programie; |
| 51 | w programie nie występuje instrukcja FORMAT o takiej etykiecie; |
Źródło: Translator języka CSL-CROOK dla minikomputera MERA-400 w systemie operacyjnym CROOK-4, Instrukcja Programisty (wersja-17/2), Janusz Gocałek, Jacek Klauziński, Poznań, 1985