So I've been looking into making some of the error handling stuff more robust on the Mac Platform, i.e. catching NaNs better and better stack traces. I was just looking through the print_trace.C file and noticed that somebody has written wrappers for the demangler and stack trace that seem to work just fine on the current Mac platform with the Mac version of the g++ compiler. However this code is disabled in the print_trace file defaulting to the other Linux code which doesn't demangle on the Macs. Perhaps the Mac code was never enabled because of inadequate testing or some other problem? Unless somebody has a reason not to, I propose that we enable that code again for the Mac platform. I'll make the necessary changes and will check it back in.
I'm also looking into catching NaNs sooner. The current isNaN stuff that Roy recently added doesn't work very well on the Mac Platform. It appears that the g++ compiler on this platform doesn't honor signaling nans even when using the appropriate compile flags (-fsignaling-nans or -ftrapping_math). I did find some Intel specific code using intrinsics that does work though. The down side is that this code will only work on Mac Intel processors which is a little less portable but probably not a big issue. If I find a portable way to add this to the library I will do so. Thanks, Cody ------------------------------------------------------------------------------ Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Libmesh-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-devel
