[all-commits] [llvm/llvm-project] 0b0a37: [clang] Lifetime of locals must end before musttai...

Oliver Stannard via All-commits all-commits at lists.llvm.org
Mon Sep 23 02:04:31 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0b0a37e158bcf6d0667b4744b3d335f91578e0c9
      https://github.com/llvm/llvm-project/commit/0b0a37e158bcf6d0667b4744b3d335f91578e0c9
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-09-23 (Mon, 23 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/CheckExprLifetime.h
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/SemaCXX/attr-musttail.cpp

  Log Message:
  -----------
  [clang] Lifetime of locals must end before musttail call (#109255)

The lifetimes of local variables and function parameters must end before
the call to a [[clang::musttail]] function, instead of before the
return, because we will not have a stack frame to hold them when doing
the call.

This documents this limitation, and adds diagnostics to warn about some
code which is invalid because of it.



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