Epebufl!E 892 Lpez!cex Tabela D.1 w tym dodatku pokazuje symboliczne wartości kodów błędów generowanych przez AutoLISP. Zmienna systemowa AutoCADa ERRNO ma nadawaną jedną z przedstawionych wartości wtedy, gdy wywołanie funkcji AutoLISPu spowoduje błąd wykryty przez AutoCAD. Aplikacje AutoLISPu mogą sprawdzać aktualną wartość zmiennej systemowej ERRNO przez wywołanie (getvar "errno"). Zmiennej ERRNO nie zawsze jest nadawana wartość zero, zatem jeśli nie zostanie sprawdzony jej stan zaraz po tym, jak funkcja AutoLISPu zgłosi błąd, to błąd, na który wskazuje jej wartość, może być mylący. Zmienna ta jest zawsze zerowana podczas wejścia do edytora rysunku. Możliwe wartości zmiennej ERRNO i ich znaczenie mogą zmienić się w przyszłych wydaniach AutoCADa. Tabela D.1. Kody błędów wykonania programu Wartość Znaczenie Funkcje AutoLISPu 1 Błędna nazwa tablicy symboli regapp 2 Błędna nazwa elementu lub zbioru wskazań Kilka funkcji (patrz uwaga pod tą tabelą)
893 BvupMJTQ!!qsbluzd{oz!lvst Tabela D.1. Kody błędów wykonania programu (c.d.) Wartość Znaczenie Funkcje AutoLISPu 3 Przekroczono maks. liczbę zbiorów wskazań 4 Błędny zbiór wskazań 5 Nieprawidłowe wykorzystanie elementu def. bloku 6 Nieprawidłowe wykorzystanie elementu Zodn 7 Błąd wskazania elementu przez punkt Kilka funkcji (patrz uwaga pod tą tabelą) Kilka funkcji (patrz uwaga pod tą tabelą) entsel nentsel 8 Koniec pliku elementów entnext entupd 9 Koniec pliku definicji bloku entnext 10 Nie znaleziono ostatniego elementu entlast 11 Niedozwolone wymazanie (entdel) rzutni (VPORT) 12 Niedozwolona operacja w trakcie polecenia PLINIA entdel 13 Błędny identyfikator handent 14 Nie włączono identyfikatorów handent 15 Błędne argumenty przy transformacji ukł. Współrzędnych 16 Błędny układ współrzędnych do transformacji 17 Błędne wykorzystanie wymazanego elementu (aktualnie nie wykorzystywana) trans trans entmod trans 18 Błędna nazwa tablicy tblnext tblsearch 19 Błędny argument funkcji tablicy tblnext tblsearch 20 Próba ustawienia zmiennej tylko do odczytu setvar 21 Niedozwolona wartość zero setvar 22 Wartość poza zakresem setvar 23 Regeneracja obiektów złożonych entupd 24 Próba zmiany typu elementu 25 Zła nazwa warstwy 26 Zła nazwa rodzaju linii 27 Zła nazwa koloru 28 Zła nazwa stylu tekstu entmake 29 Zła nazwa symbolu entmake
Tabela D.1. Kody błędów wykonania programu (c.d.) Epebufl!E 894 Wartość Znaczenie Funkcje AutoLISPu 30 Złe pole dla typu elementu 31 Próba zmiany wymazanego elementu entmod 32 Próba zmiany SEQEND entmod 33 Próba zmiany identyfikatora entmod 34 Niedozwolona modyfikacja widoczności rzutni 35 Element na zamkniętej warstwie 36 Zły typ elementu entmake 37 Zły element PLINE entmake 38 Niekompletny element złożony w bloku entmake 39 Złe pole nazwy bloku (aktualnie nie wykorzystywana) 40 Powielenie pól znacznika bloku entmake 41 Powielenie pól nazwy bloku entmake 42 Zły wektor prostopadły entmake 43 Pominięto nazwę bloku entmake 44 Pominięto znaczniki bloku entmake 45 Błędny blok bez nazwy entmake 46 Błędny element definicji bloku entmake 47 Pominięto wymagane pole entmake 48 Nierozpoznany typ danych dodatkowych 49 Niewłaściwe zagnieżdżenie list w danych dodatkowych 50 Niewlaściwe położenie pola APPID 51 Przekroczono maksymalny rozmiar danych dodatkowych 52 Błąd wskazania elementu podano odpowiedź pustą 53 Powielona nazwa aplikacji w danych dodatkowych 54 Próba utworzenia lub modyfikacji rzutni 55 Próba utworzenia lub zmodyfikowania elementu Xref, Xdef, lub Xdep entsel nentsel
895 BvupMJTQ!!qsbluzd{oz!lvst Tabela D.1. Kody błędów wykonania programu (c.d.) Wartość Znaczenie Funkcje AutoLISPu 56 Filtr funkcji : niespodziewany koniec listy 57 Filtr funkcji : brak operandu tekstu 58 Filtr funkcji : niewłaściwy łańcuch kodu (-4) 59 Filtr funkcji : nieprawidłowe zagnieżdżenie lub puste wyrażenie warunku 60 Filtr funkcji : pomylony początek i koniec wyrażenia warunku 61 Filtr funkcji : niewłaściwa ilość argumentów w wyrażeniu warunku (dla NOT lub XOR) 62 Filtr funkcji : przekroczona graniczna ilość zagnieżdżeń 63 Filtr funkcji : nieważny kod grupy 64 Filtr funkcji : nieważny test łańcucha 65 Filtr funkcji : nieważny test wektora 66 Filtr funkcji : nieważny test wartości rzeczywistej 67 Filtr funkcji : nieważny test wartości całkowitej 68 Digitizer nie jest pulpitem tablet 69 Tablet nie został skalibrowany tablet 70 Nieważne argumenty tablet 71 Błąd systemu ADS: nie jest możliwe przydzielenie nowego bufora wyniku 72 Błąd systemu ADS: pusty wskaźnik (null pointer) 73 Nie można otworzyć pliku wykonawczego xload 74 Aplikacja została już wczytana xload 75 Wczytano już maksymalną dopuszczalną ilość aplikacji xload
Tabela D.1. Kody błędów wykonania programu (c.d.) Epebufl!E 896 Wartość Znaczenie Funkcje AutoLISPu 76 Nie jest możliwe wykonanie aplikacji xload 77 Niezgodny numer wersji xload 78 Nie jest możliwe usunięcie z pamięci aplikacji zagnieżdżonej 79 Nieudane usunięcie aplikacji z pamięci xunload xunload 80 Aplikacja nie jest aktualnie wczytana xunload 81 Zbyt mało pamięci, by wczytać aplikację 82 Błąd systemu ADS: nieważna macierz transformacji 83 Błąd systemu ADS: nieważna nazwa symbolu 84 Błąd systemu ADS: nieważna wartość symbolu 85 Zablokowana próba dostępu do operacji AutoLISPu/ADSu podczas wyświetlania okna dialogowego xload Kody błędów 2, 5 i 6 mogą być zgłaszane przez kilka funkcji bibliotecznych, w tym entdel, entget, entmod, entnext, entupd, redraw, regapp, ssadd, ssdel, ssmemb, trans i xdroom. Lpnvojlbuz!ce uz!cex Po wykryciu warunków błędu, AutoLISP przerywa działanie funkcji i wywołuje funkcję użytkownika *error*, z komunikatem wskazującym rodzaj błędu. Jeżeli nie zdefiniowano funkcji *error* (*error* ma przypisaną wartość nil), podejmowane są standardowe działania obsługi błędów i wyświetlany jest komunikat: error: komunikat błąd: komunikat oraz tzw. wsteczny ślad funkcji. Jeżeli zdefiniowano funkcję *error*, to jest ona wywoływana z jednym argumentem komunikat. Cez!qsphsbn qsphsbnx!v zulpxzd x!v zulpxzdi Poniżej przedstawiono listę komunikatów błędów, które pojawiają się w trakcie uruchamiania funkcji AutoLISPu. Większość z nich wskazuje na typowe błędy programów takie jak:
897 BvupMJTQ!!qsbluzd{oz!lvst błędnie podana nazwa funkcji lub symbolu, nieprawidłowy typ lub liczba argumentów funkcji, niezrównoważona liczba nawiasów, brak cudzysłowu (niezakończone łańcuchy), próba wykorzystania niezakończonej funkcji. Poniżej przedstawiono w porządku alfabetycznym nazwy oraz opisy błędów programów użytkowych. arguments of a defun can't have the same name Błąd ten spowoduje funkcja zdefiniowana z wieloma argumentami o tej samej nazwie. AutoCAD rejected function Przekazano błędne argumenty funkcjom AutoCADa (na przykład próba ustawienia zmiennej systemowej tylko do odczytu poleceniem SETVAR (ZMSYS) lub użycia tblnext z nieprawidłową nazwą tablicy) lub samo użycie funkcji jest błędem w aktualnym kontekście. Przykładowo, nie wolno stosować funkcji getxxx wewnątrz funkcji command. AutoLISP stack overflow Przekroczona została pojemność obszaru stosu AutoLISPu. Może tobyć wynikiem intensywnego wykorzystywania rekurencji funkcji lub bardzo dużych list argumentów funkcji. bad argument type Do funkcji przekazano argument niewłaściwego typu (np. nie można użyć funkcji strlen dla liczby typu integer). bad association list Lista przekazana funkcji assoc nie zawiera list z nazwami kluczowymi. bad conversion code Komunikat taki wskazuje, że dla funkcji trans został podany niewłaściwy identyfikator obszaru (papieru lub modelu). bad ENTMOD list Jedna z podlist listy asocjacji, dostarczonej funkcji entmod, zawiera niewłaściwą wartość. bad ENTMOD value Jedna z list w liście asocjacji (skojarzeń), przekazanych funkcji entmod, zawiera nieprawidłową wartość. bad formal argument list Podczas wyliczania funkcji, AutoLISP wykrył nieprawidłową listę argumentów formalnych. Może towystąpić np. w przypadku, gdy zamiast funkcji podano listę danych.
Epebufl!E 898 bad function Pierwszy (zerowy) element listy nie jest dopuszczalną nazwą funkcji. Może towystąpić np. w przypadku, gdy pierwszy element jest liczbą lub nazwą zmiennej. Komunikat ten może wskazywać również na to, że funkcja jest błędnie zdefiniowana na przykład brakuje listy wymaganych argumentów formalnych. bad function code Taki komunikat wskazuje, że polecenie TABLET (PULPIT) otrzymało niewłaściwy identyfikator funkcji. bad grvecs list value Któryś składnik listy dla funkcji grvecs nie jest punktem 2W lub 3W. bad grvecs matrix value Macierz dostarczona funkcji grvecs została źle uformowana lub zawiera dane niewłaściwego typu (na przykład STR, SYM itp.). bad list Przekazano funkcji nieprawidłowo uformowaną listę. Może towystąpić w przypadku, gdy liczba rzeczywista (typ real) zaczyna się kropką dziesiętną; należy pamiętać otym, że zapis takiej liczby musi zaczynać się wtedy zerem. badlistofpoints Komunikat wyświetlany przez w przypadku, gdy wraz z parametrami _F, _CP lub _WP zostanie przesłana lista pusta lub lista zawierająca obiekty inne, niż punkty. Komunikat taki możeteż wyświetlić funkcja grvecs. bad node Funkcja type napotkała pozycję nieprawidłowego typu. bad node type in list Funkcja foreach napotkała pozycję nieprawidłowego typu. bad point argument bad point value Niewłaściwie zdefiniowany punkt (lista dwóch liczb typu real) został przekazany funkcji oczekującej na podanie współrzędnych. Może towystąpić w przypadku, gdy liczba rzeczywista mniejsza od 1 zaczyna się kropką dziesiętną; należy pamiętać otym, że zapis takiej liczby musi zaczynać się od zera. bad real number detected Nastąpiła próba przesłania z AutoLISPu do AutoCADa niewłaściwej liczby rzeczywistej (typu real).
899 BvupMJTQ!!qsbluzd{oz!lvst bad list Argument przekazany funkcji ( "E") nie jest prawidłową listą z danymi elementu (taką jek wynik funkcji entget). bad list value Jedna z list składowych na liście filtru przekazanej do ( "x") zawiera niepoprawną wartość. bad mode string Błąd ten występuje wtedy, gdy argument mode funkcji jest (niedopuszczalnym) niedozwolonym tekstem. bad xdata list Błąd taki powstaje wtedy, gdy funkcjom xdsize,, entmod, entmake lub textbox zostaje podana źle uformowana lista dodatkowych danych elementu (xdata). base point is required Funkcja getcorner została wywołana bez podania wymaganego argumentu (punktu bazowego). Boole arg1 <0 or >15 Pierwszy argument funkcji boole musi być liczbą typu integer z zakresu od 0 do 15. can't evaluate expression Błąd tenmoże być spowodowany niewłaściwym położeniem kropki dziesiętnej lub innym źle skonstruowanym wyrażeniem. can't open (file) for input LOAD failed Plik o nazwie przekazanej funkcji load nie został znaleziony lub użytkownik nie ma dostępu do czytania pliku. can't reenter AutoLISP Bufor komunikacyjny AutoCAD-AutoLISP jest wykorzystywany przez aktywną funkcję; żadna nowa funkcja nie możebyć wywołana przed jej zakończeniem. console break Użytkownik wprowadził Ctrl+C w czasie działania funkcji. divide by zero Dzielenie przez zero jest niedozwolone. divide overflow Wynik dzielenia przez bardzo małą liczbę jest obarczony dużym błędem.
Epebufl!E 89: exceeded maximum string length Łańcuch alfanumeryczny (string) przesłany do funkcji jest dłuższy, niż 132 znaki. extra right paren Wykryto za dużo prawych nawiasów (jeden lub więcej). file not open Deskryptor pliku dla operacji WE/WY nie odpowiada otwartemu plikowi. file read insufficient string space Podczas czytania z pliku przekroczono dostępny obszar pamięci łańcuchów. file size limit exceeded Rozmiar pliku przekracza wartość dopuszczalną dla systemu operacyjnego. floating-point exception System operacyjny wykrył błąd obliczeń zmiennoprzecinkowych (tylko w środowisku systemów typu UNIX). function cancelled Użytkownik wprowadził Ctrl+C w odpowiedzi na zgłoszenie gotowości do przyjęcia danych wejściowych. function undefined for argument Argument przekazany do funkcji log lub sqrt jest spoza dopuszczalnego zakresu. function undefined for real Funkcji oczekującej danych typu integer przekazano liczbę typu real, np. (lsh 2 1.2). grvecs missing endpoint Lista wektorów podana funkcji grvecs nie posiada punktu końcowego. illegal type in left Wystąpienie takiego komunikatu oznacza, że plik LSP nie jest czystym plikiem ASCII, ale został utworzony za pomocą programu procesora tekstów i zawiera kody formatujące. improper argument Funkcji gcd przekazano argument mniejszy lub równy zero. inappropriate object in function Funkcja vmon wykryła niepoprawnie skonstruowaną funkcję.
8:1 BvupMJTQ!!qsbluzd{oz!lvst incorrect number of arguments Podano więcej niż jeden argument funkcji quote. incorrect number of arguments to a function Liczba argumentów przekazanych funkcji nie odpowiada liczbie argumentów formalnych określonych w funkcji defun. incorrect request for command list data Napotkana funkcja command nie może być wykonana ze względu na działanie innej funkcji. input aborted Wykryto warunek błędu lub przedwczesnego końca pliku, co powoduje przerwanie wczytywania pliku. insufficient node space Do wykonania żądanego działania funkcji zabrakło wolnego obszaru sterty. insufficient string space Obszar sterty jest zbyt mały do ulokowania podanego łańcucha tekstowego. invalid argument Nieprawidłowy typ argumentu lub argument poza dopuszczalnym zakresem. invalid argument list Przekazano funkcji uszkodzoną listę argumentów. invalid character Wyrażenie zawiera niepoprawny znak. invalid dotted pair Pary kropkowe są listami zawierającymi dwa argumenty oddzielone sekwencją spacja kropka spacja. Błąd tenmoże pojawić się w przypadku, gdy mniejsza od 1 liczba rzeczywista rozpoczyna się kropką dziesiętną; należy pamiętać otym,że liczba taka musi zaczynać się zerem. invalid integer value Została napotkana liczba typu integer o wartości spoza dopuszczalnego zakresu. LISPSTACK overflow Przekroczono obszar stosu AutoLISPu. Może towystąpić w przypadku wielokrotnego zagnieżdżenia funkcji rekurencyjnej lub funkcji z bardzo dużą listą argumentów. Należy spróbować zwiększyć wartość zmiennej środowiskowej LISPSTACK.
Epebufl!E 8:2 malformed list Odczytywana z pliku lista skończyła się przedwcześnie. Najczęstszą przyczyną jest błąd parowania nawiasów otwierających i zamykających lub znaków cytowania. malformed string Łańcuch czytany z pliku zakończył się przedwcześnie. misplaced dot Błąd tenmoże pojawić się w przypadku, gdy zapis liczby o wartości bezwzględnej mniejszej od 1 rozpoczyna się kropką dziesiętną; należy pamiętać otym,że liczba taka musi zaczynać się zerem. null function Została wykonana próba wyliczenia niezdefiniowanej funkcji. quit/exit abort Jest to wynik wywołania funkcji quit lub exit. Funkcje te nie są aktualnie stosowane w AutoLISPie. string too long Łańcuch alfanumeryczny dostarczony funkcju setvar jest za długi. too few arguments Za mało argumentów przekazano funkcji wewnętrznej. too few arguments to grvecs Funkcja grvecs otrzymała zbyt małą liczbę argumentów. toomanyarguments Za dużo argumentów przekazano funkcji wewnętrznej. Cez!xfxous{of Błędy opisane poniżej pojawiają się wyjątkowo rzadko. Wskazują na wewnętrzne błędy w AutoLISPie i ich pojawienie się powinno być zgłaszane dystrybutorowi programu. bad argument to system call System operacyjny wykrył błędne odwołanie do systemu wygenerowane przez AutoLISP (tylko w środowisku systemów typu UNIX). bus error System operacyjny wykrył błąd magistrali (tylko w środowisku systemów typu UNIX).
8:3 BvupMJTQ!!qsbluzd{oz!lvst hangup System operacyjny wykrył sygnał zawieszenie systemu (tylko w środowisku systemów typu UNIX). illegal instruction System operacyjny wykrył błędną instrukcję maszynową (tylko w środowisku systemów typu UNIX). segmentation violation System operacyjny wykrył próbę zaadresowania pamięci znajdującej się poza przydzielonym dla procesu obszarem (tylko w środowisku systemów typu UNIX). unexpected signal nnn Wykryto nieoczekiwane pojawienie się sygnału wygenerowanego przez system operacyjny (tylko w środowisku systemów typu UNIX).