[petsc-dev] When __FUNCT__ is wrong

Jed Brown jed at 59A2.org
Sun Aug 29 12:20:35 CDT 2010


On Sat, 28 Aug 2010 18:30:50 -0500, Barry Smith <bsmith at mcs.anl.gov> wrote:
> This may not work properly for our weird "templated" functions in .h
> files for SOR for SBAIJ etc and for VecScatter.

I fixed the vpscat.h templated functions, and never got warnings from
others.

> I'd like to keep using out macro for now and only use the compiler
> version for checking.

I strongly prefer to use the compiler-provided definition on systems
that support it because then traces (from errors and -malloc_dump)
through user code will have the correct names (instead of the much less
useful "User provided function").  Why would you want to use __FUNCT__
even though the compiler has it's own definition?

> Then in the releases we don't have Jed's check so it doesn't bother
> people.

I don't really care one way or the other about leaving the check on for
releases.  If they never redefine __FUNCT__, then they won't see any
warnings because it will still be "User provided function".  If they are
redefining __FUNCT__, it probably means that they want more informative
traces and would appreciate being notified when they are incorrect.

Jed



More information about the petsc-dev mailing list