klimek added a comment. Answering the fundamental design question first.
================ Comment at: clang/lib/Format/ContinuationIndenter.cpp:289 Current.closesBlockOrBlockTypeList(Style))) { + DEBUG_FORMAT_TRACE_TOKEN(Current, "!canBreak"); return false; ---------------- sammccall wrote: > annotating all exit paths from this function and `mustBreak` seems much more > verbose and fragile than wrapping the function (making this version private) > and adding the annotations in the wrapper. How do we get the exact condition that triggered? The main trick here is the __FILE__:__LINE__ in the debug output. ================ Comment at: clang/lib/Format/FormatDebug.h:22 + +#ifndef NDEBUG + ---------------- sammccall wrote: > it looks like you're not providing a dummy definition in NDEBUG mode - does > this still build in that config? All use is within LLVM_DEBUG(). ================ Comment at: clang/lib/Format/FormatDebug.h:32 + << (Tok).TokenText << ": " << Debug << "\n"; \ + } else { \ + } ---------------- sammccall wrote: > why empty else? The idea was dangling else protection, but I guess we have dangling else warnings, so this is not necessary? ================ Comment at: clang/lib/Format/TokenAnnotator.cpp:3258 } + DEBUG_FORMAT_TRACE_TOKEN(*Current, (Current->MustBreakBefore ? "" : "!") + << "MustBreakBefore"); ---------------- sammccall wrote: > sammccall wrote: > > move this out of the if() and remove the one on the other branch? > this meaning of `<<` in `(...) << "MustBreakBefore` is confusing. > > consider `<< (...) << "MustBreakBefore"` or `dbgs() << (...) << > "MustBreakBefore"` or a twine or formatv or really anything that isn't a > shift :-) The idea was to see which branch of the if is taken here. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145244/new/ https://reviews.llvm.org/D145244 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits