Thanks to all for the suggestions.
Alternative: You can pre-process the sources.
Put a {$warning this is line xyz} after each {$IF}.
Then when you compile collect the warnings. And you know what was compiled.
(and that works for var/type blocks too)
At the moment I am strongly evaluating an implementation based is this suggestion.
Pipeline:
- make a full copy of the questioned working tree (repeatable everytime master code changes)
- preprocessing in order to add suitable and identifiable warnings in corrspondence of the beginning of each conditional branch (again freely repeatable on fresh sources)
- build with each Master into separate compiler output log
- stripping the output log in order to keep only the support warnings created at step 2
- creating a proximity matrix with some distance still to be defined, could be, for every unit the number of matches/differences, I dont know yet
- creating clusters of Master defines
We'll see.