Add stopgap option -fmodule-implementation-of <name>
This flag specifies that we are building an implementation file of the module <name>, preventing importing <name> as a module. This does not consider this to be the 'current module' for the purposes of doing modular checks like decluse or non-modular-include warnings, unlike -fmodule-name. This is needed as a stopgap until: 1) we can resolve relative includes to a VFS-mapped module (or can safely import a header textually and as part of a module) and ideally 2) we can safely do incremental rebuilding when implementation files import submodules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213767 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/Basic/DiagnosticFrontendKinds.td 4 additions, 0 deletionsinclude/clang/Basic/DiagnosticFrontendKinds.td
- include/clang/Basic/DiagnosticSemaKinds.td 2 additions, 0 deletionsinclude/clang/Basic/DiagnosticSemaKinds.td
- include/clang/Basic/LangOptions.h 5 additions, 0 deletionsinclude/clang/Basic/LangOptions.h
- include/clang/Driver/CC1Options.td 3 additions, 0 deletionsinclude/clang/Driver/CC1Options.td
- lib/Basic/LangOptions.cpp 1 addition, 0 deletionslib/Basic/LangOptions.cpp
- lib/Frontend/CompilerInstance.cpp 8 additions, 2 deletionslib/Frontend/CompilerInstance.cpp
- lib/Frontend/CompilerInvocation.cpp 8 additions, 0 deletionslib/Frontend/CompilerInvocation.cpp
- lib/Lex/PPDirectives.cpp 3 additions, 1 deletionlib/Lex/PPDirectives.cpp
- lib/Sema/SemaDecl.cpp 3 additions, 0 deletionslib/Sema/SemaDecl.cpp
- test/Modules/implementation-of-module.m 29 additions, 0 deletionstest/Modules/implementation-of-module.m
Loading
Please register or sign in to comment