Online Expert Day - HPE Data Storage - Live Now
April 24/25 - Online Expert Day - HPE Data Storage - Live Now
Read more
Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

%LINK-W-ENTIDMTCH... PAS$ENVIRONMENT_TIME

Bob S._1
Occasional Contributor

%LINK-W-ENTIDMTCH... PAS$ENVIRONMENT_TIME

I'm working with an old system that is giving me problems. In the .map file I see a warning with the text something like:

%link-w-entidmtch PAS$ENVIRONMENT_TIME ident of ...some date... of entity XYZ123 ....

Is this anything to worry about? What problems might be related to this
4 REPLIES
RBrown_1
Trusted Contributor

Re: %LINK-W-ENTIDMTCH... PAS$ENVIRONMENT_TIME

I just typed

$ help/message entidmtch

(Careful, there are several partial matches before the exact match at the end).

The explanation "The specified modules were not compiled with the same external files (for example, a library)" sounds pretty bad to me.

In general, yes, worry about it. If you can't prove that the differences between the different external files are irrelevant, then you have a potential problem. Maybe it will work and maybe it won't.

What kinds of problems? It depends on what the differences are.

Is this map file from a recent build since you made a change? Or has this bad build existed "forever"?
Kumar_Sanjay
Regular Advisor

Re: %LINK-W-ENTIDMTCH... PAS$ENVIRONMENT_TIME

If the system does not link correctly because the linker checks that all references to an environment file are consistent. The linker does the checking with an "entity identification check," which is inserted into object files that refer to an environment file. Because you cannot predict the order of compilation in all circumstances, MMS can produce object files referring to different environment files (with different identifications). The linker then sends the warning message ENTIDMTCH


http://h71000.www7.hp.com/doc/82final/decset/MMS_USERS_GUIDE.PDF
Brian Reiter
Valued Contributor

Re: %LINK-W-ENTIDMTCH... PAS$ENVIRONMENT_TIME

Bob,

As mentioned above the answer is depends. The MMS file used (if MMS was used) may not match the definition of environments listed in the Pascal, correcting the MMS file in this case will correct the problem.

We've seen situations like this where changes have been made to a module and MMS instructs the compiler to build the module after some of the previous modules relying on the changes had already been built. You get very similar link errors.

It may be worth while sorting out if you have access to the sources.

cheers

Brian
John Reagan
Respected Contributor

Re: %LINK-W-ENTIDMTCH... PAS$ENVIRONMENT_TIME

Note that you can change how the Pascal compiler generates these IDC records by using the [PEN_CHECKING_STYLE] attribute in the file or with the recently adding DCL qualifier to control the same. You can turn them all off if you trust your build environment and your users. For example, look at the first few lines of STARLET.PAS.

As others have said, the linker noticed that different objects were compiled against different versions of the "same" PEN file. If your build created it twice from the same source, then the message is benign. If you compiled against some rogue PEN file found with some malformed logical name or rooted directory, then you might indeed care.