Je fais un lien dynamique vers un objet statique fortran et je dois être capable (au moment de l'exécution) de prendre le nom de la fonction fortran (qui est une chaîne C++) et de le modifier de manière appropriée pour le compilateur. Existe-t-il une fonction préconstruite qui pourrait servir à cet effet ? Dans le cas d'une liaison statique, j'utilise FC_FUNC d'autoconf.
Pour plus de clarté, je veux une fonction capable de prendre une chaîne de caractères, de l'interpréter comme un nom de sous-routine fortran et de la modifier de manière appropriée pour le compilateur donné. En psuedo-C++, :
std::string subroutine = "FORTRANSUBROUTINE";
std::string symbol = FortranMangle(subroutine);
std::cout << symbol << endl; // Would output something like "fortransubroutine_"
Je ne connais pas moi-même tous les schémas de manipulation de noms utilisés pour écrire cette mystérieuse fonction "FortranMangle".