diff options
author | David Blaikie <dblaikie@gmail.com> | 2013-05-15 23:46:19 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2013-05-15 23:46:19 +0000 |
commit | db35281468f2a7fa2df410a9e08f67c7c3b13fcb (patch) | |
tree | 66465485d287c6eeee218f9e4637575d36e5cccc /clang/lib/CodeGen/CGDecl.cpp | |
parent | a7f94ce8a3fba3c47b4e40828f29fea34df3ef51 (diff) | |
download | llvm-db35281468f2a7fa2df410a9e08f67c7c3b13fcb.zip llvm-db35281468f2a7fa2df410a9e08f67c7c3b13fcb.tar.gz llvm-db35281468f2a7fa2df410a9e08f67c7c3b13fcb.tar.bz2 |
Revert "Debug Info: Using declarations/DW_TAG_imported_declaration of variables, types, and functions."
This reverts commit r181393 (git 3923d6a87fe7b2c91cc4a7dbd90c4ec7e2316bcd).
This seems to be emitting too much extra debug info for two (known)
reasons:
* full class definitions are emitted when only declarations are expected
* unused using declarations still produce DW_TAG_imported_declarations
llvm-svn: 181947
Diffstat (limited to 'clang/lib/CodeGen/CGDecl.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGDecl.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/clang/lib/CodeGen/CGDecl.cpp b/clang/lib/CodeGen/CGDecl.cpp index 41f8409..3ce6dec 100644 --- a/clang/lib/CodeGen/CGDecl.cpp +++ b/clang/lib/CodeGen/CGDecl.cpp @@ -72,13 +72,14 @@ void CodeGenFunction::EmitDecl(const Decl &D) { case Decl::Block: case Decl::Captured: case Decl::ClassScopeFunctionSpecialization: - case Decl::UsingShadow: llvm_unreachable("Declaration should not be in declstmts!"); case Decl::Function: // void X(); case Decl::Record: // struct/union/class X; case Decl::Enum: // enum X; case Decl::EnumConstant: // enum ? { X = ? } case Decl::CXXRecord: // struct/union/class X; [C++] + case Decl::Using: // using X; [C++] + case Decl::UsingShadow: case Decl::NamespaceAlias: case Decl::StaticAssert: // static_assert(X, ""); [C++0x] case Decl::Label: // __label__ x; @@ -88,10 +89,6 @@ void CodeGenFunction::EmitDecl(const Decl &D) { // None of these decls require codegen support. return; - case Decl::Using: // using X; [C++] - if (CGDebugInfo *DI = getDebugInfo()) - DI->EmitUsingDecl(cast<UsingDecl>(D)); - return; case Decl::UsingDirective: // using namespace X; [C++] if (CGDebugInfo *DI = getDebugInfo()) DI->EmitUsingDirective(cast<UsingDirectiveDecl>(D)); |