On Mon, Aug 1, 2011 at 1:21 PM, Jed Brown <[email protected]> wrote: > On Mon, Aug 1, 2011 at 12:49, John Peterson <[email protected]> wrote: >> >> I think it's because petsc_macro.h is #include'd *before* the relevant >> petsc header, so the macro is defined before the extern XXDestroy >> functions are declared, at which point they get macro-fied...? > > Hmm, I wonder why this would be different with 2.3.3 (which is too many > years old for me to remember to test). Was there a reason why petsc_macro.h > should be included first?
Hmm... I think there used to be. We used to need to define EXTERN_C_FOR_PETSC_BEGIN EXTERN_C_FOR_PETSC_END inside petsc_macro.h, before we could include any other petsc headers. (At some point the petsc headers began extern C'ing themselves.) In general, though I'd like to avoid any weird future errors regardless of the order in which somebody decides to include petsc_macro... >> Anyway, we can fix this by having a different name for our macro: > > This is fine, thanks. Your patches are in now, thanks for sending them to us. -- John ------------------------------------------------------------------------------ BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA The must-attend event for mobile developers. Connect with experts. Get tools for creating Super Apps. See the latest technologies. Sessions, hands-on labs, demos & much more. Register early & save! http://p.sf.net/sfu/rim-blackberry-1 _______________________________________________ Libmesh-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-devel
