[all-commits] [llvm/llvm-project] 3d9a9f: [lldb] Remove a wrong assert in TestStructTypes th...

Raphael Isemann via All-commits all-commits at lists.llvm.org
Thu Jul 22 08:06:06 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3d9a9fa6911a5228ce799a7c639e94d322678934
      https://github.com/llvm/llvm-project/commit/3d9a9fa6911a5228ce799a7c639e94d322678934
  Author: Raphael Isemann <teemperor at gmail.com>
  Date:   2021-07-22 (Thu, 22 Jul 2021)

  Changed paths:
    M lldb/test/API/lang/c/struct_types/main.c

  Log Message:
  -----------
  [lldb] Remove a wrong assert in TestStructTypes that checks that empty structs in C always have size 0

D105471 fixes the way we assign sizes to empty structs in C mode. Instead of
just giving them a size 0, we instead use the size we get from DWARF if possible.

After landing D105471 the TestStructTypes test started failing on Windows. The
tests checked that the size of an empty C struct is 0 while the size LLDB now
reports is 4 bytes. It turns out that 4 bytes are the actual size Clang is using
for C structs with the MicrosoftRecordLayoutBuilder. The commit that introduced
that behaviour is 00a061dccc6671c96412d7b28ab2012963208579.

This patch removes that specific check from TestStructTypes. Note that D105471
added a series of tests that already cover this case (and the added checks
automatically adjust to whatever size the target compiler chooses for empty
structs).




More information about the All-commits mailing list