[llvm-dev] Errors linking with LLVM 5.0 - dump() missing

Martin J. O'Riordan via llvm-dev llvm-dev at lists.llvm.org
Mon Sep 25 12:35:53 PDT 2017

Hi Dibyendu,

Are you building a Debug or Release version of the compiler?

I had similar problems a few days ago when I was migrating to v5.0, and it turned out that I had calls to some of the dump routines that were not guarded by either 'DEBUG(...)' or '#ifndef NDEBUG ... #endif' and I was seeing the link failures with a Release build.  These had been there since LLVM v3.1 and had never broken before.  There was some clean-up done in the sources so that may of the 'dump' routines are enabled only for Debug builds, and I fixed these (in my code) by adding these guards.

All the best,


-----Original Message-----
From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of Dibyendu Majumdar via llvm-dev
Sent: 25 September 2017 19:41
To: llvm-dev at lists.llvm.org
Subject: [llvm-dev] Errors linking with LLVM 5.0 - dump() missing


I am finding that my project that previously successfully built with versions 3.5 to 4.0 is now failing to link because of missing implementation for dump(). Errors I get are:

Undefined symbols for architecture x86_64:

  "llvm::Type::dump() const", referenced from:
      ravi::LuaLLVMTypes::dump() in ravi_llvmtypes.cpp.o
      dump_content(lua_State*) in ravi_llvmluaapi.cpp.o
  "llvm::Value::dump() const", referenced from:
      dump_content(lua_State*) in ravi_llvmluaapi.cpp.o
  "llvm::Module::dump() const", referenced from:

This appears to be a change that is not documented in the release notes of 5.0. Please can someone describe what the change is and how I can detect whether the dump() implementation is available or not?

It also seems strange that dump() implementation was removed - surely it would have been better ti stub it so that client code does not break?

LLVM Developers mailing list
llvm-dev at lists.llvm.org

More information about the llvm-dev mailing list