#2571: runtime failure due to useing character*8 in DECLARE_CCTK_ARGUMENTS_CHECKED macro
| Reporter: | Roland Haas |
| Status: | new |
| Milestone: | |
| Version: | development version |
| Type: | bug |
| Priority: | major |
| Component: | Cactus |
Comment (by Erik Schnetter):
A declaration character*8 as input argument is really strange. one would only use that if one knows that the length is 8, similar to passing a character array in C (instead of a character pointer).
Usually one would write character*(*), and the compiler then passes the actual string length as additional (hidden) argument, and uses that length in the callee.
In this case I rather think that the Fortran code is a mistranslation from C, and that the code generating the _CHECKED macro is wrong. dtbetax_p should be declared as CCTK_REAL dtbetax_p(ash0, ash1, ash2) instead. None of the Cactus grid function or parameter passing arguments or declaration use Fortran character variables.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2571/runtime-failure-due-to-useing-character-8