On 14/06/2008, at 10:13 AM, James Lampert wrote:

We've never seen anything like this before.

Then you just aren't looking hard enough!

Is it possible that this end user has changed the default on CRTDUPOBJ
to DATA(*YES), and that this would affect an already-compiled CL program?

Yes. CL is more tokenised than compiled and certainly values for command keywords NOT specified in the program will take the current default rather than the default at the time of compilation. To be absolutely certain of operation ESPECIALLY IN VENDOR CODE you should code ALL the parameters on a command--even the default ones.

You should also ensure you are running the QSYS version of the command rather than a user-customised variant--presuming the user changed the default the sensible way and didn't just alter the QSYS one.

Although in this particular case I'd be raising a DCR with IBM as long-term solution. Why should it matter that DATA(*YES) is specified when no *FILE object types are in the list? If the CPP can ignore DATA (*YES) on non-file objects when *ALL is specified then it should be able to ignore it when *MSGQ or *DTAARA or *PGM or any other non-file object type is specified.

Simon Coulter.
FlyByNight Software OS/400, i5/OS Technical Specialists

Phone: +61 2 6657 8251 Mobile: +61 0411 091 400 /"\
Fax: +61 2 6657 8251 \ /
ASCII Ribbon campaign against HTML E-Mail / \

This thread ...


Return to Archive home page | Return to MIDRANGE.COM home page