diff options
author | Chris Lattner <sabre@nondot.org> | 2003-10-23 18:39:22 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-10-23 18:39:22 +0000 |
commit | bf9584b041891d0f079f7cd2ae44d9c1defe1e4d (patch) | |
tree | 31659fa8f3fe9973937e48851b9b47d3e72c8403 | |
parent | 95ee0b0288abfbba5c705d87179689cd1a91b237 (diff) | |
download | llvm-bf9584b041891d0f079f7cd2ae44d9c1defe1e4d.zip llvm-bf9584b041891d0f079f7cd2ae44d9c1defe1e4d.tar.gz llvm-bf9584b041891d0f079f7cd2ae44d9c1defe1e4d.tar.bz2 |
Fail gracefully if we have a zero arg varargs function
llvm-svn: 9436
-rw-r--r-- | llvm/lib/CWriter/Writer.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/CWriter/Writer.cpp b/llvm/lib/CWriter/Writer.cpp index f65d3d3..b1f8793 100644 --- a/llvm/lib/CWriter/Writer.cpp +++ b/llvm/lib/CWriter/Writer.cpp @@ -1193,6 +1193,12 @@ void CWriter::visitCallInst(CallInst &I) { Out << "va_start(*(va_list*)&" << Mang->getValueName(&I) << ", "; // Output the last argument to the enclosing function... + if (I.getParent()->getParent()->aempty()) { + std::cerr << "The C backend does not currently support zero " + << "argument varargs functions, such as '" + << I.getParent()->getParent()->getName() << "'!\n"; + abort(); + } writeOperand(&I.getParent()->getParent()->aback()); Out << ")"; return; |