Jump to content
Primož Gabrijelčič

IDE Fix Pack 6.4.3 breaks compilation

Recommended Posts

IDE Fix Pack 6.4.3 breaks compilation in Rio 10.3.2 for our flagship application. After compile or rebuild, I get

 

[dcc32 Fatal Error] FAB .gRPC  . pas ( 265): F2084 Internal Error: AV0D0F16E4(0D080000)-R0000000C-0

 

Wihout IDE Fix Pack, compilation works fine.

 

Any suggestions?

 

  • Like 1

Share this post


Link to post

Maybe disabling patches one by one using IDEFixPack.DisabledPatches.

But I don't know where to find a complete patch list.

Share this post


Link to post

I found it:

" You can disable a patch by setting the global environment variable “IDEFixPack.DisabledPatches” to a semicolon separated list. The items for the list can be found in “Product information” memo in the IDE’s info dialog when you click on the “Compiler Speed Pack x86 5.96 for Delphi 10.2” entry in the “Installed products” listbox. It’s the string in the brackets (without the brackets). But not there are some dependencies that may cause crashes if you disable one patch but not a specific other (and only the source code knows those dependencies). "

Share this post


Link to post

You can try to set the IDEFixPack.DisabledPatches environment variable to a semicolon separated list of patch names.

 

The easiest way is to open a cmd.exe and use

SET IDEFixPack.DisabledPatches=CodeGenMod.Linker.CombineDllImportTab;CodeGenMod.OmitResultCopyRecord
bds.exe

That way you don't have to change your system and you can faster find the the broken patch.

 

I would start by disabling all "CodeGenMod" patches first. Even if you don't use the "-x-XX" command line options the patches have to hook the compiler's code.

The next step would be to use a larger block until the compiler starts working correctly (a rebuild of the project may be needed because of possible defect *.dcu files). Then you can reduce the number of disabled patches until you reach the patch or the patches that crash the compiler.

 

Here is the list of compiler patches.

CodeGenMod.Linker.CombineDllImportTab
CodeGenMod.OmitResultCopyRecord
CodeGenMod.Win32.FastFloat
CodeGenMod.Win32.FastFuncProlog
CodeGenMod.Win32.FastIntfVirtualStub
CodeGenMod.Win32.OptimizedCodeGen
CodeGenMod.Win32.VirtFinalSealed
Compiler.BackgroundCompilerFileExists
Compiler.CacheControl
Compiler.CompareFileName
Compiler.CRTL2010
Compiler.DbkGetFileIndex
Compiler.DirectorySearch
Compiler.DrcFileBuffer
Compiler.Ext.LinkerOptions
Compiler.FileNameStringFunctions
Compiler.FileSearchCache-
Compiler.FindPackage
Compiler.Fixes
Compiler.ImportedSymbol
Compiler.KibitzCompilerImplUnitReset
Compiler.KibitzGetValidSymbols
Compiler.KibitzIgnoreErrors
Compiler.MapFile.fprintf
Compiler.MapFileBuffer
Compiler.Memory.Shrink
Compiler.NoUnitDiscardAfterCompile
Compiler.Optimization
Compiler.Package.CleanupSpeed
Compiler.PrefetchToken
Compiler.ReleaseUnusedMemory
Compiler.ResetUnits
Compiler.Scanner.GetSourceLine
Compiler.SourceOutdated.1
Compiler.StrLenCalls
Compiler.SymLookup
Compiler.SymLookupScope
Compiler.Unit.RdName
Compiler.UnitBlockFreeHook
Compiler.UnitFindByAlias
Compiler.UnitFreeAll
Compiler.UnlinkImports
Compiler.WarnLoadResString
Compiler.WriteCloseHandleThread
ErrorInsight.SetKibitzedSinceCompiled

  • Thanks 1

Share this post


Link to post
CodeGenMod.Win32.FastFuncProlog
CodeGenMod.Win32.VirtFinalSealed

Those 2 patches didn't work in 10.3.2.

Share this post


Link to post

Andreas,

are not both versions IDEFixPackD103Reg64.4.7z of 2019-08-01 identical?

 

Michal

Edited by miab

Share this post


Link to post

The downloads are identical, but if you have 10.3.2 you don't need to download the updated download again. Only 10.3 and 10.3.1 didn't work due to a backward compatibility problem in 10.3.2.

Share this post


Link to post

My point is that if exe files are called the same and have the same size, they should differ, though times.

 

Michal

Share this post


Link to post

They were the same files. And to remove some confusion, I have now combined both downloads into one link.

  • Thanks 1

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×