A small detail that Harbour ignores when compiling
#ifndef _PRJ_CH_
#define _PRJ_CH_
#define DEF1 0
#define DEF2 2
#define DEF3 3
This code in the CH file will compile normally. It's strange that Harbour doesn't warn about it (even clipper behaves the same way).
If for any reason the PRG file invokes CH multiple times, then compilation will fail (due to the lack of #ENDIF).
I discovered it by chance recently when I was called to help a user on an open source project. I saw the CH file I created 5 years ago, and days later someone added more lines and removed the #ENDIF.
Regards,
Hurricane