forked from OSchip/llvm-project
d211d1a59c
Summary: Previously lldb-test's LinePrinter would output the indentation spaces even on completely empty lines. This is not nice, as trailing spaces get flagged as errors in some tools/editors, and it prevents FileCheck's CHECK-EMPTY from working. Equally annoying was the fact that the LinePrinter did not terminate it's output with a newline (instead it would leave the unterminated hanging indent from the last NewLine() command), which meant that the shell prompt following the lldb-test command came out wrong. This fixes both issues by changing how newlines are handled. NewLine(), which was ending the previous line ('\n') *and* begging the next line by printing the indent, is now "demoted" to just printing literal "\n". Instead, lines are now delimited via a helper Line object, which makes sure the line is indented and terminated in an RAII fashion. The typical usage would be: Printer.line() << "This text will be indented and terminated"; If one needs to do more work than it will fit into a single statement, one can also assign the result of the line() function to a local variable. The line will then be terminated when that object goes out of scope. Reviewers: zturner Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D55597 llvm-svn: 349269 |
||
---|---|---|
.. | ||
Breakpoint | ||
BuildScript | ||
Driver | ||
ExecControl/StopHook | ||
Expr | ||
Modules | ||
Quit | ||
Reproducer | ||
Settings | ||
Suite | ||
SymbolFile | ||
Unit | ||
helper | ||
tools/lldb-mi | ||
CMakeLists.txt | ||
lit-lldb-init | ||
lit.cfg.py | ||
lit.site.cfg.py.in |