| // Based on C++20 10.2 example 4. | |
| // RUN: %clang_cc1 -std=c++20 -emit-module-interface %s -verify -o %t | |
| export module M; | |
| struct S { // expected-note {{previous declaration is here}} | |
| int n; | |
| }; | |
| typedef S S; | |
| export typedef S S; // OK, does not redeclare an entity | |
| export struct S; // expected-error {{cannot export redeclaration 'S' here since the previous declaration has module linkage}} |