Hi Sergy,
> As I can understand - dependence wasn't checked: After *.ch file was
> changed - the "library" (in subfolder!) wasn't rebuilded.
If I understand your question correctly, you changed the header file but
not the prg file that uses it. And you expected the prg file to be
recompiled, but that did not happen. Right?
If you think about it for a moment, how would the compiler know which
prg files are affected by the change? Should it check every prg file to
see if there is a line saying #include "
header.ch"? How many lines of
each prg file would it have to check? The entire file? That sounds more
like a complete rebuild of the project than an incremental build.
And which changed header files should trigger the check? The ones in the
current directory? The ones in your "library" subdirectory? The ones in
directories specified with -i? What about those specified with a full
path in certain prg files? It gets very complicated.
> Of course, I can:
>
> 1) remove -inc flag from *.hbp file...
Or, more easily, add -inc- on the commandline for the first compile
session after the change. It overrides the -inc in the hbp file.
> or
> 2) delete all files from /OBJ...
That is also a possibility, but -inc- is easier
> or
> 3) move my "library" from subfolder to main app directory...
That will not help much if you do not update library.prg after changing
the header file
> or
> 4) ... ?
>
> But it's a simly stand-alone snippet and I faced with this issue in a
> big project.
> What I did wrong ?
I think you were expecting too much from the compiler :-)
Regards,
Klas