// RUN: %clang_cc1 -std=c++20 -verify %s -DFOO=export -DBAR=export // RUN: %clang_cc1 -std=c++20 -verify %s -DFOO=export -DBAR= // RUN: %clang_cc1 -std=c++20 %s -DFOO=export -emit-module-interface -o %t // RUN: %clang_cc1 -std=c++20 %s -fmodule-file=foo=%t -DFOO= // RUN: %clang_cc1 -std=c++20 %s -fmodule-file=foo=%t -DBAR=export // RUN: %clang_cc1 -std=c++20 -verify %s -fmodule-file=foo=%t -DFOO= -DBAR=export #ifdef FOO FOO module foo; // expected-note {{previous module declaration is here}} #endif #ifdef BAR BAR module bar; // expected-error {{translation unit contains multiple module declarations}} #endif