To: J3 J3/19-183r1 From: Daniel Chen & Malcolm Cohen Subject: Clarification of global identifier Date: 2019-August-05 #Reference: 18-007r1 Introduction ------------ Consider the following code fragment: module m1 interface subroutine sub1() bind(c, name="samec") end end interface end module m2 interface subroutine sub2() bind(c, name="samec") end end interface end program main use m1 use m2 end [497: 26-27] 19.2 Global identifier: "A binding label of an entity of the program is a global identifier." Therefore, the global identifier of both sub1 and sub2 is "samec". [497: 28] 19.2 Global identifier: "The global identifier of an entity shall not be the same as the global identifier of any other entity". Question: Does this sentence invalidate the above code fragment? Answer: NO. The above code fragment is valid. The work "entity" in [497:28] means global entity. An edit is provided to clarify it. Edit to 18-007r1 ---------------- [497:28] 19.2 Global identifier, p1, first sentence, Change "an entity" to "a global entity", change "any other entity" to "any other global entity". Thus making the sentence read: "The global identifier of a global entity shall not be the same as the global identifier of any other global entity." ===END===