diff --git a/compiler/globtype.pas b/compiler/globtype.pas index 2d7f515d3f..73a9bf4bae 100644 --- a/compiler/globtype.pas +++ b/compiler/globtype.pas @@ -121,7 +121,7 @@ interface cs_fp_emulation,cs_extsyntax,cs_openstring, { support } cs_support_goto,cs_support_macro, - cs_support_c_operators,cs_static_keyword, + cs_support_c_operators, { generation } cs_profile,cs_debuginfo,cs_compilesystem, cs_lineinfo,cs_implicit_exceptions, diff --git a/compiler/msg/errorct.msg b/compiler/msg/errorct.msg index 3b06b660dd..b3c69f68f9 100644 --- a/compiler/msg/errorct.msg +++ b/compiler/msg/errorct.msg @@ -2282,7 +2282,6 @@ S*2Aas_assemblar utilitzant GNU AS **2So_Igual que -Mtp **2Sp_Igual que -Mgpc **2Ss_El nom del constructor ha de ser init (destructor = done) -**2St_Permet la paraula clau -static- en els objectes **1s_No cridis l'assemblador ni l'enlla�ador **2sh_Genera la seq��ncia per enlla�ar a l'anfitri� **2st_Genera la seq��ncia per enlla�ar al dest� diff --git a/compiler/msg/errord.msg b/compiler/msg/errord.msg index 90d302986a..89918eb144 100644 --- a/compiler/msg/errord.msg +++ b/compiler/msg/errord.msg @@ -2888,7 +2888,6 @@ S*2Aas_Assembliere mit Hilfe von GNU AS **2So_Sei TP/BP 7.0 kompatibel (wie -Mtp) **2Sp_Sei gpc-kompatibel (wie -Mgpc) **2Ss_Konstruktor- und Destruktorname m�ssen "Init" und "Done" sein -**2St_Erlaube Schl�sselwort static in Objekten **2Sx_Exception Schl�sselw�rter einschalten (Voreinstellung in Delphi/ObjFPC Moden) **1s_Rufe weder Assembler noch Linker auf (nur mit -a) **2sh_Erzeuge Script um auf dem Host zu linken diff --git a/compiler/msg/errorda.msg b/compiler/msg/errorda.msg index f878cc855b..2e66d7df04 100644 --- a/compiler/msg/errorda.msg +++ b/compiler/msg/errorda.msg @@ -2336,7 +2336,6 @@ option_help_pages=11025_[ **2So_samme som -Mtp **2Sp_samme som -Mgpc **2Ss_constructor-navn skal være "init" (destructor-navn skal være "done") -**2St_tillad nøgleordet static i objekter **1s_kør hverken assembler eller linker **2sh_generér script til linkning på værtscomputeren **2st_generér script til linkning på mål-computeren diff --git a/compiler/msg/errordu.msg b/compiler/msg/errordu.msg index 683a0ee6da..f3b09ce32c 100644 --- a/compiler/msg/errordu.msg +++ b/compiler/msg/errordu.msg @@ -2888,7 +2888,6 @@ S*2Aas_Assembliere mit Hilfe von GNU AS **2So_Sei TP/BP 7.0 kompatibel (wie -Mtp) **2Sp_Sei gpc-kompatibel (wie -Mgpc) **2Ss_Konstruktor- und Destruktorname müssen "Init" und "Done" sein -**2St_Erlaube Schlüsselwort static in Objekten **2Sx_Exception Schlüsselwörter einschalten (Voreinstellung in Delphi/ObjFPC Moden) **1s_Rufe weder Assembler noch Linker auf (nur mit -a) **2sh_Erzeuge Script um auf dem Host zu linken diff --git a/compiler/msg/errore.msg b/compiler/msg/errore.msg index a6fbbacb67..83bf8bfc43 100644 --- a/compiler/msg/errore.msg +++ b/compiler/msg/errore.msg @@ -3011,7 +3011,6 @@ S*2Aas_Assemble using GNU AS **2Sm_Support macros like C (global) **2So_Same as -Mtp **2Ss_Constructor name must be init (destructor must be done) -**2St_Allow static keyword in objects **2Sx_Enable exception keywords (default in Delphi/ObjFPC modes) **1s_Do not call assembler and linker **2sh_Generate script to link on host diff --git a/compiler/msg/errores.msg b/compiler/msg/errores.msg index ecdc7f4df3..f9d38dddb1 100644 --- a/compiler/msg/errores.msg +++ b/compiler/msg/errores.msg @@ -2300,7 +2300,6 @@ S*2Aas_ensamblar usando GNU AS **2So_igual que -Mtp **2Sp_igual que -Mgpc **2Ss_el nombre del constructor debe ser init (el destructor debe ser done) -**2St_permitir la palabra reservada static en objetos **1s_no llamar al ensamblador ni enlazador **2sh_Generar script para enlazar en host **2st_Generar script para enlazar en destino diff --git a/compiler/msg/errorf.msg b/compiler/msg/errorf.msg index 5bf21eaf1c..5c9dbee077 100644 --- a/compiler/msg/errorf.msg +++ b/compiler/msg/errorf.msg @@ -1805,7 +1805,6 @@ option_help_pages=11025_[ **2So_essaye d'�tre compatible avec TP/BP 7.0 **2Sp_essaye d'�tre compatible avec GPC **2Ss_les constructeurs doivent s'appeler init (et les destructeurs done) -**2St_autorise "static" dans les objects **1s_n'appelle pas l'assembleur ni le linker **1u<x>_rend le symbole <x> non d�fini **1U_options d'unit�s : diff --git a/compiler/msg/errorfi.msg b/compiler/msg/errorfi.msg index 952eda7c3c..9a66af9a14 100644 --- a/compiler/msg/errorfi.msg +++ b/compiler/msg/errorfi.msg @@ -2438,7 +2438,6 @@ S*2Aas_assembler avec GNU AS **2So_identique � -Mtp **2Sp_identique � -Mgpc **2Ss_les constructeurs doivent s'appeler init (et les destructeurs done) -**2St_autorise "static" dans les objects **1s_n'appelle pas l'assembleur ni le linker **2sh_g�n�rer un script � lier sur l'h�te **2st_g�n�rer un script � lier sur la cible diff --git a/compiler/msg/errorhe.msg b/compiler/msg/errorhe.msg index 82ea97288f..56276ae65b 100644 --- a/compiler/msg/errorhe.msg +++ b/compiler/msg/errorhe.msg @@ -2604,7 +2604,6 @@ S*2Aas_ **2Sm_���� ����� ����� �C (��������) **2So_��� � -Mtp **2Ss_�� ���� ���� ����� init (�� ���� ���� ����� done) -**2St_���� ����� ���� ���������� **2Sx_���� ����� ���� �exception (����� ���� ����� Delphi/ObjFPC) **1s_�� ���� ����� ������ **2sh_��� ����� ������ ����� diff --git a/compiler/msg/errorheu.msg b/compiler/msg/errorheu.msg index 3416ee88c0..d8b865d711 100644 --- a/compiler/msg/errorheu.msg +++ b/compiler/msg/errorheu.msg @@ -2604,7 +2604,6 @@ S*2Aas_אסוף עם GNU AS **2Sm_תמוך במקרו דומים לC (גלובליים) **2So_זהה ל -Mtp **2Ss_שם יוצר חייב להיות init (שם הורס חייב להיות done) -**2St_אפשר מילות מפתח באובייקטים **2Sx_אפשר מילות מפתח לexception (ברירת מחדל במצבי Delphi/ObjFPC) **1s_אל תקרא למאסף והמקשר **2sh_צור תסריט לקישור במארח diff --git a/compiler/msg/errorid.msg b/compiler/msg/errorid.msg index bf522c5735..260412cd98 100644 --- a/compiler/msg/errorid.msg +++ b/compiler/msg/errorid.msg @@ -2620,7 +2620,6 @@ S*2Aas_Rangkai menggunakan GNU AS **2Sm_Dukung makro seperti C (global) **2So_Sama seperti -Mtp **2Ss_Nama konstruktor harus init (destruktor harus done) -**2St_Ijinkan kata kunci static dalam obyek **2Sx_Hidupkan kata kunci exception (standar dalam mode Delphi/ObjFPC) **1s_Jangan panggil assembler dan linker **2sh_Hasilkan naskah untuk me-link pada host diff --git a/compiler/msg/errorn.msg b/compiler/msg/errorn.msg index 610f46710e..cf46e0f686 100644 --- a/compiler/msg/errorn.msg +++ b/compiler/msg/errorn.msg @@ -2288,7 +2288,6 @@ option_help_pages=11025_[ **2So_Probeer TP/BP-7.0-compatibel te zijn **2Sp_Probeer GNU-Pascal-compatibel te zijn **2Ss_Constructor naam moet init zijn (destructor moet done zijn) -**2St_Sta het sleutelwoord "static" toe in objecten **1s_Roep assembler en linker niet op (slechts met -a) **1sh_Genereer een script om op het hostplatform te linken **1sr_Voer geen registertoewijzing uit (optimalisaties worden uitgeschakeld) diff --git a/compiler/msg/errorpl.msg b/compiler/msg/errorpl.msg index 4f79484299..767d40d8eb 100644 --- a/compiler/msg/errorpl.msg +++ b/compiler/msg/errorpl.msg @@ -2307,7 +2307,6 @@ S*2Aas_asemblacja przy u **2So_to samo co -Mtp **2Sp_to samo co -Mgpc **2Ss_konstruktory musz� mie� nazw� init (destruktory - done) -**2St_zezwalanie na s�owo kluczowe static w obiektach **1s_pomini�cie wywo�ania asemblera i linkera **2sh_generacja skryptu do linkowania na ho�cie **2st_generacja skryptu do linkowania na celu diff --git a/compiler/msg/errorpli.msg b/compiler/msg/errorpli.msg index 7d7b65a087..de77c73c7c 100644 --- a/compiler/msg/errorpli.msg +++ b/compiler/msg/errorpli.msg @@ -2307,7 +2307,6 @@ S*2Aas_asemblacja przy u **2So_to samo co -Mtp **2Sp_to samo co -Mgpc **2Ss_konstruktory musz� mie� nazw� init (destruktory - done) -**2St_zezwalanie na s�owo kluczowe static w obiektach **1s_pomini�cie wywo�ania asemblera i linkera **2sh_generacja skryptu do linkowania na ho�cie **2st_generacja skryptu do linkowania na celu diff --git a/compiler/msg/errorpt.msg b/compiler/msg/errorpt.msg index b5ac391c64..067cb3cdd8 100644 --- a/compiler/msg/errorpt.msg +++ b/compiler/msg/errorpt.msg @@ -3002,7 +3002,6 @@ S*2Aas_Monta usando o GNU AS **2Sm_Suporta macros semelhantes C (global) **2So_Mesmo que -Mtp **2Ss_Nome construtor deve ser 'init' (destruidor deve ser 'done') -**2St_Permite palavras-chave est�ticas em objetos **2Sx_Habilita palavras-chave exce��es (padr�o nos modos Delphi/ObjFPC) **1s_N�o chama o montador assembler e o vinculador **2sh_Gera roteiro para vincular no servidor diff --git a/compiler/msg/errorptu.msg b/compiler/msg/errorptu.msg index 8b067d2f75..162aacf41c 100644 --- a/compiler/msg/errorptu.msg +++ b/compiler/msg/errorptu.msg @@ -3002,7 +3002,6 @@ S*2Aas_Monta usando o GNU AS **2Sm_Suporta macros semelhantes C (global) **2So_Mesmo que -Mtp **2Ss_Nome construtor deve ser 'init' (destruidor deve ser 'done') -**2St_Permite palavras-chave estáticas em objetos **2Sx_Habilita palavras-chave exceções (padrão nos modos Delphi/ObjFPC) **1s_Não chama o montador assembler e o vinculador **2sh_Gera roteiro para vincular no servidor diff --git a/compiler/msg/errorr.msg b/compiler/msg/errorr.msg index e57bde1016..e2c5d5a3c7 100644 --- a/compiler/msg/errorr.msg +++ b/compiler/msg/errorr.msg @@ -2721,7 +2721,6 @@ S*2Aas_ **2Sm_�����p��� ���ப����� ��� � C (������쭮) **2So_�� ��, �� � -Mtp **2Ss_��� ��������� ������ ���� init (��� �������� ������ ���� done) -**2St_�����p��� ���祢��� �� static � ��ꥪ�� **2Sx_�����প� ���祢�� � �᪫�祭�� (�� 㬮�砭�� � ०���� Delphi/ObjFPC) **1s_�� ��뢠�� ��ᥬ���� � ��������騪 **2sh_������� �ਯ� ��� ���������� �� ��� diff --git a/compiler/msg/errorru.msg b/compiler/msg/errorru.msg index b2d096e805..2b4f4bd2b7 100644 --- a/compiler/msg/errorru.msg +++ b/compiler/msg/errorru.msg @@ -2721,7 +2721,6 @@ S*2Aas_Ассемблер GNU AS **2Sm_Поддеpжка макрокоманд как в C (глобально) **2So_То же, что и -Mtp **2Ss_Имя конструктора должно быть init (имя деструктора должно быть done) -**2St_Поддеpжка ключевого слова static в объектах **2Sx_Поддержка ключевых слов исключений (по умолчанию в режимах Delphi/ObjFPC) **1s_Не вызывать ассемблер и компоновщик **2sh_Создать скрипт для компоновки на хосте diff --git a/compiler/msg/errorues.msg b/compiler/msg/errorues.msg index 9ff09f842a..5db19f4199 100644 --- a/compiler/msg/errorues.msg +++ b/compiler/msg/errorues.msg @@ -2294,7 +2294,6 @@ S*2Aas_ensamblar usando GNU AS **2So_igual que -Mtp **2Sp_igual que -Mgpc **2Ss_el nombre del constructor debe ser init (el destructor debe ser done) -**2St_permitir la palabra reservada static en objetos **1s_no llamar al ensamblador ni enlazador **2sh_Generar script para enlazar en host **2st_Generar script para enlazar en destino diff --git a/compiler/msgidx.inc b/compiler/msgidx.inc index 419f46b16e..6ce53f1bb7 100644 --- a/compiler/msgidx.inc +++ b/compiler/msgidx.inc @@ -838,7 +838,7 @@ const option_info=11024; option_help_pages=11025; - MsgTxtSize = 55090; + MsgTxtSize = 55052; MsgIdxMax : array[1..20] of longint=( 24,87,283,95,71,51,110,22,202,63, diff --git a/compiler/msgtxt.inc b/compiler/msgtxt.inc index 97cdeaec8c..260d104f41 100644 --- a/compiler/msgtxt.inc +++ b/compiler/msgtxt.inc @@ -1181,116 +1181,115 @@ const msgtxt : array[0..000229,1..240] of char=( '**2Sm_Support macros like C (global)'#010+ '**2So_Same as -Mtp'#010+ '**2Ss_Constructor name must be init (destructor must be done)'#010+ - '**2St_Allow static keyword in objects'#010+ - '**2Sx_Enable exception keywords (default in Delphi/ObjFPC',' modes)'#010+ - '**1s_Do not call assembler and linker'#010+ + '**2Sx_Enable exception keywords (default in Delphi/ObjFPC modes)'#010+ + '**1s_Do not call assembler and',' linker'#010+ '**2sh_Generate script to link on host'#010+ '**2st_Generate script to link on target'#010+ '**2sr_Skip register allocation phase (use with -alr)'#010+ '**1T<x>_Target operating system:'#010+ - '3*2Temx_OS/2 via EMX (includin','g EMX/RSX extender)'#010+ - '3*2Tfreebsd_FreeBSD'#010+ + '3*2Temx_OS/2 via EMX (including EMX/RSX extender)'#010+ + '3*2Tfreebsd_FreeBS','D'#010+ '3*2Tgo32v2_Version 2 of DJ Delorie DOS extender'#010+ '3*2Tlinux_Linux'#010+ '3*2Tnetbsd_NetBSD'#010+ '3*2Tnetware_Novell Netware Module (clib)'#010+ '3*2Tnetwlibc_Novell Netware Module (libc)'#010+ '3*2Topenbsd_OpenBSD'#010+ - '3*2Tos2_OS/2 / ','eComStation'#010+ + '3*2Tos2_OS/2 / eComStation'#010+ '3*2Tsunos_SunOS/Solaris'#010+ - '3*2Tsymbian_Symbian OS'#010+ + '3*','2Tsymbian_Symbian OS'#010+ '3*2Twatcom_Watcom compatible DOS extender'#010+ '3*2Twdosx_WDOSX DOS extender'#010+ '3*2Twin32_Windows 32 Bit'#010+ '3*2Twince_Windows CE'#010+ '4*2Tlinux_Linux'#010+ '6*2Tamiga_Commodore Amiga'#010+ - '6*2Tatari_Atari ST/STe','/TT'#010+ + '6*2Tatari_Atari ST/STe/TT'#010+ '6*2Tlinux_Linux/m68k'#010+ - '6*2Tmacos_Macintosh m68k (not supported)'#010+ + '6*2Tmacos_Mac','intosh m68k (not supported)'#010+ '6*2Tpalmos_PalmOS'#010+ 'A*2Tlinux_Linux'#010+ 'A*2Twince_Windows CE'#010+ 'P*2Tamiga_AmigaOS on PowerPC'#010+ 'P*2Tdarwin_Darwin and Mac OS X on PowerPC'#010+ 'P*2Tlinux_Linux on PowerPC'#010+ - 'P*2Tmacos_Mac OS (cla','ssic) on PowerPC'#010+ + 'P*2Tmacos_Mac OS (classic) on PowerPC'#010+ 'P*2Tmorphos_MorphOS'#010+ - 'S*2Tlinux_Linux'#010+ + 'S','*2Tlinux_Linux'#010+ '**1u<x>_Undefines the symbol <x>'#010+ '**1U_Unit options:'#010+ '**2Un_Do not check where the unit name matches the file name'#010+ '**2Ur_Generate release unit files (never automatically recompiled)'#010+ - '**2Us_C','ompile a system unit'#010+ - '**1v<x>_Be verbose. <x> is a combination of the following letters:'#010+ + '**2Us_Compile a system unit'#010+ + '**1v<x>_Be verbos','e. <x> is a combination of the following letters:'#010+ '**2*_e : Show errors (default) 0 : Show nothing (except errors)'#010+ '**2*_w : Show warnings u : Show unit info'#010+ - '**2*_n : Show notes ',' t : Show tried/used files'#010+ - '**2*_h : Show hints c : Show conditionals'#010+ + '**2*_n : Show notes t : Show tried/used files'#010+ + '*','*2*_h : Show hints c : Show conditionals'#010+ '**2*_i : Show general info d : Show debug info'#010+ '**2*_l : Show linenumbers r : Rhide/GCC compatibility mode'#010+ - '**2*_s : Show tim','e stamps q : Show message numbers'#010+ + '**2*_s : Show time stamps q : Show message n','umbers'#010+ '**2*_a : Show everything x : Executable info (Win32 only)'#010+ '**2*_b : Write file names messages p : Write tree.log with parse tre'+ 'e'#010+ - '**2*_ with full path v : Write fpcdeb','ug.txt with'#010+ - '**2*_ lots of debugging info'#010+ + '**2*_ with full path v : Write fpcdebug.txt with'#010+ + '**2*_ ',' lots of debugging info'#010+ '**2*_m<x>,<y> : Don'#039't show messages numbered <x> and <y>'#010+ '3*1W<x>_Target-specific options (targets)'#010+ 'A*1W<x>_Target-specific options (targets)'#010+ - 'P*1W<x>_Target-specific',' options (targets)'#010+ - 'p*1W<x>_Target-specific options (targets)'#010+ + 'P*1W<x>_Target-specific options (targets)'#010+ + 'p*1W<x>_Target-spec','ific options (targets)'#010+ '3*2Wb_Create a bundle instead of a library (Darwin)'#010+ 'P*2Wb_Create a bundle instead of a library (Darwin)'#010+ 'p*2Wb_Create a bundle instead of a library (Darwin)'#010+ - '3*2WB_Create a relocata','ble image (Windows)'#010+ - 'A*2WB_Create a relocatable image (Windows, Symbian)'#010+ + '3*2WB_Create a relocatable image (Windows)'#010+ + 'A*2WB_Create a rel','ocatable image (Windows, Symbian)'#010+ '3*2WC_Specify console type application (EMX, OS/2, Windows)'#010+ 'A*2WC_Specify console type application (Windows)'#010+ 'P*2WC_Specify console type application (Classic Mac OS)'#010+ - '3*2','WD_Use DEFFILE to export functions of DLL or EXE (Windows)'#010+ + '3*2WD_Use DEFFILE to export functions of ','DLL or EXE (Windows)'#010+ 'A*2WD_Use DEFFILE to export functions of DLL or EXE (Windows)'#010+ '3*2We_Use external resources (Darwin)'#010+ 'P*2We_Use external resources (Darwin)'#010+ 'p*2We_Use external resources (Darwin)'#010+ - '3*2WF','_Specify full-screen type application (EMX, OS/2)'#010+ + '3*2WF_Specify full-screen type application ','(EMX, OS/2)'#010+ '3*2WG_Specify graphic type application (EMX, OS/2, Windows)'#010+ 'A*2WG_Specify graphic type application (Windows)'#010+ 'P*2WG_Specify graphic type application (Classic Mac OS)'#010+ - '3*2Wi_Use internal resour','ces (Darwin)'#010+ - 'P*2Wi_Use internal resources (Darwin)'#010+ + '3*2Wi_Use internal resources (Darwin)'#010+ + 'P*2Wi_Use internal resour','ces (Darwin)'#010+ 'p*2Wi_Use internal resources (Darwin)'#010+ '3*2WN_Do not generate relocation code, needed for debugging (Windows)'#010+ 'A*2WN_Do not generate relocation code, needed for debugging (Windows)'#010+ - '3*2WR_Gener','ate relocation code (Windows)'#010+ - 'A*2WR_Generate relocation code (Windows)'#010+ + '3*2WR_Generate relocation code (Windows)'#010+ + 'A*2WR_Ge','nerate relocation code (Windows)'#010+ 'P*2WT_Specify MPW tool type application (Classic Mac OS)'#010+ '3*2WX_Enable executable stack (Linux)'#010+ 'A*2WX_Enable executable stack (Linux)'#010+ - 'p*2WX_Enable executable stack (Linux',')'#010+ - 'P*2WX_Enable executable stack (Linux)'#010+ + 'p*2WX_Enable executable stack (Linux)'#010+ + 'P*2WX_Enable executable stack (Linux',')'#010+ '**1X_Executable options:'#010+ '**2Xc_Pass --shared/-dynamic to the linker (BeOS, Darwin, FreeBSD, Lin'+ 'ux)'#010+ '**2Xd_Do not use standard library search path (needed for cross compil'+ 'e)'#010+ '**2Xe_Use external linker'#010+ - '**','2Xg_Create debuginfo in a separate file and add a debuglink sectio'+ + '**2Xg_Create debuginfo in a separate fil','e and add a debuglink sectio'+ 'n to executable'#010+ '**2XD_Try to link units dynamically (defines FPC_LINK_DYNAMIC)'#010+ '**2Xi_Use internal linker'#010+ '**2Xm_Generate link map'#010+ - '**2XM<x>_Set the name of the '#039'main'#039' prog','ram routine (default'+ - ' is '#039'main'#039')'#010+ - '**2XP<x>_Prepend the binutils names with the prefix <x>'#010+ + '**2XM<x>_Set the name of the '#039'main'#039' program routine (default i'+ + 's '#039'main'#039')'#010+ + '**2XP<','x>_Prepend the binutils names with the prefix <x>'#010+ '**2Xr<x>_Set the linker'#039's rlink-path to <x> (needed for cross comp'+ 'ile, see the ld manual for more information) (BeOS, Linux)'#010+ - '**2XR<x>_Prepend <x> to all',' linker search paths (BeOS, Darwin, FreeB'+ + '**2XR<x>_Prepend <x> to all linker search paths (BeOS, Darwin, Fr','eeB'+ 'SD, Linux, Mac OS, Solaris)'#010+ '**2Xs_Strip all symbols from executable'#010+ '**2XS_Try to link units statically (default, defines FPC_LINK_STATIC)'#010+ - '**2Xt_Link with static libraries (-static is passed to linker',')'#010+ - '**2XX_Try to smartlink units (defines FPC_LINK_SMART)'#010+ + '**2Xt_Link with static libraries (-static is passed to linker)'#010+ + '**2XX_Try to smartlink units ',' (defines FPC_LINK_SMART)'#010+ '**1*_'#010+ '**1?_Show this help'#010+ '**1h_Shows this help without waiting' diff --git a/compiler/options.pas b/compiler/options.pas index d5818d9040..30821556bb 100644 --- a/compiler/options.pas +++ b/compiler/options.pas @@ -1345,10 +1345,7 @@ begin else include(init_settings.globalswitches,cs_constructor_name); 't' : - If UnsetBool(More, j) then - exclude(init_settings.moduleswitches,cs_static_keyword) - else - include(init_settings.moduleswitches,cs_static_keyword); + Message1(option_obsolete_switch,'-St'); 'v' : If UnsetBool(More, j) then exclude(init_settings.globalswitches,cs_support_vectors) @@ -1364,8 +1361,7 @@ begin init_settings.globalswitches:=init_settings.globalswitches - [cs_constructor_name,cs_support_exceptions]; init_settings.localswitches:=init_settings.localswitches - [cs_do_assertion, cs_do_inline, cs_ansistrings]; init_settings.moduleswitches:=init_settings.moduleswitches - [cs_support_c_operators, cs_support_goto, - cs_support_macro, - cs_static_keyword]; + cs_support_macro]; end; else IllegalPara(opt); diff --git a/compiler/pdecsub.pas b/compiler/pdecsub.pas index 8e211a9b5b..6ac0bcc69e 100644 --- a/compiler/pdecsub.pas +++ b/compiler/pdecsub.pas @@ -1400,12 +1400,9 @@ end; procedure pd_static(pd:tabstractprocdef); begin - if (cs_static_keyword in current_settings.moduleswitches) then - begin - if pd.typ=procdef then - include(tprocdef(pd).procsym.symoptions,sp_static); - include(pd.procoptions,po_staticmethod); - end; + if pd.typ=procdef then + include(tprocdef(pd).procsym.symoptions,sp_static); + include(pd.procoptions,po_staticmethod); end; procedure pd_override(pd:tabstractprocdef); @@ -2228,10 +2225,6 @@ const exit; end; - { static needs a special treatment } - if (idtoken=_STATIC) and not (cs_static_keyword in current_settings.moduleswitches) then - exit; - { check if method and directive not for object, like public. This needs to be checked also for procvars } if (pd_notobject in proc_direcdata[p].pd_flags) and diff --git a/compiler/pdecvar.pas b/compiler/pdecvar.pas index f54ee68b70..e29096b390 100644 --- a/compiler/pdecvar.pas +++ b/compiler/pdecvar.pas @@ -1463,8 +1463,7 @@ implementation handle_calling_convention(tprocvardef(hdef)); { Check for STATIC directive } - if (vd_object in options) and - (cs_static_keyword in current_settings.moduleswitches) and + if (vd_object in options) and (try_to_consume(_STATIC)) then begin { add static flag and staticvarsyms } diff --git a/compiler/scandir.pas b/compiler/scandir.pas index e632a03247..d52073feef 100644 --- a/compiler/scandir.pas +++ b/compiler/scandir.pas @@ -1036,11 +1036,6 @@ unit scandir; do_delphiswitch('W'); end; - procedure dir_static; - begin - do_moduleswitch(cs_static_keyword); - end; - procedure dir_stop; begin do_message(scan_f_user_defined); @@ -1388,7 +1383,6 @@ unit scandir; AddDirective('SCREENNAME',directive_all, @dir_screenname); AddDirective('SMARTLINK',directive_all, @dir_smartlink); AddDirective('STACKFRAMES',directive_all, @dir_stackframes); - AddDirective('STATIC',directive_all, @dir_static); AddDirective('STOP',directive_all, @dir_stop); {$ifdef powerpc} AddDirective('SYSCALL',directive_all, @dir_syscall); diff --git a/compiler/utils/fpc.cft b/compiler/utils/fpc.cft index c8ad11918c..b35ebf86de 100644 --- a/compiler/utils/fpc.cft +++ b/compiler/utils/fpc.cft @@ -73,7 +73,6 @@ # -So same as -Mtp # -Sp same as -Mgpc # -Ss constructor name must be init (destructor must be done) -# -St allow static keyword in objects # # Allow goto, inline, C-operators, C-vars -Sgic diff --git a/compiler/utils/fpccfg.inc b/compiler/utils/fpccfg.inc index 37a89d076e..5efbe0c2a9 100644 --- a/compiler/utils/fpccfg.inc +++ b/compiler/utils/fpccfg.inc @@ -83,7 +83,6 @@ const DefaultConfig : array[0..25,1..240] of char=( '# -Sp same as -Mgpc'#013#010+ '# -Ss constructor name must be init (','destructor must be '+ 'done)'#013#010+ - '# -St allow static keyword in objects'#013#010+ '#'#013#010+ '# Allow goto, inline, C-operators, C-vars'#013#010+ '-Sgic'#013#010+ @@ -92,9 +91,9 @@ const DefaultConfig : array[0..25,1..240] of char=( '# Code generation'#013#010+ '# ---------------'#013#010+ #013#010+ - '# Uncomment the next line if you always want stat','ic/dynamic units by'+ - ' default'#013#010+ - '# (can be overruled with -CD, -CS at the commandline)'#013#010+ + '# Uncomment the next line if you always want static/dynamic units by d'+ + 'efault'#013#010+ + '# (can be overruled wi','th -CD, -CS at the commandline)'#013#010+ '#-CS'#013#010+ '#-CD'#013#010+ #013#010+ @@ -106,21 +105,21 @@ const DefaultConfig : array[0..25,1..240] of char=( '#-Ci'#013#010+ '#-Co'#013#010+ '#-Cr'#013#010+ - '#-C','t'#013#010+ + '#-Ct'#013#010+ #013#010+ '# Optimizer switches for i386 compiler'#013#010+ - '# -Os generate smaller code'#013#010+ + '# -Os ',' generate smaller code'#013#010+ '# -O1 level 1 optimizations (quick optimizations)'#013#010+ '# -O2 level 2 optimizations (-O1 + slower optimizations)'#013#010+ - '# -O3 level 3 optimizations (','same as -O2u)'#013#010+ + '# -O3 level 3 optimizations (same as -O2u)'#013#010+ '# -Oa=N set alignment to N'#013#010+ - '# -OoX switch on optimalization X. '#013#010+ + '# -','OoX switch on optimalization X. '#013#010+ '# -OoNOX switch off optimalization X.'#013#010+ '# X is one of REGVAR UNCERTAIN STACKFRAME PEEPHOLE ASMCS'+ 'E LOOPUNROLL'#013#010+ - '# -OpCPU set targe','t processor.'#013#010+ - '# CPU is one of 386, PENTIUM, PENTIUM2, PENTIUM3, PENTIUM4'+ - ', PENTIUMM '#013#010+ + '# -OpCPU set target processor.'#013#010+ + '# CPU is one of 386, PENT','IUM, PENTIUM2, PENTIUM3, PENTIU'+ + 'M4, PENTIUMM '#013#010+ #013#010+ #013#010+ '# -----------------------'#013#010+ @@ -129,32 +128,32 @@ const DefaultConfig : array[0..25,1..240] of char=( #013#010+ '# Both slashes and backslashes are allowed in paths'#013#010+ #013#010+ - '#',' path to the messagefile, not necessary anymore but can be used to '+ + '# path to the messagefile, not necessary anymore but',' can be used to '+ 'override'#013#010+ '# the default language'#013#010+ '#-Fr%basepath%/msg/errore.msg'#013#010+ '#-Fr%basepath%/msg/errorn.msg'#013#010+ '#-Fr%basepath%/msg/errores.msg'#013#010+ '#-Fr%basepath%/msg/errord.msg'#013#010+ - '#-Fr%basepath%','/msg/errorr.msg'#013#010+ + '#-Fr%basepath%/msg/errorr.msg'#013#010+ #013#010+ '# path to the gcclib'#013#010+ - '#-Fl%basepath%/lib'#013#010+ + '#-Fl%basep','ath%/lib'#013#010+ #013#010+ '# searchpath for includefiles'#013#010+ '#-Fi/pp/inc;/pp/rtl/inc'#013#010+ #013#010+ '# searchpath for includefiles'#013#010+ '# release them only if you know what you do'#013#010+ - '# because this could cause a rebuild of the',' runtime library'#013#010+ - '# if you tell them compiler/ide to build the project (FK)'#013#010+ + '# because this could cause a rebuild of the runtime library'#013#010+ + '# if you tell them compiler/ide t','o build the project (FK)'#013#010+ '#-Fi%basepath%/source/rtl/inc;%basepath%/source/rtl/i386'#013#010+ #013#010+ '# searchpath for objectfiles'#013#010+ '#-Fo%basepath%/source/rtl/inc;%basepath%/source/rtl/i386'#013#010+ #013#010+ - '#IFDEF FPCAPA','CHE_1_13'#013#010+ - '-Fu%basepath%/units/$FPCTARGET/httpd-1.3/'#013#010+ + '#IFDEF FPCAPACHE_1_13'#013#010+ + '-Fu%basepath%/units/$FPCTARGET/httpd-1.3/',#013#010+ '#ELSE'#013#010+ '#IFDEF FPCAPACHE_2_0'#013#010+ '-Fu%basepath%/units/$FPCTARGET/httpd-2.0'#013#010+ @@ -163,9 +162,9 @@ const DefaultConfig : array[0..25,1..240] of char=( '#ENDIF'#013#010+ '#ENDIF'#013#010+ #013#010+ - '# searchpath for units and other system dependent',' things'#013#010+ + '# searchpath for units and other system dependent things'#013#010+ '-Fu%basepath%/units/$FPCTARGET/'#013#010+ - '-Fu%basepath%/units/$FPCTARGET/*'#013#010+ + '-Fu%basep','ath%/units/$FPCTARGET/*'#013#010+ '-Fu%basepath%/units/$FPCTARGET/rtl'#013#010+ #013#010+ '# searchpath for libraries'#013#010+ @@ -175,8 +174,8 @@ const DefaultConfig : array[0..25,1..240] of char=( '# searchpath for tools'#013#010+ '-FD%basepath%/bin/$FPCTARGET'#013#010+ #013#010+ - '#',' binutils prefix for cross compiling'#013#010+ - '#IFDEF FPC_CROSSCOMPILING'#013#010+ + '# binutils prefix for cross compiling'#013#010+ + '#IFDEF FPC_CR','OSSCOMPILING'#013#010+ ' -XP$FPCTARGET-'#013#010+ '#ENDIF'#013#010+ #013#010+ @@ -188,13 +187,13 @@ const DefaultConfig : array[0..25,1..240] of char=( '# generate always debugging information for GDB (slows down the compil'+ 'ing'#013#010+ '# process)'#013#010+ - '# -gc ',' generate checks for pointers'#013#010+ - '# -gd use dbx'#013#010+ + '# -gc generate checks for pointers'#013#010+ + '# -gd ',' use dbx'#013#010+ '# -gg use gsym'#013#010+ '# -gh use heap trace unit (for memory leak debugging)'#013#010+ '# -gl use line info unit to show more info for backtraces'#013+ #010+ - '# -gv',' generates programs tracable with valgrind'#013#010+ + '# -gv generates programs tracable with valgrind'#013#010, '# -gw generate dwarf debugging info'#013#010+ '#'#013#010+ '# Enable debuginfo and use the line info unit by default'#013#010+ @@ -203,12 +202,12 @@ const DefaultConfig : array[0..25,1..240] of char=( '# always pass an option to the linker'#013#010+ '#-k-s'#013#010+ #013#010+ - '# Always strip debuginf','o from the executable'#013#010+ + '# Always strip debuginfo from the executable'#013#010+ '-Xs'#013#010+ #013#010+ #013#010+ '# -------------'#013#010+ - '# Miscellaneous'#013#010+ + '# ','Miscellaneous'#013#010+ '# -------------'#013#010+ #013#010+ '# Write always a nice FPC logo ;)'#013#010+ @@ -216,21 +215,22 @@ const DefaultConfig : array[0..25,1..240] of char=( #013#010+ '# Verbosity'#013#010+ '# e : Show errors (default) d : Show debug info'#013#010+ - '# w : Show warnings u ',': Show unit info'#013#010+ - '# n : Show notes t : Show tried/used files'#013#010+ + '# w : Show warnings u : Show unit info'#013#010+ + '# n : Show notes ',' t : Show tried/used files'#013+ + #010+ '# h : Show hints m : Show defined macros'#013#010+ '# i : Show general info p : Show compiled procedures'#013+ #010+ - '# l : Show linenum','bers c : Show conditionals'#013#010+ - '# a : Show everything 0 : Show nothing (except errors'+ - ')'#013#010+ + '# l : Show linenumbers c : Show conditionals'#013#010+ + '# a : S','how everything 0 : Show nothing (except erro'+ + 'rs)'#013#010+ '# b : Show all procedure r : Rhide/GCC compatibility mod'+ 'e'#013#010+ - '# declarations if an error x : Executable i','nfo (Win32 on'+ - 'ly)'#013#010+ + '# declarations if an error x : Executable info (Win32 only'+ + ')'#013#010+ '# occurs'#013#010+ '#'#013#010+ - '# Display Info, Warnings, Notes and Hints'#013#010+ + '# Display I','nfo, Warnings, Notes and Hints'#013#010+ '-viwn'#013#010+ '# If you don'#039't want so much verbosity use'#013#010+ '#-vw'#013#010 diff --git a/compiler/utils/samplecfg b/compiler/utils/samplecfg index 269bcc8c72..b3460ec792 100644 --- a/compiler/utils/samplecfg +++ b/compiler/utils/samplecfg @@ -323,7 +323,6 @@ $CPUCROSSIFDEF2 # -So same as -Mtp # -Sp same as -Mgpc # -Ss constructor name must be init (destructor must be done) -# -St allow static keyword in objects # -Sx enable exception keywords (default in Delphi/ObjFPC modes) # # Allow goto, inline, C-operators, C-vars diff --git a/tests/tbs/tb0156.pp b/tests/tbs/tb0156.pp index f8a11f14e1..56dcb96d8c 100644 --- a/tests/tbs/tb0156.pp +++ b/tests/tbs/tb0156.pp @@ -1,4 +1,4 @@ -{ %OPT=-St -Cr } +{ %OPT=-Cr } { Old file: tbs0187.pp } { constructor in a WIth statement isn't called correct. (works at lest in the case stated) OK 0.99.11 (PM) } diff --git a/tests/tbs/tb0181.pp b/tests/tbs/tb0181.pp index 1ddc429616..8fab3e2226 100644 --- a/tests/tbs/tb0181.pp +++ b/tests/tbs/tb0181.pp @@ -1,5 +1,3 @@ -{ %OPT=-St } - { Old file: tbs0214.pp } { bugs for static methods OK 0.99.11 (PM) } diff --git a/tests/tbs/tb0182.pp b/tests/tbs/tb0182.pp index 86b06993ce..1a62f3dea1 100644 --- a/tests/tbs/tb0182.pp +++ b/tests/tbs/tb0182.pp @@ -1,5 +1,3 @@ -{ %OPT=-St } - { Old file: tbs0215.pp } { more bugss with static methods OK 0.99.11 (PM) } diff --git a/tests/webtbf/tw2359.pp b/tests/webtbf/tw2359.pp index 268c501650..e5f12d62bc 100644 --- a/tests/webtbf/tw2359.pp +++ b/tests/webtbf/tw2359.pp @@ -1,5 +1,4 @@ { %FAIL } -{ %OPT=-St } { Source provided for Free Pascal Bug Report 2359 } { Submitted by "Sergey Kosarevsky" on 2003-02-06 } { e-mail: netsurfer@au.ru }