Consultor Eletrônico



Kbase P176991: Preprocessor directives ignored in include file with arguments
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/9/2010
Status: Unverified

SYMPTOM(s):

Preprocessor directives ignored in include file with arguments

Depending how the preprocessor directives are written, determines if they are evbaluated correctly by the compiler.

For example:

/** main.p **/
SESSION:APPL-ALERT-BOXES = TRUE.
{example_1.i
&one=A
&two=B
&three=C
&four=D
&five=E
&six=F
}


/** example_1.i **/
/* This works */
&IF DEFINED(one) = 2 &THEN DO: {example_2.i {&one}} END. &ENDIF

/* This doesn't */
&IF DEFINED(two) = 2 &THEN {example_2.i {&two}} &ENDIF

/* This doesn't */
&IF DEFINED(three) = 2 &THEN {example_2.i {&three}}
&ENDIF

/* This does */
&IF DEFINED(four) = 2 &THEN
{example_2.i {&four}} &ENDIF

/* This doesn't */
&IF DEFINED(five) = 2
&THEN {example_2.i {&five}}
&ENDIF

/* This does */
&IF DEFINED(six) = 2 &THEN . {example_2.i {&six}} &ENDIF


/** example_2.i **/
MESSAGE 'Called {1}'.

FACT(s) (Environment):

Windows
OpenEdge 10.1x
OpenEdge 10.2x
OpenEdge Category: Language (4GL/ABL)

CAUSE:

Bug# OE00201823

FIX:

None at this time

as a workaround re-write the preprocessors in a form that works.