To: J3 J3/19-183 From: Daniel Chen Subject: Clarification of global identifier Date: 2019-July-17 #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: Insert "global " before "entity" in the first sentence twice. It reads: "The global identifier of an global entity shall not be the same as the global identifier of any other global entity."