[all-commits] [llvm/llvm-project] 39236e: [clang][Interp] Fix lifetime diagnostics for dead ...

Timm Baeder via All-commits all-commits at lists.llvm.org
Sun Aug 20 02:53:44 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 39236e9c60e50278d042304b13823e116b68ce78
      https://github.com/llvm/llvm-project/commit/39236e9c60e50278d042304b13823e116b68ce78
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2023-08-20 (Sun, 20 Aug 2023)

  Changed paths:
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/lib/AST/Interp/InterpBlock.h
    M clang/lib/AST/Interp/InterpState.cpp
    A clang/test/AST/Interp/lifetimes.cpp

  Log Message:
  -----------
  [clang][Interp] Fix lifetime diagnostics for dead records

This used to crash the interpreter, either because we ran into the
assertion in CheckMutable() or because we accessed a Descriptor* pointer
preceding the field of a record. Those are preceded by an
InlineDescriptor though.

Differential Revision: https://reviews.llvm.org/D152132




More information about the All-commits mailing list