diff options
| author | David Blaikie <dblaikie@gmail.com> | 2021-10-14 14:52:47 -0700 |
|---|---|---|
| committer | David Blaikie <dblaikie@gmail.com> | 2021-10-21 11:34:43 -0700 |
| commit | aee49255074fd4ef38d97e6e70cbfbf2f9fd0fa7 (patch) | |
| tree | 50aa6137e551fef914045a310b1a0fb7630b6b9a /lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py | |
| parent | 626f0449f345db0e27f33b5cf5a8a0a44f10cd13 (diff) | |
Recommit: Compress formatting of array type names (int [4] -> int[4])
Based on post-commit review discussion on
2bd84938470bf2e337801faafb8a67710f46429d with Richard Smith.
Other uses of forcing HasEmptyPlaceHolder to false seem OK to me -
they're all around pointer/reference types where the pointer/reference
token will appear at the rightmost side of the left side of the type
name, so they make nested types (eg: the "int" in "int *") behave as
though there is a non-empty placeholder (because the "*" is essentially
the placeholder as far as the "int" is concerned).
This was originally committed in 277623f4d5a672d707390e2c3eaf30a9eb4b075c
Reverted in f9ad1d1c775a8e264bebc15d75e0c6e5c20eefc7 due to breakages
outside of clang - lldb seems to have some strange/strong dependence on
"char [N]" versus "char[N]" when printing strings (not due to that name
appearing in DWARF, but probably due to using clang to stringify type
names) that'll need to be addressed, plus a few other odds and ends in
other subprojects (clang-tools-extra, compiler-rt, etc).
Diffstat (limited to 'lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py')
| -rw-r--r-- | lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py b/lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py index 0f98eb34825c..13953e40a377 100644 --- a/lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py +++ b/lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/TestDataFormatterSmartArray.py @@ -68,7 +68,7 @@ class SmartArrayDataFormatterTestCase(TestBase): 'Nested Hello world!']) self.runCmd( - "type summary add --summary-string \"arr = ${var%s}\" -x \"char \\[[0-9]+\\]\"") + "type summary add --summary-string \"arr = ${var%s}\" -x \"char\\[[0-9]+\\]\"") self.expect("frame variable strarr", substrs=['arr = \"', @@ -107,7 +107,7 @@ class SmartArrayDataFormatterTestCase(TestBase): 'Nested Hello world!']) self.runCmd( - "type summary add --summary-string \"arr = ${var%c}\" -x \"char \\[[0-9]+\\]\"") + "type summary add --summary-string \"arr = ${var%c}\" -x \"char\\[[0-9]+\\]\"") self.expect("frame variable strarr", substrs=['arr = \"', @@ -127,7 +127,7 @@ class SmartArrayDataFormatterTestCase(TestBase): # ${var%char[]} self.runCmd( - "type summary add --summary-string \"arr = ${var%char[]}\" -x \"char \\[[0-9]+\\]\"") + "type summary add --summary-string \"arr = ${var%char[]}\" -x \"char\\[[0-9]+\\]\"") self.expect("frame variable strarr", substrs=['arr = \"', @@ -166,7 +166,7 @@ class SmartArrayDataFormatterTestCase(TestBase): # ${var%a} self.runCmd( - "type summary add --summary-string \"arr = ${var%a}\" -x \"char \\[[0-9]+\\]\"") + "type summary add --summary-string \"arr = ${var%a}\" -x \"char\\[[0-9]+\\]\"") self.expect("frame variable strarr", substrs=['arr = \"', @@ -255,7 +255,7 @@ class SmartArrayDataFormatterTestCase(TestBase): '0x00000009,0x00000008,0x00000007,0x00000006,0x00000005']) self.runCmd( - "type summary add --summary-string \"arr = ${var[]%x}\" \"int [5]\"") + "type summary add --summary-string \"arr = ${var[]%x}\" \"int[5]\"") self.expect( "frame variable intarr", @@ -271,7 +271,7 @@ class SmartArrayDataFormatterTestCase(TestBase): # printing each array item as an array self.runCmd( - "type summary add --summary-string \"arr = ${var[]%uint32_t[]}\" \"int [5]\"") + "type summary add --summary-string \"arr = ${var[]%uint32_t[]}\" \"int[5]\"") self.expect( "frame variable intarr", @@ -287,7 +287,7 @@ class SmartArrayDataFormatterTestCase(TestBase): # printing full array as an array self.runCmd( - "type summary add --summary-string \"arr = ${var%uint32_t[]}\" \"int [5]\"") + "type summary add --summary-string \"arr = ${var%uint32_t[]}\" \"int[5]\"") self.expect( "frame variable intarr", @@ -303,7 +303,7 @@ class SmartArrayDataFormatterTestCase(TestBase): # printing each array item as an array self.runCmd( - "type summary add --summary-string \"arr = ${var[]%float32[]}\" \"float [7]\"") + "type summary add --summary-string \"arr = ${var[]%float32[]}\" \"float[7]\"") self.expect( "frame variable flarr", @@ -319,7 +319,7 @@ class SmartArrayDataFormatterTestCase(TestBase): # printing full array as an array self.runCmd( - "type summary add --summary-string \"arr = ${var%float32[]}\" \"float [7]\"") + "type summary add --summary-string \"arr = ${var%float32[]}\" \"float[7]\"") self.expect("frame variable flarr", substrs=['flarr = arr =', @@ -343,9 +343,9 @@ class SmartArrayDataFormatterTestCase(TestBase): # use y and Y self.runCmd( - "type summary add --summary-string \"arr = ${var%y}\" \"float [7]\"") + "type summary add --summary-string \"arr = ${var%y}\" \"float[7]\"") self.runCmd( - "type summary add --summary-string \"arr = ${var%y}\" \"int [5]\"") + "type summary add --summary-string \"arr = ${var%y}\" \"int[5]\"") if process.GetByteOrder() == lldb.eByteOrderLittle: self.expect( @@ -400,9 +400,9 @@ class SmartArrayDataFormatterTestCase(TestBase): '00 00 00 09,00 00 00 08,00 00 00 07,00 00 00 06,00 00 00 05']) self.runCmd( - "type summary add --summary-string \"arr = ${var%Y}\" \"float [7]\"") + "type summary add --summary-string \"arr = ${var%Y}\" \"float[7]\"") self.runCmd( - "type summary add --summary-string \"arr = ${var%Y}\" \"int [5]\"") + "type summary add --summary-string \"arr = ${var%Y}\" \"int[5]\"") if process.GetByteOrder() == lldb.eByteOrderLittle: self.expect( |
