You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@jowr, I just realized that the getFunctionPointer() function works with const char *. What that means is that we can re-write this function to first try the "normal" function name, then the gfortran one, then the other, since they are always the same letters, just either normal case, all lowercase or all lowercase+_ .
The good part is this means only one set of macros to support, and might mean that we can remove 50% of the REFPROP header if I am not mistaken. I had to add 4 functions to REFPROP when working on derivatives, and it is quite a pain. There are 8 places you need to add code for each one - a real maintenance nightmare.
The text was updated successfully, but these errors were encountered:
👍 for a simplification of that code! I am not sure I understand all the implications of the const char * business, but I'll have a look as soon as time allows (after Christmas!)...
No problem, I've got it. Actually I think we can remove almost all the repetition. We might even be able to use Xmacros to reduce it even further. I think in buildbot I can get it to fire from another branch by giving the branch name in the force builder, right?
@jowr, I just realized that the
getFunctionPointer()
function works withconst char *
. What that means is that we can re-write this function to first try the "normal" function name, then the gfortran one, then the other, since they are always the same letters, just either normal case, all lowercase or all lowercase+_ .The good part is this means only one set of macros to support, and might mean that we can remove 50% of the REFPROP header if I am not mistaken. I had to add 4 functions to REFPROP when working on derivatives, and it is quite a pain. There are 8 places you need to add code for each one - a real maintenance nightmare.
The text was updated successfully, but these errors were encountered: