[libcxx-dev] gdb on libcxx-libcxxabi-libunwind-armv7-linux build bot

Sterling Augustine via libcxx-dev libcxx-dev at lists.llvm.org
Mon Sep 9 11:29:32 PDT 2019


I think the encoding failure (which would be python 2 vs 3) is a secondary
failure--already deep inside the error handling. The real problem is the

File
"/home/buildslave/buildslave/libcxx-libcxxabi-libunwind-armv8-linux-noexceptions/llvm/projects/libcxx/utils/gdb/libcxx/printers.py",
line 221, in to_string
    value_field = _value_of_pair_first(self.val["__r_"])
gdb.error: There is no member named __r_.

Which means that maybe the test case is getting compiled or linked
differently. At least in such a way that the field "__r_" doesn't exist (at
least not in debug info). But I would be quite puzzled as to why this bot
has a different libcxx build or debug info than all the others.

On Mon, Sep 9, 2019 at 11:15 AM Adhemerval Zanella <
adhemerval.zanella at linaro.org> wrote:

> Hi Sterling,
>
> Maxim has asked to take a loot at it.  The failure is essentially:
>
> FAIL:
> /home/buildslave/buildslave/libcxx-libcxxabi-libunwind-armv8-linux-noexceptions/llvm/projects/libcxx/test/pretty_printers/gdb_pretty_printer_test.sh.cpp:137
> GDB printed:
>    <incomplete type>
> Value should match:
> Traceback (most recent call last):
>   File
> "/home/buildslave/buildslave/libcxx-libcxxabi-libunwind-armv8-linux-noexceptions/llvm/projects/libcxx/test/pretty_printers/gdb_pretty_printer_test.py",
> line 64, in invoke
>     print("   " + check_literal)
> TypeError: Can't convert 'bytes' object to str implicitly
>
> I am not sure if it is something related to python2/3. The system does have
> both installed (python 2.7.12 and 3.5.2, with 2 being the default).  I
> tried
> to issue the faulty testcase with python3, and it shows the same issue
>
> I am not very familiar with this code, but trying to make peace with
> the types by changing it to:
>
>  52             else:
>  53                 check_literal =
> expectation_val.string(encoding="utf-8")
>  54                 check_literal_utf8 = check_literal.encode("utf-8")
>  55                 test_fails = value.encode("utf-8") !=
> check_literal_utf8
>
> Also does not help either.  For the change above, the first failure shows:
>
> FAIL:
> /home/buildslave/buildslave/libcxx-libcxxabi-libunwind-armv8-linux-noexceptions/llvm/projects/libcxx/test/pretty_printers/gdb_pretty_printer_test.sh.cpp:137
> GDB printed:
>    Traceback (most recent call last):
>   File
> "/home/buildslave/buildslave/libcxx-libcxxabi-libunwind-armv8-linux-noexceptions/llvm/projects/libcxx/utils/gdb/libcxx/printers.py",
> line 221, in to_string
>     value_field = _value_of_pair_first(self.val["__r_"])
> gdb.error: There is no member named __r_.
>
> Value should match:
>    "kdjflskdjf"
>
> Which indicates that something is still missing here. I am checking if it
> is possible to give you direct access to the bot.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/libcxx-dev/attachments/20190909/35266fef/attachment.html>


More information about the libcxx-dev mailing list