This revision was automatically updated to reflect the committed changes. Closed by commit rL311991: [modules] Add test for using declaration in classes. (authored by teemperor).
Changed prior to commit: https://reviews.llvm.org/D37180?vs=112788&id=113044#toc Repository: rL LLVM https://reviews.llvm.org/D37180 Files: cfe/trunk/test/Modules/using-decl-inheritance.cpp Index: cfe/trunk/test/Modules/using-decl-inheritance.cpp =================================================================== --- cfe/trunk/test/Modules/using-decl-inheritance.cpp +++ cfe/trunk/test/Modules/using-decl-inheritance.cpp @@ -0,0 +1,34 @@ +// RUN: %clang_cc1 -x c++ -fmodules -fmodules-local-submodule-visibility -fmodules-cache-path=%t %s -verify +// RUN: %clang_cc1 -x c++ -fmodules -fmodules-cache-path=%t %s -verify + +// expected-no-diagnostics + +#pragma clang module build A + module A { } +#pragma clang module contents +#pragma clang module begin A +struct A { + virtual void Foo(double x) const; +}; +#pragma clang module end +#pragma clang module endbuild + +#pragma clang module build B + module B { } +#pragma clang module contents +#pragma clang module begin B +#pragma clang module import A +struct B : A { + using A::Foo; + virtual void Foo(double x) const; +}; +#pragma clang module end +#pragma clang module endbuild + +#pragma clang module import B + +int main() { + B b; + b.Foo(1.0); +} +
Index: cfe/trunk/test/Modules/using-decl-inheritance.cpp =================================================================== --- cfe/trunk/test/Modules/using-decl-inheritance.cpp +++ cfe/trunk/test/Modules/using-decl-inheritance.cpp @@ -0,0 +1,34 @@ +// RUN: %clang_cc1 -x c++ -fmodules -fmodules-local-submodule-visibility -fmodules-cache-path=%t %s -verify +// RUN: %clang_cc1 -x c++ -fmodules -fmodules-cache-path=%t %s -verify + +// expected-no-diagnostics + +#pragma clang module build A + module A { } +#pragma clang module contents +#pragma clang module begin A +struct A { + virtual void Foo(double x) const; +}; +#pragma clang module end +#pragma clang module endbuild + +#pragma clang module build B + module B { } +#pragma clang module contents +#pragma clang module begin B +#pragma clang module import A +struct B : A { + using A::Foo; + virtual void Foo(double x) const; +}; +#pragma clang module end +#pragma clang module endbuild + +#pragma clang module import B + +int main() { + B b; + b.Foo(1.0); +} +
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits