[all-commits] [llvm/llvm-project] fc9898: [CIR] Add support for recursive record layouts (#1...

Andy Kaylor via All-commits all-commits at lists.llvm.org
Wed May 21 09:15:09 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fc9898c4c09fa4e5b83f99d36e847769bf60da60
      https://github.com/llvm/llvm-project/commit/fc9898c4c09fa4e5b83f99d36e847769bf60da60
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-05-21 (Wed, 21 May 2025)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/test/CIR/CodeGen/struct.c

  Log Message:
  -----------
  [CIR] Add support for recursive record layouts (#140811)

While processing members of a record, we try to create new record types
as we encounter them, but if this would result in recursion (either
because the type points to itself or because it points to a type that
points back to the original type) we need to add it to a list for
deferred processing. Previously, we issued an error saying this wasn't
handled. This change adds the necessary handling.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list