Oops, yes it is in the code snippet. On Sat, Oct 9, 2021 at 2:22 PM Wayne Bickerdike <[email protected]> wrote:
> It's not obvious from the code snippet. I agree with Mike Schwab, qualify > the name. The duplicate could be in a COPY statement. > > On Sat, Oct 9, 2021 at 11:24 AM Mike Schwab <[email protected]> > wrote: > >> > 01 RECORD-NAME. >> > 05 SUBSECTION-NAME. >> >> > MOVE SUBSECTION-NAME TO WS-SUBSECTION-NAME. >> >> > 25779 IGYPS0037-S "SUBSECTION-NAME" was not a uniquely defined >> name. The definition to be used could not be determined from the >> > context. The reference to the name was discarded. >> >> You have multiple SUBSECTION-NAME variables. You need to qualify by >> coding >> MOVE SUBSECTION-NAME OF RECORD-NAME TO WS-SUBSECTION-NAME. >> >> Applies to all versions of COBOL. >> >> On Sat, Oct 9, 2021 at 1:02 AM Farley, Peter x23353 >> <[email protected]> wrote: >> > >> > This is an Enterprise COBOL V6.2 question. I am not sure if this is a >> compiler issue or a programmer misunderstanding issue. >> > >> > I have a COBOL subroutine which has multiple nested programs within >> it. The general structure is as follows (it's actually far more >> complicated with COPY members and such, but this shows the basic issue). >> Note carefully that the INSIDE1 subroutine is declared COMMON because other >> nested subroutines (not shown here) may also CALL it besides the CALL from >> the top-level program: >> > >> > ID DIVISION. >> > PROGRAM-ID. SUBMAIN. >> > . . . . . >> > WORKING-STORAGE SECTION. >> > 01 RECORD-NAME. >> > 05 SUBSECTION-NAME. >> > 10 SUBSECTION-VAR PIC X. >> > PROCEDURE DIVISION. >> > . . . . . >> > CALL "INSIDE1" USING RECORD-NAME. >> > . . . . . >> > >> > ID DIVISION. >> > PROGRAM-ID. INSIDE1 COMMON. >> > . . . . . >> > WORKING-STORAGE SECTION. >> > 01 WS-AREA. >> > 05 WS-SUBSECTION-NAME PIC X. >> > LINKAGE SECTION. >> > 01 RECORD-NAME. >> > 05 SUBSECTION-NAME. >> > 10 SUBSECTION-VAR PIC X. >> > . . . . . >> > PROCEDURE DIVISION USING RECORD-NAME. >> > . . . . . >> > MOVE SUBSECTION-NAME TO WS-SUBSECTION-NAME. >> > . . . . . >> > EXIT PROGRAM. >> > END-PROGRAM INSIDE1. >> > >> > END-PROGRAM SUBMAIN. >> > >> > The MOVE statement in the nested subroutine INSIDE1 gets this COBOL >> error: >> > >> > 25779 IGYPS0037-S "SUBSECTION-NAME" was not a uniquely defined >> name. The definition to be used could not be determined from the >> > context. The reference to the name was discarded. >> > >> > The V6.2 Language Reference Manual on page 60 says this about using >> identical names in nested programs: >> > >> > "Identical names >> > When programs are directly or indirectly contained within other >> programs, each program can use identical >> > user-defined words to name resources. >> > A program references the resources that program describes rather than >> the same-named resources >> > described in another program, even if the names are different types of >> user-defined words." >> > >> > Is that language in the manual telling me that I may have a compiler >> bug here, or am I misunderstanding the language in the manual and have to >> code the names used in the nested subroutine differently (e.g., by using a >> unique prefix for all the common data names or at least for the top-level >> name)? >> > >> > TIA for any assistance you can provide. >> > >> > Peter >> > -- >> > >> > This message and any attachments are intended only for the use of the >> addressee and may contain information that is privileged and confidential. >> If the reader of the message is not the intended recipient or an authorized >> representative of the intended recipient, you are hereby notified that any >> dissemination of this communication is strictly prohibited. If you have >> received this communication in error, please notify us immediately by >> e-mail and delete the message and any attachments from your system. >> > >> > ---------------------------------------------------------------------- >> > For IBM-MAIN subscribe / signoff / archive access instructions, >> > send email to [email protected] with the message: INFO IBM-MAIN >> >> >> >> -- >> Mike A Schwab, Springfield IL USA >> Where do Forest Rangers go to get away from it all? >> >> ---------------------------------------------------------------------- >> For IBM-MAIN subscribe / signoff / archive access instructions, >> send email to [email protected] with the message: INFO IBM-MAIN >> > > > -- > Wayne V. Bickerdike > > -- Wayne V. Bickerdike ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
