1*2f1555fbSChuanqi Xu// Checks for reachability for C++11 enum class properly 2*2f1555fbSChuanqi Xu// 3*2f1555fbSChuanqi Xu// RUN: rm -rf %t 4*2f1555fbSChuanqi Xu// RUN: mkdir -p %t 5*2f1555fbSChuanqi Xu// RUN: split-file %s %t 6*2f1555fbSChuanqi Xu// 7*2f1555fbSChuanqi Xu// RUN: %clang_cc1 -std=c++20 %t/A.cppm -emit-module-interface -o %t/A.pcm 8*2f1555fbSChuanqi Xu// RUN: %clang_cc1 -std=c++20 -fprebuilt-module-path=%t %t/Use.cpp -verify -fsyntax-only 9*2f1555fbSChuanqi Xu 10*2f1555fbSChuanqi Xu//--- foo.h 11*2f1555fbSChuanqi Xuenum class foo { 12*2f1555fbSChuanqi Xu a, b, c 13*2f1555fbSChuanqi Xu}; 14*2f1555fbSChuanqi Xu 15*2f1555fbSChuanqi Xu//--- A.cppm 16*2f1555fbSChuanqi Xumodule; 17*2f1555fbSChuanqi Xu#include "foo.h" 18*2f1555fbSChuanqi Xuexport module A; 19*2f1555fbSChuanqi Xuexport foo func(); 20*2f1555fbSChuanqi Xu 21*2f1555fbSChuanqi Xu//--- Use.cpp 22*2f1555fbSChuanqi Xu// expected-no-diagnostics 23*2f1555fbSChuanqi Xuimport A; 24*2f1555fbSChuanqi Xuvoid bar() { 25*2f1555fbSChuanqi Xu auto f = func(); 26*2f1555fbSChuanqi Xu} 27