xref: /llvm-project/clang/test/Modules/cxx20-10-2-ex4.cpp (revision 7dcd698875cc6c73a9b10acad1b55aeb08bc9fca)
1 // Based on C++20 10.2 example 4.
2 
3 // RUN: %clang_cc1 -std=c++20 -emit-module-interface %s -verify -o %t
4 
5 export module M;
6 
7 struct S { // expected-note {{previous declaration is here}}
8   int n;
9 };
10 typedef S S;
11 export typedef S S; // OK, does not redeclare an entity
12 export struct S;    // expected-error {{cannot export redeclaration 'S' here since the previous declaration has module linkage}}
13