Compiling ABL code

By default, Eclipse compiles source files when they are added to the workspace or saved. This is the case unless you disable the Build automatically option in Eclipse Workspace preferences (Window > Preferences > General > Workspace).

You might choose to disable automatic builds if the contents of your workspace are frequently updated significantly (for example, by copying files from an external source), triggering build processes that block creating or saving resources until they finish. Otherwise, you should enable automatic builds to ensure that up-to-date r-code is always available for tools and features that require it.

If you do disable automatic builds, it is recommended that you have Progress Developer Studio for OpenEdge compile ABL source files when you save them. To do so, select the Compile on save if required option in Editor Build preferences.

At any time, you can explicitly compile your current file by selecting Compile from either the Source menu or the ABL Editor context (right-click) menu.

Startup parameters for compiler operation

Progress Developer Studio for OpenEdge provides two startup parameters that may affect the way the compiler processes source code: the Compile Warning List (-cwl) and the Keyword Forget List (-k). These options are briefly described here. For more information, see OpenEdge Deployment: Startup Command and Parameter Reference.

Compile Warning List (-cwl)

The Compile Warning List specifies a set of ABL statements that trigger a warning message at compile time if they are found in the source code. The list can include any ABL statements you choose; it can be an effective way to discourage the use of deprecated statements. The occurrence of warnings does not prevent valid code from compiling.

Each warning appears in the following format:

The flagged_statement statement from the compile warning list was found in file file_name at line line_number.

If you see one or more such messages when you compile your code, click OK to continue, and if necessary, edit the code as appropriate.

Keyword Forget List (-k)

The Keyword Forget List specifies a set of ABL keywords that the compiler should not treat as keywords when processing the source code. This option allows you to avoid compilation errors that might otherwise occur if an upgraded version of Progress Developer Studio for OpenEdge introduces new keywords that are found in existing code as object names (such as tables, fields, frames, variables, streams, and so on).

If you encounter errors of this sort, you can use a Keyword Forget List to disable selected keywords, and thereby allow the code to compile, until you can remove those words from the application.