- removed comment
Christian Reisswig (and I and Christian Ott and Philipp Moesta, but we did not properly identify it as a bug) found that adding or removing a parameter does not trigger a recompile of source files where the parameter was used. To reproduce, take a compiled configuration and eg. comment out a parameter in (any) thorn's param.ccl. Recompile and notice that no source files are recompiled (but configs/<CONFIG>/bindings/Parameters/<Thorn>_Parameters.c is). This manifests itself in wrong parameter values in the thorns (but correct values as returned by CCTK_ParameterGet).
I checked and the file containing the updated parameter structure (configs/<CONFIGNAME>/bindings/include/ParameterCPrivate<THORNNAME>.h) '''does''' appear in the source file's auto-dependency file (configs/<CONFIGNAME>/build/<THORNNAME>/<SOURCEFILE>.c.d) but that files seems to be completely ignored (ie. touch'ing a file listed in there does not trigger a recompile).
I am making this a critical bug since it affects every single thorn.
I attach a trivial thorn to display the issue but any configuration you have sitting around will do.
Keyword:
The problem seem to be that the ".d" file has the wrong file names for the target in it. Eg. it will contain "source.o" rather than "source.c.o".