IDE: Enable CompatibilityMode for legacy projects, disable for new projects. Issue #35267, patch from Ondrej.

git-svn-id: trunk@60765 -
This commit is contained in:
juha 2019-03-24 20:37:48 +00:00
parent 3348e9e12b
commit c66c600938
2 changed files with 6 additions and 2 deletions

View File

@ -632,8 +632,7 @@ const
pfRunnable, pfRunnable,
pfLRSFilesInOutputDirectory, pfLRSFilesInOutputDirectory,
pfSaveJumpHistory, pfSaveJumpHistory,
pfSaveFoldState, pfSaveFoldState
pfCompatibilityMode {ToDo: Remove this after everything works.}
]; ];
DefaultProjectFlags = DefaultProjectNoApplicationFlags+[ DefaultProjectFlags = DefaultProjectNoApplicationFlags+[
pfMainUnitHasCreateFormStatements, pfMainUnitHasCreateFormStatements,

View File

@ -2797,6 +2797,11 @@ begin
SetFlag(pfMainUnitHasScaledStatement,OldProjectType in [ptApplication]); SetFlag(pfMainUnitHasScaledStatement,OldProjectType in [ptApplication]);
SetFlag(pfRunnable, OldProjectType in [ptProgram,ptApplication,ptCustomProgram]); SetFlag(pfRunnable, OldProjectType in [ptProgram,ptApplication,ptCustomProgram]);
end; end;
if FFileVersion<=11 then begin
// set CompatibilityMode flag for legacy projects (this flag was added in FFileVersion=12 that changed
// item format so that LPI cannot be opened in legacy Lazarus unless pfCompatibilityMode is set)
SetFlag(pfCompatibilityMode, True);
end;
Flags:=Flags-[pfUseDefaultCompilerOptions]; Flags:=Flags-[pfUseDefaultCompilerOptions];
end; end;