× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Mark,

That would likely be more work to change the applications than just changing that one variable.

-mark

On 7/18/2019 10:55 PM, Mark Waterbury wrote:
Would a QUALIFIED data structure solve this problem?

On Thursday, July 18, 2019, 10:37:50 PM EDT, mlazarus<mlazarus@xxxxxxxxxxxx> wrote:

This technique probably would not provide Kerwin with a viable
solution. If this variable is needed in both DS's then conditioning it
would change the layout of the DS, when both DS's are /COPY'ed!! It
would compile, but would not give the expected result.

-mark

On 7/18/2019 10:21 PM, Don Brown wrote:
Your memory is pretty good Joe,

This would need to be put in each copy module and once the first
definition is processed the conditioning variable will be defined so the
second occurrence will be skipped.



Don Brown



From: "Joe Pluta"<joepluta@xxxxxxxxxxxxxxxxx>
To: rpg400-l@xxxxxxxxxxxxxxxxxx
Date: 19/07/2019 12:07 PM
Subject: Re: RNF3316 compile error
Sent by: "RPG400-L"<rpg400-l-bounces@xxxxxxxxxxxxxxxxxx>



Typically with a duplicate definition you can use a /DEFINE and /IF NOT
DEFINED to prevent the duplication.

I'm writing from memory here, but it would be something like this:

/IF NOT DEFINED(MYVAR_DEFINED)
/DEFINE MYVAR_DEFINED
dcl-s MyVar char(10);
/ENDIF

This is the free-format version, but the same idea applies to
fixed-format.


On 7/18/2019 8:35 PM, Kerwin Crawford via RPG400-L wrote:

I have a program that has a /copy to include definitions for a bunch of

data structures and fields.

I need to include another /copy to include some other definitions for

another function.

Both of these /copy have a field defined. They are defined the same

char(10).

When I compile I get 'RNF3316 The item has already been defined on a

Definition Specification; specification is ignored.'

But if you look at the listing 'Compilation stopped. Severity 30 errors

found in program.'

I looked at changing the GENLVL on the compile option but 20 is as high

as you can go.

I cannot change the either /copy easily.

Do you know of any ways to get the program to compile?

Leaning towards changing one of the /copy files. Bummer.

TIA

Kerwin Crawfor

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-2024 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.