schluter

Strange 'Multiple floating point traps' when using C++/clr and Win32?

Discussion created by schluter on Dec 27, 2013
Latest reply on Dec 31, 2013 by schluter

I've seen a strange trap in Visual Studio (even when using try{}catch{}):

 

Unhandled exception at 0x5CF6FC69 (clrjit.dll) in TestConsole.exe: 0xC00002B5:  Multiple floating point traps (parameters: 0x00000000, 0x00001921).

 

The exact same trap ocurrs in seemingly unrelated instances, one of which is a call to AFTime:Parse() with a date that contains a calculations (such as "*-1d"). It only ocurrs when using a C++/clr 'managed' mocdule and Win32. Win64 is fine. The msg indicates a module (clrjit.dll), indicating that the root cause may be in the JIT processing, as opposed to the OSISoft libraries. I've managed to overcome both scenarios by fiddling with the MXCSR CPU register, masking certain exception flags, but needless to say, I'm not crazy about fiddling with the CPU registers from an application program.

 

My question: has anyone seen this before?

 

Thanks

 

Joe Schluter

 

 

Outcomes