#2407: Cactus math work-arounds break CarpetX reduction operators
Reporter:Erik Schnetter
Status:open
Milestone:
Version:
Type:bug
Priority:major
Component:Cactus

Comment (by Roland Haas):

The patch as of git hash 62bc14ab "Remove C++ math work-arounds" of cactus breaks compilation on QueenBee with

COMPILING EinsteinEvolve/NewRad/src/extrap.cc
In file included from /home/rhaas/ET_trunk/configs/sim/bindings/include/GenericFD.h(4),
                 from /home/rhaas/ET_trunk/arrangements/EinsteinEvolve/NewRad/src/extrap.cc(8):
/home/rhaas/ET_trunk/arrangements/KrancNumericalTools/GenericFD/src/GenericFD.h(78): error: more than one instance of overloaded function "signbit" matches the argument list:
In file included from /home/rhaas/ET_trunk/configs/sim/bindings/include/GenericFD.h(4),
                 from /home/rhaas/ET_trunk/arrangements/EinsteinEvolve/NewRad/src/extrap.cc(8):
            function "signbit(double)"
In file included from /home/rhaas/ET_trunk/configs/sim/bindings/include/GenericFD.h(4),
                 from /home/rhaas/ET_trunk/arrangements/EinsteinEvolve/NewRad/src/extrap.cc(8):
            function "std::signbit(double)"
In file included from /home/rhaas/ET_trunk/configs/sim/bindings/include/GenericFD.h(4),
                 from /home/rhaas/ET_trunk/arrangements/EinsteinEvolve/NewRad/src/extrap.cc(8):
            argument types are: (CCTK_REAL8)
In file included from /home/rhaas/ET_trunk/configs/sim/bindings/include/GenericFD.h(4),
                 from /home/rhaas/ET_trunk/arrangements/EinsteinEvolve/NewRad/src/extrap.cc(8):
    int s = signbit(x);

The current choice being between breaking the existing ET on QueenBee (old but in the official list of supported machines) and breaking CarpetX I would rather keep CarpetX broke until QueenBee’s option list etc has been updated.

--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2407/cactus-math-work-arounds-break-carpetx