diff options
Diffstat (limited to 'clang/Lex/MacroExpander.cpp')
-rw-r--r-- | clang/Lex/MacroExpander.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/Lex/MacroExpander.cpp b/clang/Lex/MacroExpander.cpp index cec0501b2f7..c887512ff0e 100644 --- a/clang/Lex/MacroExpander.cpp +++ b/clang/Lex/MacroExpander.cpp @@ -447,7 +447,8 @@ void MacroExpander::ExpandFunctionArguments() { // This is deleted in the dtor. NumMacroTokens = ResultToks.size(); LexerToken *Res = new LexerToken[ResultToks.size()]; - memcpy(Res, &ResultToks[0], NumMacroTokens*sizeof(LexerToken)); + if (NumMacroTokens) + memcpy(Res, &ResultToks[0], NumMacroTokens*sizeof(LexerToken)); MacroTokens = Res; } } |