Kbase P19577: How does the Application Compiler select files to compile?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  16/09/2008 |
|
Status: Verified
GOAL:
How does the Application Compiler select files to compile?
GOAL:
Does the Application Compiler behave like the COMPILE statement?
FACT(s) (Environment):
Progress 9.x
OpenEdge 10.x
All Supported Operating Systems
FIX:
The Application compiler behaves differently from the COMPILE statement.
The Application Compiler tries to ensure that the files the user selected to compile are the ones that are compiled.
It ensures this by placing the directory in which the files are located first in a temporary PROPATH the Application Compiler establishes before compiling the files. Otherwise, the Application Compiler could compile files in the wrong directory that are found before the location the user thought they had selected (because of the PROPATH and relative file referencing).
When two include files in different sub-directories have the same name, it is questionable practice to leave it up to the PROPATH order to determine which of the two include files is to be compiled into a file. This occurs when the reference to the include is a direct one, like {file1.i}
A better approach is to be explicit in the relative reference and name the sub-directory the file is in, like {dir2/file1.i}. This removes ambiguities in code and improves compile speed, since the include file is found quicker than with the simple reference.