dcl-s boolVar IND inz;

boolVar = (a = b ? '1': '0');

It's your choice. That is RPG valid code above.

I assume you mean that the DCL-S is valid RPG code, since the request was to have a construct like

boolVar = (a = b ? '1': '0');

in RPG.

RPG does not have ==, just =, but in the context of

boolVal = (a = b);

the (a = b) is the same as the C (a == b), correct?

In that case, unless RPG comes up with some operator that distinguishes between = (assignment) and == (test for logical equivalence), the closest we can get to the C version is

boolVal = (a = b); // the equivalent of the C expression boolVal = (a == b ? '1' : '0');

If the C expression was

resultString = (a == b ? 'Hello' : 'Goodbye');

RPG would require

if a = b;
    resultString = 'Hello';
else;
    resultString = 'Goodbye';
endif;

and if the C expression was

resultString = (a = b ? 'Hello' : 'Goodbye');

RPG would require

a = b;
if b <> 0;
    resultString = 'Hello';
else;
    resultString = 'Goodbye';
endif;

Meaning that the assignment of b to a is unconditional, but the assignment of 'Hello' or 'Goodbye' is conditioned upon the value of b being non-zero.

--
*Peter Dow* /
909 793-9050
petercdow@xxxxxxxxx
/
On 12/11/2025 6:56 PM, Javier Sanchez wrote:
Simple:
One line of code. The compiler would make the hard work with the return
value. It is your intellectual work that you want back. A string? A
floating point? A char()? Whatever. The single line is clear upon your
intention.
The == notation is "C", put that away in RPG. Use only one = sign.
The return value is your intellectual work. Say it is an IND:
dcl-s boolVar IND inz;
boolVar = (a = b ? '1': '0');
It's your choice. That is RPG valid code above.

JS



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.