Index: clang/lib/Sema/SemaModule.cpp =================================================================== --- clang/lib/Sema/SemaModule.cpp +++ clang/lib/Sema/SemaModule.cpp @@ -395,7 +395,7 @@ // [module.interface]p1: // An export-declaration shall inhabit a namespace scope and appear in the // purview of a module interface unit. - Diag(ExportLoc, diag::err_export_not_in_module_interface); + Diag(ExportLoc, diag::err_export_not_in_module_interface) << 0; } return Import; Index: clang/test/Modules/cxx20-export-import.cpp =================================================================== --- /dev/null +++ clang/test/Modules/cxx20-export-import.cpp @@ -0,0 +1,3 @@ + +// RUN: %clang_cc1 -std=c++20 -fmodules -fmodules-cache-path=%t -fimplicit-module-maps -I%S/Inputs -stdlib=libc++ -verify %s +export import dummy; // expected-error {{export declaration can only be used within a module interface unit after the module declaration}}