On Wed, 17 Sep 2008, Benjamin Kirk wrote:
> I am about to check in a substantial change set that prefixes every variable
> in include/base/libmesh_config.h with LIBMESH_ to avoid conflicts with
> external packages.
I'm copying this to libmesh-users to make sure everyone sees it. As I
just discovered when getting back to some of my old code, this macro
change can be more sneaky than an API renaming at the symbol level: at
least when a symbol name changes, you notice when it doesn't compile,
and you fix it. With these macro name changes, the effect to some of
my code was to silently disable features when the application didn't
think "HAVE_*" was defined.
Also, and this is a completely irrelevant remark that may lower the IQ
of anyone who reads it: Doesn't the singular noun with misconjugated
verb, "LIBMESH_HAVE_", make our config code now sound just a little
like it was written by cavemen?