1 // COMPILE_SEPARATELY
2 // EXTRA_SOURCES: imports/bug10425.d
3 
4 import imports.bug10425;
5 
6 void main()
7 {
8     auto ti = typeid(A!());
9     /* Today, taking TypeInfo object address by using `typeid` always generates
10      * the TypeInfo object on comdat section (done by TypeInfoDeclaration::toObjFile),
11      * even if the associated struct belongs *non-root modules*.
12      *
13      * And, from 2.062, issue 7511 is implemented.
14      * The attribute inference for member functions in instantiated struct may modify
15      * their actual mangled names. Then TypeInfo object compiled in this module would
16      * use wrong symbol names, to link non-template opEquals/opCmp/toHash/toString
17      * member functions.
18      *
19      * To fix the issue, we should run semantic3 to calculate the correct symbol names
20      * of the specific member functions.
21      */
22 }
23