[all-commits] [llvm/llvm-project] 24aec1: [OpenACC] Implement no throw out of Compute construct

Erich Keane via All-commits all-commits at lists.llvm.org
Fri Mar 1 14:24:05 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 24aec16ddad465cc1c2fce528bb3eca49ac9fcdb
      https://github.com/llvm/llvm-project/commit/24aec16ddad465cc1c2fce528bb3eca49ac9fcdb
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Scope.h
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.cpp

  Log Message:
  -----------
  [OpenACC] Implement no throw out of Compute construct

Exception handling SHOULD be possible depending on codegen (and if not,
we can make it trap and add a warning when we make that decision), but
throwing out of a compute construct is ill formed.

This patch adds an error for a 'throw' that isn't in a 'try' scope. This
error is imperfect as it won't diagnose a 'throw' that escapes its
'try', or one in a separate function, but it catches the obvious
mistakes. The other cases will need to be handled as runtime failures.



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