codetools: added modeswitches ISOLIKE_UNARY_MINUS and SYSTEMCODEPAGE

git-svn-id: trunk@34296 -
This commit is contained in:
mattias 2011-12-19 22:59:29 +00:00
parent 1296e6912f
commit 77f23ba004

View File

@ -138,33 +138,36 @@ type
cmOBJFPC, cmOBJFPC,
cmMacPas, cmMacPas,
cmISO); cmISO);
{ TCompilerModeSwitch - see fpc/compiler/globtype.pas }
TCompilerModeSwitch = ( TCompilerModeSwitch = (
cmsClass, cmsClass, { delphi class model }
cmsObjpas, cmsObjpas, { load objpas unit }
cmsResult, cmsResult, { result in functions }
cmsString_pchar, cmsString_pchar, { pchar 2 string conversion }
cmsCvar_support, cmsCvar_support, { cvar variable directive }
cmsNested_comment, cmsNested_comment,{ nested comments }
cmsTp_procvar, cmsTp_procvar, { tp style procvars (no @ needed) }
cmsMac_procvar, cmsMac_procvar, { macpas style procvars }
cmsRepeat_forward, cmsRepeat_forward, { repeating forward declarations is needed }
cmsPointer_2_procedure, cmsPointer_2_procedure, { allows the assignement of pointers to procedure variables }
cmsAutoderef, cmsAutoderef, { does auto dereferencing of struct. vars }
cmsInitfinal, cmsInitfinal, { initialization/finalization for units }
cmsAdd_pointer, cmsAdd_pointer,
cmsDefault_ansistring, cmsDefault_ansistring, { ansistring turned on by default }
cmsOut, cmsOut, { support the calling convention OUT }
cmsDefault_para, cmsDefault_para, { support default parameters }
cmsHintdirective, cmsHintdirective, { support hint directives }
cmsDuplicate_names, cmsDuplicate_names, { allow locals/paras to have duplicate names of globals }
cmsProperty, cmsProperty, { allow properties }
cmsDefault_inline, cmsDefault_inline, { allow inline proc directive }
cmsExcept, cmsExcept, { allow exception-related keywords }
cmsObjectiveC1, cmsObjectiveC1, { support interfacing with Objective-C (1.0) }
cmsObjectiveC2, cmsObjectiveC2, { support interfacing with Objective-C (2.0) }
cmsNestedProcVars, cmsNestedProcVars, { support nested procedural variables }
cmsNonLocalGoto, cmsNonLocalGoto, { support non local gotos (like iso pascal) }
cmsAdvancedRecords cmsAdvancedRecords, { advanced record syntax with visibility sections, methods and properties }
cmsISOLike_unary_minus,{ unary minus like in iso pascal: same precedence level as binary minus/plus }
cmsSystemcodepage { use system codepage as compiler codepage by default, emit ansistrings with system codepage }
); );
TCompilerModeSwitches = set of TCompilerModeSwitch; TCompilerModeSwitches = set of TCompilerModeSwitch;
const const
@ -560,10 +563,12 @@ type
end; end;
const const
// upper case
CompilerModeNames: array[TCompilerMode] of shortstring=( CompilerModeNames: array[TCompilerMode] of shortstring=(
'FPC', 'DELPHI', 'GPC', 'TP', 'OBJFPC', 'MACPAS', 'ISO' 'FPC', 'DELPHI', 'GPC', 'TP', 'OBJFPC', 'MACPAS', 'ISO'
); );
// upper case
CompilerModeSwitchNames: array[TCompilerModeSwitch] of shortstring=( CompilerModeSwitchNames: array[TCompilerModeSwitch] of shortstring=(
'CLASS', 'OBJPAS', 'RESULT', 'PCHARTOSTRING', 'CVAR', 'CLASS', 'OBJPAS', 'RESULT', 'PCHARTOSTRING', 'CVAR',
'NESTEDCOMMENTS', 'CLASSICPROCVARS', 'MACPROCVARS', 'REPEATFORWARD', 'NESTEDCOMMENTS', 'CLASSICPROCVARS', 'MACPROCVARS', 'REPEATFORWARD',
@ -571,8 +576,9 @@ const
'ANSISTRINGS', 'OUT', 'DEFAULTPARAMETERS', 'HINTDIRECTIVE', 'ANSISTRINGS', 'OUT', 'DEFAULTPARAMETERS', 'HINTDIRECTIVE',
'DUPLICATELOCALS', 'PROPERTIES', 'ALLOWINLINE', 'EXCEPTIONS', 'DUPLICATELOCALS', 'PROPERTIES', 'ALLOWINLINE', 'EXCEPTIONS',
'OBJECTIVEC1', 'OBJECTIVEC2', 'NESTEDPROCVARS', 'NONLOCALGOTO', 'OBJECTIVEC1', 'OBJECTIVEC2', 'NESTEDPROCVARS', 'NONLOCALGOTO',
'ADVANCEDRECORDS'); 'ADVANCEDRECORDS', 'ISOLIKE_UNARY_MINUS', 'SYSTEMCODEPAGE');
// upper case
PascalCompilerNames: array[TPascalCompiler] of shortstring=( PascalCompilerNames: array[TPascalCompiler] of shortstring=(
'FPC', 'DELPHI' 'FPC', 'DELPHI'
); );