Posted by Robert G Laurin on February 05, 2016 at 10:19:58:
I need some clarification on DECPASS and EXEPASS.
I always thought that DECPASS ended as soon as a first executable code was hit, therefore turning DECPASS False and EXEPASS True.
By reading the Wiki page http://wiki.signature.net/index.php/System_symbolic_constants
"During the compiler's declarative pass, the .IF DECPASS directive is evaluated as true (because DECASS equals 1). During this pass, the .IF EXEPASS directive is evaluated as false (because EXEPASS equals 0). Result: During this pass, the declarative statements are compiled, but the executable ones are not.
However, during the executable pass, things are reversed. The .IF DECPASS directive becomes false, and the .IF EXEPASS directive becomes true. Result: During this pass, the executable statements are compiled, but the declarative ones are not."
Which almost sounds like the Compiler does two complete pass over source code.
After further testing, it does not. Looks like it simply switch from one mode to the other. Which tells me that a usefile with both declaratives and executables have to be included twice.
Now, MY REAL QUESTION !!
Is there a PROCPASS in the Proc Compiler? I know there's not in the wiki...
Would be nice to be able to include a usefile only once and properly compile Declaratives, Executables AND Procs.
I am aware that parsing 2 or 3 times would slow down the compile, but with the speed at which compiles happen today, it wouldn't be so bad.
Post a Followup
Each file can be a maximum of 1MB in length Uploaded files will be purged from the server on a regular basis.