Verification errors in dlls produced with Prism 5.031.971

I’m having problems with assemblies produced with the new version of the compiler. I use Deep Sea obfuscator to obfiscate the assemblies and having just switched to prism 5 from prism 4, I discovered that it was failing to obfuscate because of an error. The suppliers ran PEVerify on the assembly and it shows up three errors of the form:

[IL]: Error: xxx.xxx.xxx::xxx@0][offset 0x000003F2] Unrecognized localvariable number.

where xxx etc is the name of the assembly and class and this is what is causing the problems in the obfuscator.

Running PEVerify on the assemblies generated with version 4 show no errors being generated. So, at the moment, version 5 is completely unusable for me. Does anyone have any ideas what might cause this problem and how to workaround it, or is there a fix available?

(Also posted to the Embarcadero Prism Group)

Regards
Keith

Oke that indeed sounds like a compiler (or obfuscator) bug. Does peverify work before obfuscation? If so, it could be a bug in the obfuscator, else it’s a compiler bug.

If it’s a compiler bug, could you narrow it down a bit so I can see the failing code and I can fix the compiler? (either here to support@ if you want to keep it private)

Hi Carlo, I’ll try and get something together early next week. It’s before obfuscation - ie it’s the assembly produced by the compiler that doesn’t verify.

Regards
Keith

This appears to be fixed in the latest version.

great!