Fix -fmacro-backtrace-limit=0 to show the entire macro backtrace.

llvm-svn: 148930
This commit is contained in:
Ted Kremenek
2012-01-25 06:07:15 +00:00
parent 47a86bdbe2
commit a163d0b5de
2 changed files with 55 additions and 1 deletions

View File

@@ -260,7 +260,8 @@ void DiagnosticRenderer::emitMacroExpansionsAndCarets(
Loc = getImmediateMacroCalleeLoc(SM, Loc);
unsigned MacroSkipStart = 0, MacroSkipEnd = 0;
if (MacroDepth > DiagOpts.MacroBacktraceLimit) {
if (MacroDepth > DiagOpts.MacroBacktraceLimit &&
DiagOpts.MacroBacktraceLimit != 0) {
MacroSkipStart = DiagOpts.MacroBacktraceLimit / 2 +
DiagOpts.MacroBacktraceLimit % 2;
MacroSkipEnd = MacroDepth - DiagOpts.MacroBacktraceLimit / 2;