Annex G (informative) Ill-formed, no diagnostic required [ifndr]

G.3 [basic]: Basics [ifndr.basic]

G.3.4[ifndr:basic.def.odr.maximum.one.def]
Specified in: [basic.def.odr]

If there are definitions in different translation units of a non-inline non-templated function or variable that are not attached to a named module or are not reachable from one another, the program is ill-formed, no diagnostic required.
[Example 1: 

Translation unit #1:export module M:A; // module partition void f() {} // #1 void g() {} // #2

Translation unit #2:export module M:B; // module partition void f() {} // IFNDR, #1 not reachable

Translation unit #3:export module M; // primary module interface unit export import :A; void g(); // error: #2 is reachable — end example]