[Lldb-commits] [PATCH] D66447: Add char8_t support (C++20)

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Aug 20 01:43:56 PDT 2019


labath added inline comments.


================
Comment at: lldb/packages/Python/lldbsuite/test/lang/cpp/char8_t/Makefile:4-6
+CFLAGS := -g -O0 -std=c++2a
+
+clean: OBJECTS+=$(wildcard main.d.*)
----------------
Replace with `CFLAGS_EXTRAS+=-std=c++2a`


================
Comment at: lldb/packages/Python/lldbsuite/test/lang/cpp/char8_t/TestCxxChar8_t.py:46
+
+        # Check that we correctly report templates on wchar_t
+        self.expect(
----------------
This comment looks misplaced.


================
Comment at: lldb/packages/Python/lldbsuite/test/lang/cpp/char8_t/main.cpp:1-7
+#include <cstring>
+
+int main (int argc, char const *argv[])
+{
+    char8_t c8 = u8'\0';
+    return 0; // Set break point at this line.
+}
----------------
It doesn't look like you actually need a running process for this at all. I think you could just make `c8` a global variable and inspect it from the executable image directly (`target variable c8`).


================
Comment at: lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp:857-862
+      cpp_category_sp, lldb_private::formatters::Char8StringSummaryProvider,
+      "char8_t * summary provider", ConstString("char8_t *"), string_flags);
+  AddCXXSummary(cpp_category_sp,
+                lldb_private::formatters::Char8StringSummaryProvider,
+                "char8_t [] summary provider",
+                ConstString("char8_t \\[[0-9]+\\]"), string_array_flags, true);
----------------
It looks like you're also adding formatters for `char8_t *` and `char8_t[N]`. I guess those should be tested too...


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D66447/new/

https://reviews.llvm.org/D66447





More information about the lldb-commits mailing list