diff options
| author | Nico Weber <nicolasweber@gmx.de> | 2019-04-20 23:59:06 +0000 |
|---|---|---|
| committer | Nico Weber <nicolasweber@gmx.de> | 2019-04-20 23:59:06 +0000 |
| commit | 8eeaf5178dfda82b51766ea106febd7f563bc08f (patch) | |
| tree | 0dae3af91f1a7c07f2cc6bf05cd6aeffbe1ced72 /llvm/test/Demangle/ms-string-literals.test | |
| parent | f2654b638d534ae6025dfe87484c0b5bdde4c6f8 (diff) | |
| download | bcm5719-llvm-8eeaf5178dfda82b51766ea106febd7f563bc08f.tar.gz bcm5719-llvm-8eeaf5178dfda82b51766ea106febd7f563bc08f.zip | |
llvm-undname: Improve string literal demangling with embedded \0 chars
- Don't assert when a string looks like a u32 string to the heuristic
but doesn't have a length that's 0 mod 4. Instead, classify those
as u16 with embedded \0 chars. Found by oss-fuzz.
- Print embedded nul bytes as \0 instead of \x00.
llvm-svn: 358835
Diffstat (limited to 'llvm/test/Demangle/ms-string-literals.test')
| -rw-r--r-- | llvm/test/Demangle/ms-string-literals.test | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/test/Demangle/ms-string-literals.test b/llvm/test/Demangle/ms-string-literals.test index 1e634099124..2fe3384fe74 100644 --- a/llvm/test/Demangle/ms-string-literals.test +++ b/llvm/test/Demangle/ms-string-literals.test @@ -771,3 +771,13 @@ ??_C@_0CG@HJGBPLNO@l?$AAo?$AAo?$AAk?$AAA?$AAh?$AAe?$AAa?$AAd?$AAH?$AAa?$AAr?$AAd?$AAB?$AAr?$AAe?$AA@ ; CHECK: u"lookAheadHardBre"... + + +; These are u16 strings that the diagnostic would classify as u32 -- except +; that their byte length % 4 is 2, so they can't be u32. + +??_C@_05LABPAAN@b?$AA?$AA?$AA?$AA?$AA@ +; CHECK: u"b\0" + +??_C@_0CC@MBPKDIAM@a?$AA?$AA?$AAb?$AA?$AA?$AAc?$AA?$AA?$AAd?$AA?$AA?$AAe?$AA?$AA?$AAf?$AA?$AA?$AAg?$AA?$AA?$AAh?$AA?$AA?$AA@ +; CHECK: u"a\0b\0c\0d\0e\0f\0g\0h\0"... |

