[Qemu-commits] [qemu/qemu] 4d8698: tests/lcitool/refresh: Treat the output of lcitool...

2024-05-18 Thread Richard Henderson via Qemu-commits
  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 4d8698e692cca96bbf20505a90e42d10141d2b94
  
https://github.com/qemu/qemu/commit/4d8698e692cca96bbf20505a90e42d10141d2b94
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/refresh

  Log Message:
  ---
  tests/lcitool/refresh: Treat the output of lcitool as text, not as bytes

In case lcitool fails (e.g. with a python backtrace), this makes
the output  of lcitool much more readable.

Suggested-by: Daniel P. Berrangé 
Message-ID: <20240516084059.511463-2-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: 9ebe09e633773bebd2dc52b151fb48c1b9b0542a
  
https://github.com/qemu/qemu/commit/9ebe09e633773bebd2dc52b151fb48c1b9b0542a
  Author: Philippe Mathieu-Daudé 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/projects/qemu.yml

  Log Message:
  ---
  tests/lcitool: Remove 'xfsprogs' from QEMU

QEMU's commit a5730b8bd3 ("block/file-posix: Simplify the
XFS_IOC_DIOINFO handling") removed the need for the 'xfsprogs'
package.

Signed-off-by: Philippe Mathieu-Daudé 
[thuth: Adjusted the patch from the lcitools repo to QEMU's repo]
Message-ID: <20240516084059.511463-3-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: fd77b25bbde962395b93335ade09b6d3127a6537
  
https://github.com/qemu/qemu/commit/fd77b25bbde962395b93335ade09b6d3127a6537
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/projects/qemu-minimal.yml
A tests/lcitool/projects/qemu-win-installer.yml
M tests/lcitool/projects/qemu.yml
M tests/lcitool/refresh

  Log Message:
  ---
  tests/lcitool: Remove g++ from the containers (except for the MinGW one)

We don't need C++ for the normal QEMU builds anymore, so installing
g++ in each and every container seems to be a waste of time and disk
space. The only container that still needs it is the Fedora MinGW
container that builds the only remaining C++ code in ./qga/vss-win32/
and we can install it there with an extra project yml file instead.

Message-ID: <20240516084059.511463-4-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: d2f213cc069d3013b3204993d957a6eff59c220c
  
https://github.com/qemu/qemu/commit/d2f213cc069d3013b3204993d957a6eff59c220c
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/projects/qemu.yml

  Log Message:
  ---
  tests/lcitool/projects/qemu.yml: Sort entries alphabetically again

Let's try to keep the entries in alphabetical order here!

Message-ID: <20240516084059.511463-5-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: e4b6adae7aa7ab440e4dd98de3c1c532f48eda60
  
https://github.com/qemu/qemu/commit/e4b6adae7aa7ab440e4dd98de3c1c532f48eda60
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/docker/dockerfiles/alpine.docker
M tests/docker/dockerfiles/centos9.docker
M tests/docker/dockerfiles/debian-amd64-cross.docker
M tests/docker/dockerfiles/debian-arm64-cross.docker
M tests/docker/dockerfiles/debian-armel-cross.docker
M tests/docker/dockerfiles/debian-armhf-cross.docker
M tests/docker/dockerfiles/debian-i686-cross.docker
M tests/docker/dockerfiles/debian-mips64el-cross.docker
M tests/docker/dockerfiles/debian-mipsel-cross.docker
M tests/docker/dockerfiles/debian-ppc64el-cross.docker
M tests/docker/dockerfiles/debian-riscv64-cross.docker
M tests/docker/dockerfiles/debian-s390x-cross.docker
M tests/docker/dockerfiles/debian.docker
M tests/docker/dockerfiles/fedora-win64-cross.docker
M tests/docker/dockerfiles/fedora.docker
M tests/docker/dockerfiles/opensuse-leap.docker
M tests/docker/dockerfiles/ubuntu2204.docker

  Log Message:
  ---
  tests/docker/dockerfiles: Update container files with "lcitool-refresh"

Run "make lcitool-refresh" after the previous changes to the
lcitool files. This removes the g++ and xfslibs-dev packages
from the dockerfiles (except for the fedora-win64-cross dockerfile
where we keep the C++ compiler).

Message-ID: <20240516084059.511463-6-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: bebe9603fcb072dcdb7fb22005781b3582a4d701
  
https://github.com/qemu/qemu/commit/bebe9603fcb072dcdb7fb22005781b3582a4d701
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M hw/intc/s390_flic.c

  Log Message:
  ---
  hw/intc/s390_flic: Fix crash that occurs when saving the machine state

adapter_info_so_needed() treats its "opaque" parameter as a S390FLICState,
but the function belongs to a VMStateDescription that is attached to a
TYPE_VIRTIO_CCW_BUS device. This is currently causing a crash when the
user 

branch core-updates updated (8814d74211 -> b4cdd046aa)

2024-05-18 Thread guix-commits
glv pushed a change to branch core-updates
in repository guix.

from 8814d74211 gnu: librewolf: Change nss/fixed to nss.
 new 57d0d5b6e5 gnu: stumpwm: Fix build.
 new 9ec9848e81 gnu: cl-cluffer: Fix build.
 new b4cdd046aa gnu: cl-moptilities: Fix build.

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/lisp-xyz.scm | 4 ++--
 gnu/packages/wm.scm   | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)



01/03: gnu: stumpwm: Fix build.

2024-05-18 Thread guix-commits
glv pushed a commit to branch core-updates
in repository guix.

commit 57d0d5b6e59b6e0ff3d11e3a2dc70605afd3b588
Author: Guillaume Le Vaillant 
AuthorDate: Fri May 3 13:41:01 2024 +0200

gnu: stumpwm: Fix build.

* gnu/packages/wm.scm (stumpwm)[arguments]: Don't refer to nonexistent
  'install' phase.

Change-Id: I6db6948750175de88f8e47eac10ceb76bff19640
---
 gnu/packages/wm.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 3bfa65e4ed..93aa7c8d77 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -2451,7 +2451,7 @@ wlr-output-management-unstable-v1 protocol.")
 Icon=~@
 Type=Application~%"
out))
-  (add-after 'install 'install-manual
+  (add-after 'create-desktop-file 'install-manual
 (lambda* (#:key (make-flags '()) outputs #:allow-other-keys)
   (let* ((out  (assoc-ref outputs "out"))
  (info (string-append out "/share/info")))



02/03: gnu: cl-cluffer: Fix build.

2024-05-18 Thread guix-commits
glv pushed a commit to branch core-updates
in repository guix.

commit 9ec9848e81e5b9617fa8eddc75430b2ffd5a50c1
Author: Guillaume Le Vaillant 
AuthorDate: Fri May 3 17:33:25 2024 +0200

gnu: cl-cluffer: Fix build.

* gnu/packages/lisp-xyz.scm (sbcl-cluffer)[arguments]: Don't refer to
  nonexistent 'install' phase.

Change-Id: Ic44a097dbe6d933fe86ce88fc0ca1a1ba7dc820d
---
 gnu/packages/lisp-xyz.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 3c9de7fc77..8a2aa85883 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -15138,7 +15138,7 @@ sequences of objects.")
   (arguments
`(#:phases
  (modify-phases %standard-phases
-   (add-after 'install 'unpatch-shebangs
+   (add-after 'strip 'unpatch-shebangs
  (lambda* (#:key outputs #:allow-other-keys)
;; The documentation Makefile rely on shell scripts.
;; TODO: Build it!



03/03: gnu: cl-moptilities: Fix build.

2024-05-18 Thread guix-commits
glv pushed a commit to branch core-updates
in repository guix.

commit b4cdd046aaafdceeceb0c975174248c01a47a287
Author: Guillaume Le Vaillant 
AuthorDate: Fri May 3 19:23:40 2024 +0200

gnu: cl-moptilities: Fix build.

* gnu/packages/lisp-xyz.scm (sbcl-moptilities)[arguments]: Don't refer to
  nonexistent 'install' phase.

Change-Id: I7c50877547cc5b5e357d7963aebc0915dd4ebf7a
---
 gnu/packages/lisp-xyz.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 8a2aa85883..06ebe816e7 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -14574,7 +14574,7 @@ compliance control.")
  ((":relative-to lift-test")
   ":relative-to moptilities-test"))
#t))
-   (add-after 'install 'remove-test-results
+   (add-after 'check 'remove-test-results
  ;; Otherwise the drag the SBCL package into the closure of the CL
  ;; package.
  (lambda* (#:key outputs #:allow-other-keys)



[clang] [clang][analyzer] Move checker alpha.security.cert.pos.34c into security.PutenvWithAuto (PR #92424)

2024-05-18 Thread Balazs Benics via cfe-commits
=?utf-8?q?Bal=C3=A1zs_K=C3=A9ri?= 
Message-ID:
In-Reply-To: 


https://github.com/steakhal approved this pull request.


https://github.com/llvm/llvm-project/pull/92424
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang][analyzer] Move checker alpha.security.cert.pos.34c into security.PutenvWithAuto (PR #92424)

2024-05-18 Thread Balazs Benics via cfe-commits
=?utf-8?q?Balázs_Kéri?= 
Message-ID:
In-Reply-To: 


https://github.com/steakhal edited 
https://github.com/llvm/llvm-project/pull/92424
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang][analyzer] Move checker alpha.security.cert.pos.34c into security.PutenvWithAuto (PR #92424)

2024-05-18 Thread Balazs Benics via cfe-commits
=?utf-8?q?Balázs_Kéri?= 
Message-ID:
In-Reply-To: 



@@ -2792,6 +2792,31 @@ Warn on mmap() calls that are both writable and 
executable.
//   code
  }
 
+.. _alpha-security-putenv-stack-array:
+
+alpha.security.PutenvStackArray
+"""""""""""""""""""""""""""""""

steakhal wrote:

```suggestion
alpha.security.PutenvStackArray (C)
"""""""""""""""""""""""""""""""""""
```

https://github.com/llvm/llvm-project/pull/92424
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang][analyzer] Move checker alpha.security.cert.pos.34c into security.PutenvWithAuto (PR #92424)

2024-05-18 Thread Balazs Benics via cfe-commits
=?utf-8?q?Balázs_Kéri?= 
Message-ID:
In-Reply-To: 



@@ -2792,6 +2792,31 @@ Warn on mmap() calls that are both writable and 
executable.
//   code
  }
 
+.. _alpha-security-putenv-stack-array:
+
+alpha.security.PutenvStackArray
+"""""""""""""""""""""""""""""""
+Finds calls to the ``putenv`` function which pass a pointer to a 
stack-allocated
+(automatic) array as the argument. Function ``putenv`` does not copy the passed
+string, only a pointer to the data is stored and this data can be read even by
+other threads. Content of a stack-allocated array is likely to be overwritten
+after returning from the parent function.
+
+The problem can be solved by using a static array variable or dynamically
+allocated memory. Even better is to avoid using ``putenv`` (it has other
+problems related to memory leaks) and use ``setenv`` instead.
+
+The check corresponds to CERT rule
+`POS34-C. Do not call putenv() with a pointer to an automatic variable as the 
argument
+<https://wiki.sei.cmu.edu/confluence/display/c/POS34-C.+Do+not+call+putenv%28%29+with+a+pointer+to+an+automatic+variable+as+the+argument>`_.
+
+.. code-block:: c
+
+  int f() {
+char[] env = "NAME=value";
----
steakhal wrote:

```suggestion
char env[] = "NAME=value";
```

https://github.com/llvm/llvm-project/pull/92424
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [AArch64] Merge duplicate extension information. (PR #92319)

2024-05-18 Thread Alexandros Lamprineas via cfe-commits


@@ -94,19 +94,21 @@ static void EmitARMTargetDef(RecordKeeper , raw_ostream 
) {
 else
   OS << ", \"" << Alias << "\"";
 OS << ", AArch64::" << AEK;
-if (AEK == "AEK_NONE") {
+auto Name = Rec->getValueAsString("Name");
+if (Name.empty()) {

labrinea wrote:

No, for example all the features I have fused  (FEAT_DPB, FEAT_DPB2, 
FEAT_FLAGM2, FEAT_FRINTTS, FEAT_RCPC2) as well as BTI, are FMVOnly and still 
have a valid +/- TargetFeatureName.

https://github.com/llvm/llvm-project/pull/92319
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [AArch64] Merge duplicate extension information. (PR #92319)

2024-05-18 Thread Alexandros Lamprineas via cfe-commits


@@ -56,43 +52,64 @@ class Extension<
 
 // The FMV priority
 int FMVPriority = _FMVPriority;
+
+// Indicates if the extension is available on the command line.
+string IsFMVOnly = _IsFMVOnly;

labrinea wrote:

We want the ExtensionInfo field to be of type bool. Can we do the type 
conversation in the emitter? If so okay

https://github.com/llvm/llvm-project/pull/92319
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [AArch64] Merge duplicate extension information. (PR #92319)

2024-05-18 Thread Alexandros Lamprineas via cfe-commits


@@ -56,43 +52,64 @@ class Extension<
 
 // The FMV priority
 int FMVPriority = _FMVPriority;
+
+// Indicates if the extension is available on the command line.
+string IsFMVOnly = _IsFMVOnly;
 }
 
 // Some extensions are available for FMV but can not be controlled via the
-// command line. These entries:
-//  - are SubtargetFeatures, so they have (unused) FieldNames on the subtarget
-//e.g. HasFMVOnlyFEAT_XYZ
-//  - have incorrect (empty) Implies fields, because the code that handles FMV
-//ignores these dependencies and looks only at FMVDependencies.
-//  - have no description.
-// 
-// In the generated data structures for extensions (ExtensionInfo), AEK_NONE is
-// used to indicate that a feature is FMV only. Therefore ArchExtKindSpelling 
is
-// manually overridden here.
-class FMVOnlyExtension
-  : Extension {
-let ArchExtKindSpelling = "AEK_NONE"; // AEK_NONE indicates FMV-only 
feature
-}
+// command line, neither have a TargetFeatureName. Since they have no effect
+// on their own, their description is left empty. However they can have side
+// effects by implying other Subtarget Features. These extensions are used
+// in FMV for detection purposes.
+
+let MArchName = "dgh" in
+def : Extension<"", "DGH", "", [], "FEAT_DGH", "", 260, "true">;

labrinea wrote:

Then what makes an Extension with IsFMVOnly=1 different from and 
FMVOnlyExtesion? I believe this will create more confusion. As I explained we 
don't want any extension to be of AEK_NONE type, in order to be able to express 
dependencies.

Do you want to rename the FMVOnlyExtesion class into something else making it 
differ from Extension only for not having a TargetFeatureName?

https://github.com/llvm/llvm-project/pull/92319
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Introduce `SemaPseudoObject` (PR #92646)

2024-05-18 Thread via cfe-commits
esult result = getDerived().TransformExpr(newSyntacticForm);
   if (result.isInvalid()) return ExprError();
 
@@ -11898,7 +11899,7 @@ 
TreeTransform::TransformPseudoObjectExpr(PseudoObjectExpr *E) {
   // expression must have been an lvalue-to-rvalue conversion which we
   // should reapply.
   if (result.get()->hasPlaceholderType(BuiltinType::PseudoObject))
-result = SemaRef.checkPseudoObjectRValue(result.get());
+result = SemaRef.PseudoObject().checkRValue(result.get());
 
   return result;
 }
@@ -16196,8 +16197,8 @@ ExprResult 
TreeTransform::RebuildCXXOperatorCallExpr(
   if (First->getObjectKind() == OK_ObjCProperty) {
 BinaryOperatorKind Opc = BinaryOperator::getOverloadedOpcode(Op);
 if (BinaryOperator::isAssignmentOp(Opc))
-  return SemaRef.checkPseudoObjectAssignment(/*Scope=*/nullptr, OpLoc, Opc,
-     First, Second);
+  return SemaRef.PseudoObject().checkAssignment(/*Scope=*/nullptr, OpLoc,
+Opc, First, Second);
 ExprResult Result = SemaRef.CheckPlaceholderExpr(First);
 if (Result.isInvalid())
   return ExprError();

``




https://github.com/llvm/llvm-project/pull/92646
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Introduce `SemaPseudoObject` (PR #92646)

2024-05-18 Thread Vlad Serebrennikov via cfe-commits
t(opaqueRef)) {
-  MSPropertyOpBuilder builder(SemaRef, refExpr, IsSimpleAssign);
-  return builder.buildAssignmentOperation(S, opcLoc, opcode, LHS, RHS);
+MSPropertyOpBuilder builder(SemaRef, refExpr, IsSimpleAssign);
+return builder.buildAssignmentOperation(S, opcLoc, opcode, LHS, RHS);
   } else if (MSPropertySubscriptExpr *RefExpr
  = dyn_cast(opaqueRef)) {
-  MSPropertyOpBuilder Builder(SemaRef, RefExpr, IsSimpleAssign);
-  return Builder.buildAssignmentOperation(S, opcLoc, opcode, LHS, RHS);
+MSPropertyOpBuilder Builder(SemaRef, RefExpr, IsSimpleAssign);
+return Builder.buildAssignmentOperation(S, opcLoc, opcode, LHS, RHS);
   } else {
 llvm_unreachable("unknown pseudo-object kind!");
   }
@@ -1562,10 +1562,10 @@ Expr 
*SemaPseudoObject::recreateSyntacticForm(PseudoObjectExpr *E) {
   Expr *syntax = E->getSyntacticForm();
   if (UnaryOperator *uop = dyn_cast(syntax)) {
 Expr *op = stripOpaqueValuesFromPseudoObjectRef(SemaRef, 
uop->getSubExpr());
-return UnaryOperator::Create(SemaRef.Context, op, uop->getOpcode(), 
uop->getType(),
- uop->getValueKind(), uop->getObjectKind(),
- uop->getOperatorLoc(), uop->canOverflow(),
- SemaRef.CurFPFeatureOverrides());
+return UnaryOperator::Create(
+SemaRef.Context, op, uop->getOpcode(), uop->getType(),
+uop->getValueKind(), uop->getObjectKind(), uop->getOperatorLoc(),
+uop->canOverflow(), SemaRef.CurFPFeatureOverrides());
   } else if (CompoundAssignOperator *cop
= dyn_cast(syntax)) {
 Expr *lhs = stripOpaqueValuesFromPseudoObjectRef(SemaRef, cop->getLHS());
diff --git a/clang/lib/Sema/TreeTransform.h b/clang/lib/Sema/TreeTransform.h
index 5fbc80f364a83..733a73da98314 100644
--- a/clang/lib/Sema/TreeTransform.h
+++ b/clang/lib/Sema/TreeTransform.h
@@ -16197,8 +16197,8 @@ ExprResult 
TreeTransform::RebuildCXXOperatorCallExpr(
   if (First->getObjectKind() == OK_ObjCProperty) {
 BinaryOperatorKind Opc = BinaryOperator::getOverloadedOpcode(Op);
 if (BinaryOperator::isAssignmentOp(Opc))
-  return SemaRef.PseudoObject().checkAssignment(/*Scope=*/nullptr, OpLoc, 
Opc,
- First, Second);
+  return SemaRef.PseudoObject().checkAssignment(/*Scope=*/nullptr, OpLoc,
+Opc, First, Second);
 ExprResult Result = SemaRef.CheckPlaceholderExpr(First);
 if (Result.isInvalid())
   return ExprError();

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Introduce `SemaCoroutine` (PR #92645)

2024-05-18 Thread Vlad Serebrennikov via cfe-commits

https://github.com/Endilll updated 
https://github.com/llvm/llvm-project/pull/92645

>From 4fe09a3411e54561857d2f9d8c1808cb2728e299 Mon Sep 17 00:00:00 2001
From: Vlad Serebrennikov 
Date: Sat, 18 May 2024 13:33:04 +0300
Subject: [PATCH 1/3] [clang] Introduce `SemaCoroutine`

---
 clang/include/clang/Sema/Sema.h  |  58 +-
 clang/include/clang/Sema/SemaCoroutine.h |  73 
 clang/lib/Parse/ParseExpr.cpp|   3 +-
 clang/lib/Parse/ParseExprCXX.cpp |   3 +-
 clang/lib/Parse/ParseStmt.cpp|   3 +-
 clang/lib/Sema/Sema.cpp  |   4 +-
 clang/lib/Sema/SemaCoroutine.cpp | 218 ---
 clang/lib/Sema/SemaDecl.cpp  |  16 +-
 clang/lib/Sema/SemaStmt.cpp  |   9 +-
 clang/lib/Sema/TreeTransform.h   |  25 +--
 10 files changed, 227 insertions(+), 185 deletions(-)
 create mode 100644 clang/include/clang/Sema/SemaCoroutine.h

diff --git a/clang/include/clang/Sema/Sema.h b/clang/include/clang/Sema/Sema.h
index d4d4a82525a02..1d0fbeacfe061 100644
--- a/clang/include/clang/Sema/Sema.h
+++ b/clang/include/clang/Sema/Sema.h
@@ -168,6 +168,7 @@ class PseudoDestructorTypeStorage;
 class PseudoObjectExpr;
 class QualType;
 class SemaCodeCompletion;
+class SemaCoroutine;
 class SemaCUDA;
 class SemaHLSL;
 class SemaObjC;
@@ -989,6 +990,11 @@ class Sema final : public SemaBase {
 return *CodeCompletionPtr;
   }
 
+  SemaCoroutine () {
+assert(CoroutinePtr);
+return *CoroutinePtr;
+  }
+
   SemaCUDA () {
 assert(CUDAPtr);
 return *CUDAPtr;
@@ -1050,6 +1056,7 @@ class Sema final : public SemaBase {
   mutable IdentifierInfo *Ident_super;
 
   std::unique_ptr CodeCompletionPtr;
+  std::unique_ptr CoroutinePtr;
   std::unique_ptr CUDAPtr;
   std::unique_ptr HLSLPtr;
   std::unique_ptr ObjCPtr;
@@ -2267,57 +2274,6 @@ class Sema final : public SemaBase {
   //
   //
 
-  /// \name C++ Coroutines
-  /// Implementations are in SemaCoroutine.cpp
-  ///@{
-
-public:
-  /// The C++ "std::coroutine_traits" template, which is defined in
-  /// \
-  ClassTemplateDecl *StdCoroutineTraitsCache;
-
-  bool ActOnCoroutineBodyStart(Scope *S, SourceLocation KwLoc,
-   StringRef Keyword);
-  ExprResult ActOnCoawaitExpr(Scope *S, SourceLocation KwLoc, Expr *E);
-  ExprResult ActOnCoyieldExpr(Scope *S, SourceLocation KwLoc, Expr *E);
-  StmtResult ActOnCoreturnStmt(Scope *S, SourceLocation KwLoc, Expr *E);
-
-  ExprResult BuildOperatorCoawaitLookupExpr(Scope *S, SourceLocation Loc);
-  ExprResult BuildOperatorCoawaitCall(SourceLocation Loc, Expr *E,
-  UnresolvedLookupExpr *Lookup);
-  ExprResult BuildResolvedCoawaitExpr(SourceLocation KwLoc, Expr *Operand,
-  Expr *Awaiter, bool IsImplicit = false);
-  ExprResult BuildUnresolvedCoawaitExpr(SourceLocation KwLoc, Expr *Operand,
-UnresolvedLookupExpr *Lookup);
-  ExprResult BuildCoyieldExpr(SourceLocation KwLoc, Expr *E);
-  StmtResult BuildCoreturnStmt(SourceLocation KwLoc, Expr *E,
-   bool IsImplicit = false);
-  StmtResult BuildCoroutineBodyStmt(CoroutineBodyStmt::CtorArgs);
-  bool buildCoroutineParameterMoves(SourceLocation Loc);
-  VarDecl *buildCoroutinePromise(SourceLocation Loc);
-  void CheckCompletedCoroutineBody(FunctionDecl *FD, Stmt *);
-
-  // As a clang extension, enforces that a non-coroutine function must be 
marked
-  // with [[clang::coro_wrapper]] if it returns a type marked with
-  // [[clang::coro_return_type]].
-  // Expects that FD is not a coroutine.
-  void CheckCoroutineWrapper(FunctionDecl *FD);
-  /// Lookup 'coroutine_traits' in std namespace and std::experimental
-  /// namespace. The namespace found is recorded in Namespace.
-  ClassTemplateDecl *lookupCoroutineTraits(SourceLocation KwLoc,
-   SourceLocation FuncLoc);
-  /// Check that the expression co_await promise.final_suspend() shall not be
-  /// potentially-throwing.
-  bool checkFinalSuspendNoThrow(const Stmt *FinalSuspend);
-
-  ///@}
-
-  //
-  //
-  // -
-  //
-  //
-
   /// \name C++ Scope Specifiers
   /// Implementations are in SemaCXXScopeSpec.cpp
   ///@{
diff --git a/clang/include/clang/Sema/SemaCoroutine.h 
b/clang/include/clang/Sema/SemaCoroutine.h
new file mode 100644
index 0..20f1fffc970f8
--- /dev/null
+++ b/clang/include/clang/Sema/SemaCoroutine.h
@@ -0,0 +1,73 @@
+//===- SemaCUDA.h - Semantic Analysis for C++20 coroutines 
===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM 
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===--===//
+/// \file
+/// This file declares semantic 

[jenkins-infra/jenkins-infra] 921d29: chore: Bump container agent image jenkinsciinfra/b...

2024-05-18 Thread 'jenkins-infra-bot' via Jenkins Commits
  Branch: 
refs/heads/updatecli_production_f10b18e55b9d879c3dc9d397305f5bd93d89cf9ecbc457d2fadf491e9076d68d
  Home:   https://github.com/jenkins-infra/jenkins-infra
  Commit: 921d29bba699aebf0c11eb6a08e7f6e1da345f41
  
https://github.com/jenkins-infra/jenkins-infra/commit/921d29bba699aebf0c11eb6a08e7f6e1da345f41
  Author: Jenkins Infra Bot (updatecli) 
<60776566+jenkins-infra-...@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M hieradata/common.yaml

  Log Message:
  ---
  chore: Bump container agent image jenkinsciinfra/builder

Made with ❤️️ by updatecli



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

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkins-infra/jenkins-infra/push/refs/heads/updatecli_production_f10b18e55b9d879c3dc9d397305f5bd93d89cf9ecbc457d2fadf491e9076d68d/54481d-921d29%40github.com.


[clang] [clang] Introduce `SemaCoroutine` (PR #92645)

2024-05-18 Thread via cfe-commits
outine().buildCoroutineParameterMoves(Loc))
 return nullptr;
 
-  ScopeInfo->CoroutinePromise = S.buildCoroutinePromise(Loc);
+  ScopeInfo->CoroutinePromise = S.Coroutine().buildCoroutinePromise(Loc);
   if (!ScopeInfo->CoroutinePromise)
 return nullptr;
 
@@ -666,13 +671,13 @@ static void checkNoThrow(Sema , const Stmt *E,
 }
 }
 
-bool Sema::checkFinalSuspendNoThrow(const Stmt *FinalSuspend) {
+bool SemaCoroutine::checkFinalSuspendNoThrow(const Stmt *FinalSuspend) {
   llvm::SmallPtrSet ThrowingDecls;
   // We first collect all declarations that should not throw but not declared
   // with noexcept. We then sort them based on the location before printing.
   // This is to avoid emitting the same note multiple times on the same
   // declaration, and also provide a deterministic order for the messages.
-  checkNoThrow(*this, FinalSuspend, ThrowingDecls);
+  checkNoThrow(SemaRef, FinalSuspend, ThrowingDecls);
   auto SortedDecls = llvm::SmallVector{ThrowingDecls.begin(),
 ThrowingDecls.end()};
   sort(SortedDecls, [](const Decl *A, const Decl *B) {
@@ -684,14 +689,14 @@ bool Sema::checkFinalSuspendNoThrow(const Stmt 
*FinalSuspend) {
   return ThrowingDecls.empty();
 }
 
-bool Sema::ActOnCoroutineBodyStart(Scope *SC, SourceLocation KWLoc,
-   StringRef Keyword) {
+bool SemaCoroutine::ActOnCoroutineBodyStart(Scope *SC, SourceLocation KWLoc,
+StringRef Keyword) {
   // Ignore previous expr evaluation contexts.
   EnterExpressionEvaluationContext PotentiallyEvaluated(
-  *this, Sema::ExpressionEvaluationContext::PotentiallyEvaluated);
-  if (!checkCoroutin...
[truncated]

``




https://github.com/llvm/llvm-project/pull/92645
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang] Introduce `SemaCoroutine` (PR #92645)

2024-05-18 Thread Vlad Serebrennikov via cfe-commits

https://github.com/Endilll created 
https://github.com/llvm/llvm-project/pull/92645

This patch moves coroutines-specific `Sema` functions into the new 
`SemaCoroutine` class. This continues previous efforts to split `Sema` up. 
Additional context can be found in #84184.
As usual, in order to help reviewing this, formatting changes are split into a 
separate commit.

>From 4fe09a3411e54561857d2f9d8c1808cb2728e299 Mon Sep 17 00:00:00 2001
From: Vlad Serebrennikov 
Date: Sat, 18 May 2024 13:33:04 +0300
Subject: [PATCH 1/2] [clang] Introduce `SemaCoroutine`

---
 clang/include/clang/Sema/Sema.h  |  58 +-
 clang/include/clang/Sema/SemaCoroutine.h |  73 
 clang/lib/Parse/ParseExpr.cpp|   3 +-
 clang/lib/Parse/ParseExprCXX.cpp |   3 +-
 clang/lib/Parse/ParseStmt.cpp|   3 +-
 clang/lib/Sema/Sema.cpp  |   4 +-
 clang/lib/Sema/SemaCoroutine.cpp | 218 ---
 clang/lib/Sema/SemaDecl.cpp  |  16 +-
 clang/lib/Sema/SemaStmt.cpp  |   9 +-
 clang/lib/Sema/TreeTransform.h   |  25 +--
 10 files changed, 227 insertions(+), 185 deletions(-)
 create mode 100644 clang/include/clang/Sema/SemaCoroutine.h

diff --git a/clang/include/clang/Sema/Sema.h b/clang/include/clang/Sema/Sema.h
index d4d4a82525a02..1d0fbeacfe061 100644
--- a/clang/include/clang/Sema/Sema.h
+++ b/clang/include/clang/Sema/Sema.h
@@ -168,6 +168,7 @@ class PseudoDestructorTypeStorage;
 class PseudoObjectExpr;
 class QualType;
 class SemaCodeCompletion;
+class SemaCoroutine;
 class SemaCUDA;
 class SemaHLSL;
 class SemaObjC;
@@ -989,6 +990,11 @@ class Sema final : public SemaBase {
 return *CodeCompletionPtr;
   }
 
+  SemaCoroutine () {
+assert(CoroutinePtr);
+return *CoroutinePtr;
+  }
+
   SemaCUDA () {
 assert(CUDAPtr);
 return *CUDAPtr;
@@ -1050,6 +1056,7 @@ class Sema final : public SemaBase {
   mutable IdentifierInfo *Ident_super;
 
   std::unique_ptr CodeCompletionPtr;
+  std::unique_ptr CoroutinePtr;
   std::unique_ptr CUDAPtr;
   std::unique_ptr HLSLPtr;
   std::unique_ptr ObjCPtr;
@@ -2267,57 +2274,6 @@ class Sema final : public SemaBase {
   //
   //
 
-  /// \name C++ Coroutines
-  /// Implementations are in SemaCoroutine.cpp
-  ///@{
-
-public:
-  /// The C++ "std::coroutine_traits" template, which is defined in
-  /// \
-  ClassTemplateDecl *StdCoroutineTraitsCache;
-
-  bool ActOnCoroutineBodyStart(Scope *S, SourceLocation KwLoc,
-   StringRef Keyword);
-  ExprResult ActOnCoawaitExpr(Scope *S, SourceLocation KwLoc, Expr *E);
-  ExprResult ActOnCoyieldExpr(Scope *S, SourceLocation KwLoc, Expr *E);
-  StmtResult ActOnCoreturnStmt(Scope *S, SourceLocation KwLoc, Expr *E);
-
-  ExprResult BuildOperatorCoawaitLookupExpr(Scope *S, SourceLocation Loc);
-  ExprResult BuildOperatorCoawaitCall(SourceLocation Loc, Expr *E,
-  UnresolvedLookupExpr *Lookup);
-  ExprResult BuildResolvedCoawaitExpr(SourceLocation KwLoc, Expr *Operand,
-  Expr *Awaiter, bool IsImplicit = false);
-  ExprResult BuildUnresolvedCoawaitExpr(SourceLocation KwLoc, Expr *Operand,
-UnresolvedLookupExpr *Lookup);
-  ExprResult BuildCoyieldExpr(SourceLocation KwLoc, Expr *E);
-  StmtResult BuildCoreturnStmt(SourceLocation KwLoc, Expr *E,
-   bool IsImplicit = false);
-  StmtResult BuildCoroutineBodyStmt(CoroutineBodyStmt::CtorArgs);
-  bool buildCoroutineParameterMoves(SourceLocation Loc);
-  VarDecl *buildCoroutinePromise(SourceLocation Loc);
-  void CheckCompletedCoroutineBody(FunctionDecl *FD, Stmt *);
-
-  // As a clang extension, enforces that a non-coroutine function must be 
marked
-  // with [[clang::coro_wrapper]] if it returns a type marked with
-  // [[clang::coro_return_type]].
-  // Expects that FD is not a coroutine.
-  void CheckCoroutineWrapper(FunctionDecl *FD);
-  /// Lookup 'coroutine_traits' in std namespace and std::experimental
-  /// namespace. The namespace found is recorded in Namespace.
-  ClassTemplateDecl *lookupCoroutineTraits(SourceLocation KwLoc,
-   SourceLocation FuncLoc);
-  /// Check that the expression co_await promise.final_suspend() shall not be
-  /// potentially-throwing.
-  bool checkFinalSuspendNoThrow(const Stmt *FinalSuspend);
-
-  ///@}
-
-  //
-  //
-  // -
-  //
-  //
-
   /// \name C++ Scope Specifiers
   /// Implementations are in SemaCXXScopeSpec.cpp
   ///@{
diff --git a/clang/include/clang/Sema/SemaCoroutine.h 
b/clang/include/clang/Sema/SemaCoroutine.h
new file mode 100644
index 0..20f1fffc970f8
--- /dev/null
+++ b/clang/include/clang/Sema/SemaCoroutine.h
@@ -0,0 +1,73 @@
+//===- SemaCUDA.h - Semantic Analysis for C++20 coroutines 
===//
+//
+// Part of the LLVM Project, under the Apache 

[clang] [RISCV] Remove unneeded multiply in RISCV CodeGenTypes (PR #92644)

2024-05-18 Thread via cfe-commits

llvmbot wrote:




@llvm/pr-subscribers-clang

Author: Brandon Wu (4vtomat)


Changes

The NumVectors other than 1 is handled by the code above.


---
Full diff: https://github.com/llvm/llvm-project/pull/92644.diff


1 Files Affected:

- (modified) clang/lib/CodeGen/CodeGenTypes.cpp (+1-2) 


``diff
diff --git a/clang/lib/CodeGen/CodeGenTypes.cpp 
b/clang/lib/CodeGen/CodeGenTypes.cpp
index e8d75eda029e6..0a926e4ac27fe 100644
--- a/clang/lib/CodeGen/CodeGenTypes.cpp
+++ b/clang/lib/CodeGen/CodeGenTypes.cpp
@@ -523,8 +523,7 @@ llvm::Type *CodeGenTypes::ConvertType(QualType T) {
   return llvm::StructType::get(getLLVMContext(), EltTys);
 }
 return llvm::ScalableVectorType::get(ConvertType(Info.ElementType),
- Info.EC.getKnownMinValue() *
- Info.NumVectors);
+ Info.EC.getKnownMinValue());
   }
 #define WASM_REF_TYPE(Name, MangledName, Id, SingletonId, AS)  
\
   case BuiltinType::Id: {  
\

``




https://github.com/llvm/llvm-project/pull/92644
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [RISCV] Remove unneeded multiply in RISCV CodeGenTypes (PR #92644)

2024-05-18 Thread via cfe-commits

llvmbot wrote:




@llvm/pr-subscribers-clang-codegen

Author: Brandon Wu (4vtomat)


Changes

The NumVectors other than 1 is handled by the code above.


---
Full diff: https://github.com/llvm/llvm-project/pull/92644.diff


1 Files Affected:

- (modified) clang/lib/CodeGen/CodeGenTypes.cpp (+1-2) 


``diff
diff --git a/clang/lib/CodeGen/CodeGenTypes.cpp 
b/clang/lib/CodeGen/CodeGenTypes.cpp
index e8d75eda029e6..0a926e4ac27fe 100644
--- a/clang/lib/CodeGen/CodeGenTypes.cpp
+++ b/clang/lib/CodeGen/CodeGenTypes.cpp
@@ -523,8 +523,7 @@ llvm::Type *CodeGenTypes::ConvertType(QualType T) {
   return llvm::StructType::get(getLLVMContext(), EltTys);
 }
 return llvm::ScalableVectorType::get(ConvertType(Info.ElementType),
- Info.EC.getKnownMinValue() *
- Info.NumVectors);
+ Info.EC.getKnownMinValue());
   }
 #define WASM_REF_TYPE(Name, MangledName, Id, SingletonId, AS)  
\
   case BuiltinType::Id: {  
\

``




https://github.com/llvm/llvm-project/pull/92644
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [RISCV] Remove unneeded multiply in RISCV CodeGenTypes (PR #92644)

2024-05-18 Thread Brandon Wu via cfe-commits

https://github.com/4vtomat created 
https://github.com/llvm/llvm-project/pull/92644

The NumVectors other than 1 is handled by the code above.


>From 4dbcf6e577d5f1aea0cde72e3a5a7fd73620b2d9 Mon Sep 17 00:00:00 2001
From: Brandon Wu 
Date: Sat, 18 May 2024 03:07:43 -0700
Subject: [PATCH] [RISCV] Remove unneeded multiply in RISCV CodeGenTypes

The NumVectors other than 1 is handled by the code above.
---
 clang/lib/CodeGen/CodeGenTypes.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/clang/lib/CodeGen/CodeGenTypes.cpp 
b/clang/lib/CodeGen/CodeGenTypes.cpp
index e8d75eda029e6..0a926e4ac27fe 100644
--- a/clang/lib/CodeGen/CodeGenTypes.cpp
+++ b/clang/lib/CodeGen/CodeGenTypes.cpp
@@ -523,8 +523,7 @@ llvm::Type *CodeGenTypes::ConvertType(QualType T) {
   return llvm::StructType::get(getLLVMContext(), EltTys);
 }
 return llvm::ScalableVectorType::get(ConvertType(Info.ElementType),
- Info.EC.getKnownMinValue() *
- Info.NumVectors);
+ Info.EC.getKnownMinValue());
   }
 #define WASM_REF_TYPE(Name, MangledName, Id, SingletonId, AS)  
\
   case BuiltinType::Id: {  
\

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkins-infra/jenkins-infra] 54481d: chore: Bump container agent image jenkinsciinfra/b...

2024-05-18 Thread 'jenkins-infra-bot' via Jenkins Commits
  Branch: 
refs/heads/updatecli_production_f10b18e55b9d879c3dc9d397305f5bd93d89cf9ecbc457d2fadf491e9076d68d
  Home:   https://github.com/jenkins-infra/jenkins-infra
  Commit: 54481d7fbfb755dffab1c13c08a33bff890cb1ef
  
https://github.com/jenkins-infra/jenkins-infra/commit/54481d7fbfb755dffab1c13c08a33bff890cb1ef
  Author: Jenkins Infra Bot (updatecli) 
<60776566+jenkins-infra-...@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M hieradata/common.yaml

  Log Message:
  ---
  chore: Bump container agent image jenkinsciinfra/builder

Made with ❤️️ by updatecli



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

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkins-infra/jenkins-infra/push/refs/heads/updatecli_production_f10b18e55b9d879c3dc9d397305f5bd93d89cf9ecbc457d2fadf491e9076d68d/f607c0-54481d%40github.com.


[Qemu-commits] [qemu/qemu] 4d8698: tests/lcitool/refresh: Treat the output of lcitool...

2024-05-18 Thread Richard Henderson via Qemu-commits
  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 4d8698e692cca96bbf20505a90e42d10141d2b94
  
https://github.com/qemu/qemu/commit/4d8698e692cca96bbf20505a90e42d10141d2b94
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/refresh

  Log Message:
  ---
  tests/lcitool/refresh: Treat the output of lcitool as text, not as bytes

In case lcitool fails (e.g. with a python backtrace), this makes
the output  of lcitool much more readable.

Suggested-by: Daniel P. Berrangé 
Message-ID: <20240516084059.511463-2-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: 9ebe09e633773bebd2dc52b151fb48c1b9b0542a
  
https://github.com/qemu/qemu/commit/9ebe09e633773bebd2dc52b151fb48c1b9b0542a
  Author: Philippe Mathieu-Daudé 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/projects/qemu.yml

  Log Message:
  ---
  tests/lcitool: Remove 'xfsprogs' from QEMU

QEMU's commit a5730b8bd3 ("block/file-posix: Simplify the
XFS_IOC_DIOINFO handling") removed the need for the 'xfsprogs'
package.

Signed-off-by: Philippe Mathieu-Daudé 
[thuth: Adjusted the patch from the lcitools repo to QEMU's repo]
Message-ID: <20240516084059.511463-3-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: fd77b25bbde962395b93335ade09b6d3127a6537
  
https://github.com/qemu/qemu/commit/fd77b25bbde962395b93335ade09b6d3127a6537
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/projects/qemu-minimal.yml
A tests/lcitool/projects/qemu-win-installer.yml
M tests/lcitool/projects/qemu.yml
M tests/lcitool/refresh

  Log Message:
  ---
  tests/lcitool: Remove g++ from the containers (except for the MinGW one)

We don't need C++ for the normal QEMU builds anymore, so installing
g++ in each and every container seems to be a waste of time and disk
space. The only container that still needs it is the Fedora MinGW
container that builds the only remaining C++ code in ./qga/vss-win32/
and we can install it there with an extra project yml file instead.

Message-ID: <20240516084059.511463-4-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: d2f213cc069d3013b3204993d957a6eff59c220c
  
https://github.com/qemu/qemu/commit/d2f213cc069d3013b3204993d957a6eff59c220c
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/lcitool/projects/qemu.yml

  Log Message:
  ---
  tests/lcitool/projects/qemu.yml: Sort entries alphabetically again

Let's try to keep the entries in alphabetical order here!

Message-ID: <20240516084059.511463-5-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: e4b6adae7aa7ab440e4dd98de3c1c532f48eda60
  
https://github.com/qemu/qemu/commit/e4b6adae7aa7ab440e4dd98de3c1c532f48eda60
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M tests/docker/dockerfiles/alpine.docker
M tests/docker/dockerfiles/centos9.docker
M tests/docker/dockerfiles/debian-amd64-cross.docker
M tests/docker/dockerfiles/debian-arm64-cross.docker
M tests/docker/dockerfiles/debian-armel-cross.docker
M tests/docker/dockerfiles/debian-armhf-cross.docker
M tests/docker/dockerfiles/debian-i686-cross.docker
M tests/docker/dockerfiles/debian-mips64el-cross.docker
M tests/docker/dockerfiles/debian-mipsel-cross.docker
M tests/docker/dockerfiles/debian-ppc64el-cross.docker
M tests/docker/dockerfiles/debian-riscv64-cross.docker
M tests/docker/dockerfiles/debian-s390x-cross.docker
M tests/docker/dockerfiles/debian.docker
M tests/docker/dockerfiles/fedora-win64-cross.docker
M tests/docker/dockerfiles/fedora.docker
M tests/docker/dockerfiles/opensuse-leap.docker
M tests/docker/dockerfiles/ubuntu2204.docker

  Log Message:
  ---
  tests/docker/dockerfiles: Update container files with "lcitool-refresh"

Run "make lcitool-refresh" after the previous changes to the
lcitool files. This removes the g++ and xfslibs-dev packages
from the dockerfiles (except for the fedora-win64-cross dockerfile
where we keep the C++ compiler).

Message-ID: <20240516084059.511463-6-th...@redhat.com>
Reviewed-by: Daniel P. Berrangé 
Signed-off-by: Thomas Huth 


  Commit: bebe9603fcb072dcdb7fb22005781b3582a4d701
  
https://github.com/qemu/qemu/commit/bebe9603fcb072dcdb7fb22005781b3582a4d701
  Author: Thomas Huth 
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
M hw/intc/s390_flic.c

  Log Message:
  ---
  hw/intc/s390_flic: Fix crash that occurs when saving the machine state

adapter_info_so_needed() treats its "opaque" parameter as a S390FLICState,
but the function belongs to a VMStateDescription that is attached to a
TYPE_VIRTIO_CCW_BUS device. This is currently causing a crash when the
user 

[clang] [llvm] [AMDGPU][WIP] Extend readlane, writelane and readfirstlane intrinsic lowering for generic types (PR #89217)

2024-05-18 Thread Vikram Hegde via cfe-commits

https://github.com/vikramRH edited 
https://github.com/llvm/llvm-project/pull/89217
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [alpha.webkit.UncountedLocalVarsChecker] Detect assignments to uncounted local variable and parameters. (PR #92639)

2024-05-18 Thread via cfe-commits
le 'b' is uncounted and unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+  if (b->trivial())
+b = provide_ref_ctnbl();
+}
+
+void bar(RefCountable* a) {
+  RefCountable* b;
+  // expected-warning@-1{{Local variable 'b' is uncounted and unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+  b = provide_ref_ctnbl();
+}
+
+void baz() {
+  RefPtr a = provide_ref_ctnbl();
+  {
+RefCountable* b = a.get();
+// expected-warning@-1{{Local variable 'b' is uncounted and unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+b = provide_ref_ctnbl();
+  }
+}
+
+} // namespace local_assignment_basic
+
+namespace local_assignment_to_parameter {
+
+RefCountable *provide_ref_ctnbl();
+void someFunction();
+
+void foo(RefCountable* a) {
+  a = provide_ref_ctnbl();
+  // expected-warning@-1{{Assignment to an uncounted parameter 'a' is unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+  someFunction();
+  a->method();
+}
+
+} // namespace local_assignment_to_parameter

``




https://github.com/llvm/llvm-project/pull/92639
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [alpha.webkit.UncountedLocalVarsChecker] Detect assignments to uncounted local variable and parameters. (PR #92639)

2024-05-18 Thread Ryosuke Niwa via cfe-commits
uncounted-local-vars.cpp
+++ b/clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
@@ -216,3 +216,45 @@ void foo() {
 }
 
 } // namespace conditional_op
+
+namespace local_assignment_basic {
+
+RefCountable *provide_ref_ctnbl();
+
+void foo(RefCountable* a) {
+  RefCountable* b = a;
+  // expected-warning@-1{{Local variable 'b' is uncounted and unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+  if (b->trivial())
+b = provide_ref_ctnbl();
+}
+
+void bar(RefCountable* a) {
+  RefCountable* b;
+  // expected-warning@-1{{Local variable 'b' is uncounted and unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+  b = provide_ref_ctnbl();
+}
+
+void baz() {
+  RefPtr a = provide_ref_ctnbl();
+  {
+RefCountable* b = a.get();
+// expected-warning@-1{{Local variable 'b' is uncounted and unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+b = provide_ref_ctnbl();
+  }
+}
+
+} // namespace local_assignment_basic
+
+namespace local_assignment_to_parameter {
+
+RefCountable *provide_ref_ctnbl();
+void someFunction();
+
+void foo(RefCountable* a) {
+  a = provide_ref_ctnbl();
+  // expected-warning@-1{{Assignment to an uncounted parameter 'a' is unsafe 
[alpha.webkit.UncountedLocalVarsChecker]}}
+  someFunction();
+  a->method();
+}
+
+} // namespace local_assignment_to_parameter

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [AMDGPU][WIP] Extend readlane, writelane and readfirstlane intrinsic lowering for generic types (PR #89217)

2024-05-18 Thread Vikram Hegde via cfe-commits

https://github.com/vikramRH edited 
https://github.com/llvm/llvm-project/pull/89217
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] f7b0b99 - [clang][NFC] Further improvements to const-correctness

2024-05-18 Thread Vlad Serebrennikov via cfe-commits
ddStmt(const_cast(
-cast(Update.getDecl())->getDefaultArg()));
+Record.writeStmtRef(
+cast(Update.getDecl())->getDefaultArg());
 break;
 
   case UPD_CXX_INSTANTIATED_DEFAULT_MEMBER_INITIALIZER:
@@ -5713,8 +5713,7 @@ void ASTWriter::WriteDeclUpdatesBlocks(RecordDataImpl 
) {
 Record.push_back(RD->isParamDestroyedInCallee());
 Record.push_back(llvm::to_underlying(RD->getArgPassingRestrictions()));
 Record.AddCXXDefinitionData(RD);
-Record.AddOffset(WriteDeclContextLexicalBlock(
-*Context, const_cast(RD)));
+Record.AddOffset(WriteDeclContextLexicalBlock(*Context, RD));
 
 // This state is sometimes updated by template instantiation, when we
 // switch from the specialization referring to the template declaration
@@ -6357,7 +6356,7 @@ void ASTRecordWriter::AddTemplateParameterList(
 AddDeclRef(P);
   if (const Expr *RequiresClause = TemplateParams->getRequiresClause()) {
 Record->push_back(true);
-AddStmt(const_cast(RequiresClause));
+writeStmtRef(RequiresClause);
   } else {
 Record->push_back(false);
   }
@@ -7814,7 +7813,7 @@ void ASTRecordWriter::writeOpenACCClause(const 
OpenACCClause *C) {
   case OpenACCClauseKind::If: {
 const auto *IC = cast(C);
 writeSourceLocation(IC->getLParenLoc());
-AddStmt(const_cast(IC->getConditionExpr()));
+writeStmtRef(IC->getConditionExpr());
 return;
   }
   case OpenACCClauseKind::Self: {
@@ -7822,7 +7821,7 @@ void ASTRecordWriter::writeOpenACCClause(const 
OpenACCClause *C) {
 writeSourceLocation(SC->getLParenLoc());
 writeBool(SC->hasConditionExpr());
 if (SC->hasConditionExpr())
-  AddStmt(const_cast(SC->getConditionExpr()));
+  writeStmtRef(SC->getConditionExpr());
 return;
   }
   case OpenACCClauseKind::NumGangs: {
@@ -7836,13 +7835,13 @@ void ASTRecordWriter::writeOpenACCClause(const 
OpenACCClause *C) {
   case OpenACCClauseKind::NumWorkers: {
 const auto *NWC = cast(C);
 writeSourceLocation(NWC->getLParenLoc());
-AddStmt(const_cast(NWC->getIntExpr()));
+writeStmtRef(NWC->getIntExpr());
 return;
   }
   case OpenACCClauseKind::VectorLength: {
 const auto *NWC = cast(C);
 writeSourceLocation(NWC->getLParenLoc());
-AddStmt(const_cast(NWC->getIntExpr()));
+writeStmtRef(NWC->getIntExpr());
 return;
   }
   case OpenACCClauseKind::Private: {
@@ -7921,7 +7920,7 @@ void ASTRecordWriter::writeOpenACCClause(const 
OpenACCClause *C) {
 writeSourceLocation(AC->getLParenLoc());
 writeBool(AC->hasIntExpr());
 if (AC->hasIntExpr())
-  AddStmt(const_cast(AC->getIntExpr()));
+  writeStmtRef(AC->getIntExpr());
 return;
   }
   case OpenACCClauseKind::Wait: {
@@ -7929,7 +7928,7 @@ void ASTRecordWriter::writeOpenACCClause(const 
OpenACCClause *C) {
 writeSourceLocation(WC->getLParenLoc());
 writeBool(WC->getDevNumExpr());
 if (const Expr *DNE = WC->getDevNumExpr())
-  AddStmt(const_cast(DNE));
+  writeStmtRef(DNE);
 writeSourceLocation(WC->getQueuesLoc());
 
 writeOpenACCIntExprList(WC->getQueueIdExprs());

diff  --git a/clang/lib/Serialization/ASTWriterStmt.cpp 
b/clang/lib/Serialization/ASTWriterStmt.cpp
index 39aec31b6d879..6f7c368ce9ca4 100644
--- a/clang/lib/Serialization/ASTWriterStmt.cpp
+++ b/clang/lib/Serialization/ASTWriterStmt.cpp
@@ -473,7 +473,7 @@ addConstraintSatisfaction(ASTRecordWriter ,
   if (!Satisfaction.IsSatisfied) {
 Record.push_back(Satisfaction.NumRecords);
 for (const auto  : Satisfaction) {
-  Record.AddStmt(const_cast(DetailRecord.first));
+  Record.writeStmtRef(DetailRecord.first);
   auto *E = DetailRecord.second.dyn_cast();
   Record.push_back(E == nullptr);
   if (E)



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [AMDGPU][WIP] Extend readlane, writelane and readfirstlane intrinsic lowering for generic types (PR #89217)

2024-05-18 Thread Vikram Hegde via cfe-commits


@@ -243,11 +243,16 @@ def VOP_READFIRSTLANE : VOPProfile <[i32, i32, untyped, 
untyped]> {
 // FIXME: Specify SchedRW for READFIRSTLANE_B32
 // TODO: There is VOP3 encoding also
 def V_READFIRSTLANE_B32 : VOP1_Pseudo <"v_readfirstlane_b32", 
VOP_READFIRSTLANE,
-   getVOP1Pat.ret, 1> {
+   [], 1> {
   let isConvergent = 1;
 }
 
+foreach vt = Reg32Types.types in {
+  def : GCNPat<(vt (AMDGPUreadfirstlane (vt VRegOrLdsSrc_32:$src0))),
+(V_READFIRSTLANE_B32 (vt VRegOrLdsSrc_32:$src0))

vikramRH wrote:

Done

https://github.com/llvm/llvm-project/pull/89217
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/next-executions-plugin] 498b05: Bump org.jenkins-ci.plugins:plugin from 4.81 to 4.82

2024-05-18 Thread 'Valentin Delaye' via Jenkins Commits
  Branch: refs/heads/main
  Home:   https://github.com/jenkinsci/next-executions-plugin
  Commit: 498b05b0d8ac7ccd781eb8c7b1161b480b3ec38e
  
https://github.com/jenkinsci/next-executions-plugin/commit/498b05b0d8ac7ccd781eb8c7b1161b480b3ec38e
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump org.jenkins-ci.plugins:plugin from 4.81 to 4.82

Bumps [org.jenkins-ci.plugins:plugin](https://github.com/jenkinsci/plugin-pom) 
from 4.81 to 4.82.
- [Release notes](https://github.com/jenkinsci/plugin-pom/releases)
- [Changelog](https://github.com/jenkinsci/plugin-pom/blob/master/CHANGELOG.md)
- 
[Commits](https://github.com/jenkinsci/plugin-pom/compare/plugin-4.81...plugin-4.82)

---
updated-dependencies:
- dependency-name: org.jenkins-ci.plugins:plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] 


  Commit: 9af1855d71eb7125dba0efe2bbc83286beae586a
  
https://github.com/jenkinsci/next-executions-plugin/commit/9af1855d71eb7125dba0efe2bbc83286beae586a
  Author: Valentin Delaye 
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Merge pull request #120 from 
jenkinsci/dependabot/maven/org.jenkins-ci.plugins-plugin-4.82

Bump org.jenkins-ci.plugins:plugin from 4.81 to 4.82


Compare: 
https://github.com/jenkinsci/next-executions-plugin/compare/235e828910fe...9af1855d71eb

To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/next-executions-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/next-executions-plugin/push/refs/heads/main/235e82-9af185%40github.com.


[jenkinsci/next-executions-plugin] 0697d7: Bump io.jenkins.tools.bom:bom-2.440.x

2024-05-18 Thread 'Valentin Delaye' via Jenkins Commits
  Branch: refs/heads/main
  Home:   https://github.com/jenkinsci/next-executions-plugin
  Commit: 0697d7227d3db313840efe5dbaa7f6b8ea1e999e
  
https://github.com/jenkinsci/next-executions-plugin/commit/0697d7227d3db313840efe5dbaa7f6b8ea1e999e
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump io.jenkins.tools.bom:bom-2.440.x

Bumps [io.jenkins.tools.bom:bom-2.440.x](https://github.com/jenkinsci/bom) from 
3010.vec758b_8e7da_3 to 3056.v53343b_a_b_a_850.
- [Release notes](https://github.com/jenkinsci/bom/releases)
- [Commits](https://github.com/jenkinsci/bom/commits)

---
updated-dependencies:
- dependency-name: io.jenkins.tools.bom:bom-2.440.x
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] 


  Commit: 235e828910fe184cd530d108a6522001db8a6500
  
https://github.com/jenkinsci/next-executions-plugin/commit/235e828910fe184cd530d108a6522001db8a6500
  Author: Valentin Delaye 
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Merge pull request #119 from 
jenkinsci/dependabot/maven/io.jenkins.tools.bom-bom-2.440.x-3056.v53343b_a_b_a_850

Bump io.jenkins.tools.bom:bom-2.440.x from 3010.vec758b_8e7da_3 to 
3056.v53343b_a_b_a_850


Compare: 
https://github.com/jenkinsci/next-executions-plugin/compare/055593f84a13...235e828910fe

To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/next-executions-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/next-executions-plugin/push/refs/heads/main/055593-235e82%40github.com.


[clang] [Clang] Fix __is_array returning true for zero-sized arrays (PR #86652)

2024-05-18 Thread Nikolas Klauser via cfe-commits

https://github.com/philnik777 updated 
https://github.com/llvm/llvm-project/pull/86652

>From 90f88bdac3dc40635c58f3f67e29354e6a32896e Mon Sep 17 00:00:00 2001
From: Nikolas Klauser 
Date: Tue, 26 Mar 2024 12:23:24 +0100
Subject: [PATCH] [Clang] Fix __is_array returning true for zero-sized arrays

---
 clang/docs/ReleaseNotes.rst| 2 ++
 clang/lib/Sema/SemaExprCXX.cpp | 4 
 clang/test/SemaCXX/type-traits.cpp | 4 +++-
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 7fbe2fec6ca06..e668202853710 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -345,6 +345,8 @@ Bug Fixes in This Version
 - Fixes an assertion failure on invalid code when trying to define member
   functions in lambdas.
 
+- ``__is_array`` no longer returns ``true`` for zero-sized arrays. Fixes 
(#GH54705).
+
 Bug Fixes to Compiler Builtins
 ^^
 
diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp
index c34a40fa7c81a..93d2b4b259fbc 100644
--- a/clang/lib/Sema/SemaExprCXX.cpp
+++ b/clang/lib/Sema/SemaExprCXX.cpp
@@ -5143,6 +5143,10 @@ static bool EvaluateUnaryTypeTrait(Sema , TypeTrait 
UTT,
   case UTT_IsFloatingPoint:
 return T->isFloatingType();
   case UTT_IsArray:
+// zero-sized arrays aren't considered arrays in partial specializations,
+// so __is_array shouldn't consider them arrays either.
+if (const auto* CAT = C.getAsConstantArrayType(T))
+  return CAT->getSize() != 0;
 return T->isArrayType();
   case UTT_IsBoundedArray:
 if (!T->isVariableArrayType()) {
diff --git a/clang/test/SemaCXX/type-traits.cpp 
b/clang/test/SemaCXX/type-traits.cpp
index 14ec17989ec7c..49df4b668513c 100644
--- a/clang/test/SemaCXX/type-traits.cpp
+++ b/clang/test/SemaCXX/type-traits.cpp
@@ -25,6 +25,7 @@ typedef Empty EmptyArMB[1][2];
 typedef int Int;
 typedef Int IntAr[10];
 typedef Int IntArNB[];
+typedef Int IntArZero[0];
 class Statics { static int priv; static NonPOD np; };
 union EmptyUnion {};
 union IncompleteUnion; // expected-note {{forward declaration of 
'IncompleteUnion'}}
@@ -685,6 +686,7 @@ void is_array()
 {
   static_assert(__is_array(IntAr));
   static_assert(__is_array(IntArNB));
+  static_assert(!__is_array(IntArZero));
   static_assert(__is_array(UnionAr));
 
   static_assert(!__is_array(void));
@@ -1804,7 +1806,7 @@ void is_layout_compatible(int n)
   static_assert(!__is_layout_compatible(EnumForward, int));
   static_assert(!__is_layout_compatible(EnumClassForward, int));
   // FIXME: the following should be rejected (array of unknown bound and void 
are the only allowed incomplete types)
-  static_assert(__is_layout_compatible(CStructIncomplete, CStructIncomplete)); 
+  static_assert(__is_layout_compatible(CStructIncomplete, CStructIncomplete));
   static_assert(!__is_layout_compatible(CStruct, CStructIncomplete));
   static_assert(__is_layout_compatible(CStructIncomplete[2], 
CStructIncomplete[2]));
 }

_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Clang] Fix __is_array returning true for zero-sized arrays (PR #86652)

2024-05-18 Thread Nikolas Klauser via cfe-commits

https://github.com/philnik777 updated 
https://github.com/llvm/llvm-project/pull/86652

>From 90f88bdac3dc40635c58f3f67e29354e6a32896e Mon Sep 17 00:00:00 2001
From: Nikolas Klauser 
Date: Tue, 26 Mar 2024 12:23:24 +0100
Subject: [PATCH] [Clang] Fix __is_array returning true for zero-sized arrays

---
 clang/docs/ReleaseNotes.rst| 2 ++
 clang/lib/Sema/SemaExprCXX.cpp | 4 
 clang/test/SemaCXX/type-traits.cpp | 4 +++-
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 7fbe2fec6ca06..e668202853710 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -345,6 +345,8 @@ Bug Fixes in This Version
 - Fixes an assertion failure on invalid code when trying to define member
   functions in lambdas.
 
+- ``__is_array`` no longer returns ``true`` for zero-sized arrays. Fixes 
(#GH54705).
+
 Bug Fixes to Compiler Builtins
 ^^
 
diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp
index c34a40fa7c81a..93d2b4b259fbc 100644
--- a/clang/lib/Sema/SemaExprCXX.cpp
+++ b/clang/lib/Sema/SemaExprCXX.cpp
@@ -5143,6 +5143,10 @@ static bool EvaluateUnaryTypeTrait(Sema , TypeTrait 
UTT,
   case UTT_IsFloatingPoint:
 return T->isFloatingType();
   case UTT_IsArray:
+// zero-sized arrays aren't considered arrays in partial specializations,
+// so __is_array shouldn't consider them arrays either.
+if (const auto* CAT = C.getAsConstantArrayType(T))
+  return CAT->getSize() != 0;
 return T->isArrayType();
   case UTT_IsBoundedArray:
 if (!T->isVariableArrayType()) {
diff --git a/clang/test/SemaCXX/type-traits.cpp 
b/clang/test/SemaCXX/type-traits.cpp
index 14ec17989ec7c..49df4b668513c 100644
--- a/clang/test/SemaCXX/type-traits.cpp
+++ b/clang/test/SemaCXX/type-traits.cpp
@@ -25,6 +25,7 @@ typedef Empty EmptyArMB[1][2];
 typedef int Int;
 typedef Int IntAr[10];
 typedef Int IntArNB[];
+typedef Int IntArZero[0];
 class Statics { static int priv; static NonPOD np; };
 union EmptyUnion {};
 union IncompleteUnion; // expected-note {{forward declaration of 
'IncompleteUnion'}}
@@ -685,6 +686,7 @@ void is_array()
 {
   static_assert(__is_array(IntAr));
   static_assert(__is_array(IntArNB));
+  static_assert(!__is_array(IntArZero));
   static_assert(__is_array(UnionAr));
 
   static_assert(!__is_array(void));
@@ -1804,7 +1806,7 @@ void is_layout_compatible(int n)
   static_assert(!__is_layout_compatible(EnumForward, int));
   static_assert(!__is_layout_compatible(EnumClassForward, int));
   // FIXME: the following should be rejected (array of unknown bound and void 
are the only allowed incomplete types)
-  static_assert(__is_layout_compatible(CStructIncomplete, CStructIncomplete)); 
+  static_assert(__is_layout_compatible(CStructIncomplete, CStructIncomplete));
   static_assert(!__is_layout_compatible(CStruct, CStructIncomplete));
   static_assert(__is_layout_compatible(CStructIncomplete[2], 
CStructIncomplete[2]));
 }

_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Clang] Fix __is_array returning true for zero-sized arrays (PR #86652)

2024-05-18 Thread Nikolas Klauser via cfe-commits

https://github.com/philnik777 updated 
https://github.com/llvm/llvm-project/pull/86652

>From 90f88bdac3dc40635c58f3f67e29354e6a32896e Mon Sep 17 00:00:00 2001
From: Nikolas Klauser 
Date: Tue, 26 Mar 2024 12:23:24 +0100
Subject: [PATCH] [Clang] Fix __is_array returning true for zero-sized arrays

---
 clang/docs/ReleaseNotes.rst| 2 ++
 clang/lib/Sema/SemaExprCXX.cpp | 4 
 clang/test/SemaCXX/type-traits.cpp | 4 +++-
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 7fbe2fec6ca06..e668202853710 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -345,6 +345,8 @@ Bug Fixes in This Version
 - Fixes an assertion failure on invalid code when trying to define member
   functions in lambdas.
 
+- ``__is_array`` no longer returns ``true`` for zero-sized arrays. Fixes 
(#GH54705).
+
 Bug Fixes to Compiler Builtins
 ^^
 
diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp
index c34a40fa7c81a..93d2b4b259fbc 100644
--- a/clang/lib/Sema/SemaExprCXX.cpp
+++ b/clang/lib/Sema/SemaExprCXX.cpp
@@ -5143,6 +5143,10 @@ static bool EvaluateUnaryTypeTrait(Sema , TypeTrait 
UTT,
   case UTT_IsFloatingPoint:
 return T->isFloatingType();
   case UTT_IsArray:
+// zero-sized arrays aren't considered arrays in partial specializations,
+// so __is_array shouldn't consider them arrays either.
+if (const auto* CAT = C.getAsConstantArrayType(T))
+  return CAT->getSize() != 0;
 return T->isArrayType();
   case UTT_IsBoundedArray:
 if (!T->isVariableArrayType()) {
diff --git a/clang/test/SemaCXX/type-traits.cpp 
b/clang/test/SemaCXX/type-traits.cpp
index 14ec17989ec7c..49df4b668513c 100644
--- a/clang/test/SemaCXX/type-traits.cpp
+++ b/clang/test/SemaCXX/type-traits.cpp
@@ -25,6 +25,7 @@ typedef Empty EmptyArMB[1][2];
 typedef int Int;
 typedef Int IntAr[10];
 typedef Int IntArNB[];
+typedef Int IntArZero[0];
 class Statics { static int priv; static NonPOD np; };
 union EmptyUnion {};
 union IncompleteUnion; // expected-note {{forward declaration of 
'IncompleteUnion'}}
@@ -685,6 +686,7 @@ void is_array()
 {
   static_assert(__is_array(IntAr));
   static_assert(__is_array(IntArNB));
+  static_assert(!__is_array(IntArZero));
   static_assert(__is_array(UnionAr));
 
   static_assert(!__is_array(void));
@@ -1804,7 +1806,7 @@ void is_layout_compatible(int n)
   static_assert(!__is_layout_compatible(EnumForward, int));
   static_assert(!__is_layout_compatible(EnumClassForward, int));
   // FIXME: the following should be rejected (array of unknown bound and void 
are the only allowed incomplete types)
-  static_assert(__is_layout_compatible(CStructIncomplete, CStructIncomplete)); 
+  static_assert(__is_layout_compatible(CStructIncomplete, CStructIncomplete));
   static_assert(!__is_layout_compatible(CStruct, CStructIncomplete));
   static_assert(__is_layout_compatible(CStructIncomplete[2], 
CStructIncomplete[2]));
 }

_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang][ThreadSafety] Skip past implicit cast in `translateAttrExpr` (PR #92277)

2024-05-18 Thread Antonio Frighetto via cfe-commits

https://github.com/antoniofrighetto closed 
https://github.com/llvm/llvm-project/pull/92277
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] 2c2e050 - [clang][ThreadSafety] Skip past implicit cast in `translateAttrExpr`

2024-05-18 Thread Antonio Frighetto via cfe-commits

Author: Antonio Frighetto
Date: 2024-05-18T09:49:10+02:00
New Revision: 2c2e0507e92bdb77a01828f899ff59e44492b537

URL: 
https://github.com/llvm/llvm-project/commit/2c2e0507e92bdb77a01828f899ff59e44492b537
DIFF: 
https://github.com/llvm/llvm-project/commit/2c2e0507e92bdb77a01828f899ff59e44492b537.diff

LOG: [clang][ThreadSafety] Skip past implicit cast in `translateAttrExpr`

Ignore `ImplicitCastExpr` when building `AttrExp` for capability
attribute diagnostics.

Fixes: https://github.com/llvm/llvm-project/issues/92118.

Added: 


Modified: 
clang/lib/Analysis/ThreadSafetyCommon.cpp
clang/test/SemaCXX/warn-thread-safety-analysis.cpp

Removed: 




diff  --git a/clang/lib/Analysis/ThreadSafetyCommon.cpp 
b/clang/lib/Analysis/ThreadSafetyCommon.cpp
index a3b378c42df33..3e8c959ccee4f 100644
--- a/clang/lib/Analysis/ThreadSafetyCommon.cpp
+++ b/clang/lib/Analysis/ThreadSafetyCommon.cpp
@@ -197,7 +197,7 @@ CapabilityExpr SExprBuilder::translateAttrExpr(const Expr 
*AttrExp,
   else if (const auto *UO = dyn_cast(AttrExp)) {
 if (UO->getOpcode() == UO_LNot) {
   Neg = true;
-  AttrExp = UO->getSubExpr();
+  AttrExp = UO->getSubExpr()->IgnoreImplicit();
 }
   }
 

diff  --git a/clang/test/SemaCXX/warn-thread-safety-analysis.cpp 
b/clang/test/SemaCXX/warn-thread-safety-analysis.cpp
index dfb966d3b5902..749d9e135d941 100644
--- a/clang/test/SemaCXX/warn-thread-safety-analysis.cpp
+++ b/clang/test/SemaCXX/warn-thread-safety-analysis.cpp
@@ -5341,7 +5341,7 @@ void dispatch_log(const char *msg) 
__attribute__((requires_capability(!FlightCon
 void dispatch_log2(const char *msg) 
__attribute__((requires_capability(Logger))) {}
 
 void flight_control_entry(void) 
__attribute__((requires_capability(FlightControl))) {
-  dispatch_log("wrong"); /* expected-warning {{cannot call function 
'dispatch_log' while mutex 'FlightControl' is held}} */
+  dispatch_log("wrong"); /* expected-warning {{cannot call function 
'dispatch_log' while role 'FlightControl' is held}} */
   dispatch_log2("also wrong"); /* expected-warning {{calling function 
'dispatch_log2' requires holding role 'Logger' exclusively}} */
 }
 



___________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang][ThreadSafety] Skip past implicit cast in `translateAttrExpr` (PR #92277)

2024-05-18 Thread Antonio Frighetto via cfe-commits

https://github.com/antoniofrighetto updated 
https://github.com/llvm/llvm-project/pull/92277

>From 2c2e0507e92bdb77a01828f899ff59e44492b537 Mon Sep 17 00:00:00 2001
From: Antonio Frighetto 
Date: Wed, 15 May 2024 17:03:02 +0200
Subject: [PATCH] [clang][ThreadSafety] Skip past implicit cast in
 `translateAttrExpr`

Ignore `ImplicitCastExpr` when building `AttrExp` for capability
attribute diagnostics.

Fixes: https://github.com/llvm/llvm-project/issues/92118.
---
 clang/lib/Analysis/ThreadSafetyCommon.cpp  | 2 +-
 clang/test/SemaCXX/warn-thread-safety-analysis.cpp | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/clang/lib/Analysis/ThreadSafetyCommon.cpp 
b/clang/lib/Analysis/ThreadSafetyCommon.cpp
index a3b378c42df33..3e8c959ccee4f 100644
--- a/clang/lib/Analysis/ThreadSafetyCommon.cpp
+++ b/clang/lib/Analysis/ThreadSafetyCommon.cpp
@@ -197,7 +197,7 @@ CapabilityExpr SExprBuilder::translateAttrExpr(const Expr 
*AttrExp,
   else if (const auto *UO = dyn_cast(AttrExp)) {
 if (UO->getOpcode() == UO_LNot) {
   Neg = true;
-  AttrExp = UO->getSubExpr();
+  AttrExp = UO->getSubExpr()->IgnoreImplicit();
 }
   }
 
diff --git a/clang/test/SemaCXX/warn-thread-safety-analysis.cpp 
b/clang/test/SemaCXX/warn-thread-safety-analysis.cpp
index dfb966d3b5902..749d9e135d941 100644
--- a/clang/test/SemaCXX/warn-thread-safety-analysis.cpp
+++ b/clang/test/SemaCXX/warn-thread-safety-analysis.cpp
@@ -5341,7 +5341,7 @@ void dispatch_log(const char *msg) 
__attribute__((requires_capability(!FlightCon
 void dispatch_log2(const char *msg) 
__attribute__((requires_capability(Logger))) {}
 
 void flight_control_entry(void) 
__attribute__((requires_capability(FlightControl))) {
-  dispatch_log("wrong"); /* expected-warning {{cannot call function 
'dispatch_log' while mutex 'FlightControl' is held}} */
+  dispatch_log("wrong"); /* expected-warning {{cannot call function 
'dispatch_log' while role 'FlightControl' is held}} */
   dispatch_log2("also wrong"); /* expected-warning {{calling function 
'dispatch_log2' requires holding role 'Logger' exclusively}} */
 }
 

___________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [BoundsSafety] Allow 'counted_by' attribute on pointers in structs in C (PR #90786)

2024-05-18 Thread Dan Liew via cfe-commits

delcypher wrote:

Ok. Now I see what's happening.

These lines here are basically giving ownership of `LateParsedAttribute` to the 
`LateParsedAttrList`

```
  // Handle attributes with arguments that require late parsing.
  LateParsedAttribute *LA =
  new LateParsedAttribute(this, *AttrName, AttrNameLoc);
  LateAttrs->push_back(LA);
```

However `LateParsedAttrList` is basically just a 

```
class LateParsedAttrList: public SmallVector {
...
}
```

so it won't free the pointers when the list is destroyed. If we look at the C++ 
code that handles this we can see a bunch of manual memory management.

```
/// Parse all attributes in LAs, and attach them to Decl D.
void Parser::ParseLexedAttributeList(LateParsedAttrList , Decl *D,
 bool EnterScope, bool OnDefinition) {
  assert(LAs.parseSoon() &&
 "Attribute list should be marked for immediate parsing.");
  for (unsigned i = 0, ni = LAs.size(); i < ni; ++i) {
if (D)
  LAs[i]->addDecl(D);
ParseLexedAttribute(*LAs[i], EnterScope, OnDefinition);
delete LAs[i];
  }
  LAs.clear();
}
```

This is a silly footgun. `LateParsedAttrList` should properly take ownership of 
its pointers by deleting them when the list is destroyed.

For now we should just replicate what is done for C++ but once we're confident 
we've fixed things we should make `LateParsedAttrList` properly own its 
pointers.

https://github.com/llvm/llvm-project/pull/90786
_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [OpenCL] Fix an infinite loop in builidng AddrSpaceQualType (PR #92612)

2024-05-18 Thread Matt Arsenault via cfe-commits


@@ -0,0 +1,25 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py 
UTC_ARGS: --version 4
+//RUN: %clang_cc1 %s -emit-llvm -O1 -o - | FileCheck %s

arsenm wrote:

codegen tests need an explicit target 

https://github.com/llvm/llvm-project/pull/92612
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [Inliner] Propagate more attributes to params when inlining (PR #91101)

2024-05-18 Thread via cfe-commits


@@ -1352,20 +1352,43 @@ static void AddParamAndFnBasicAttributes(const CallBase 
,
   auto  = CalledFunction->getContext();
 
   // Collect valid attributes for all params.
-  SmallVector ValidParamAttrs;
+  SmallVector ValidObjParamAttrs, ValidExactParamAttrs;
   bool HasAttrToPropagate = false;
 
   for (unsigned I = 0, E = CB.arg_size(); I < E; ++I) {
-ValidParamAttrs.emplace_back(AttrBuilder{CB.getContext()});
+ValidObjParamAttrs.emplace_back(AttrBuilder{CB.getContext()});
+ValidExactParamAttrs.emplace_back(AttrBuilder{CB.getContext()});
 // Access attributes can be propagated to any param with the same 
underlying
 // object as the argument.
 if (CB.paramHasAttr(I, Attribute::ReadNone))
-  ValidParamAttrs.back().addAttribute(Attribute::ReadNone);
+  ValidObjParamAttrs.back().addAttribute(Attribute::ReadNone);
 if (CB.paramHasAttr(I, Attribute::ReadOnly))
-  ValidParamAttrs.back().addAttribute(Attribute::ReadOnly);
+  ValidObjParamAttrs.back().addAttribute(Attribute::ReadOnly);
 if (CB.paramHasAttr(I, Attribute::WriteOnly))
-  ValidParamAttrs.back().addAttribute(Attribute::WriteOnly);
-HasAttrToPropagate |= ValidParamAttrs.back().hasAttributes();
+  ValidObjParamAttrs.back().addAttribute(Attribute::WriteOnly);
+
+// Attributes we can only propagate if the exact parameter is forwarded.
+
+// We can propagate both poison generating an UB generating attributes

goldsteinn wrote:

Thanks, fixed.

https://github.com/llvm/llvm-project/pull/91101
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [Inliner] Propagate more attributes to params when inlining (PR #91101)

2024-05-18 Thread via cfe-commits
ArgNo].getRange()) {
+  auto CombinedRange = 
ExistingRange->exactIntersectWith(*NewRange);
+  if (!CombinedRange.has_value())
+CombinedRange =
+ConstantRange::getEmpty(NewRange->getBitWidth());
+  AL = AL.removeParamAttribute(Context, I, Attribute::Range);
+  AL = AL.addRangeParamAttr(Context, I, *CombinedRange);
+}
+  }
 } else {
   // Check if the underlying value for the parameter is an argument.
   const Value *UnderlyingV =
diff --git a/llvm/test/Transforms/Inline/access-attributes-prop.ll 
b/llvm/test/Transforms/Inline/access-attributes-prop.ll
index f3c656be00f59..e25023da6ed5f 100644
--- a/llvm/test/Transforms/Inline/access-attributes-prop.ll
+++ b/llvm/test/Transforms/Inline/access-attributes-prop.ll
@@ -585,7 +585,7 @@ define dso_local void @foo4(i32 %v) {
 define void @prop_range_empty_intersect(i32 %v) {
 ; CHECK-LABEL: define {{[^@]+}}@prop_range_empty_intersect
 ; CHECK-SAME: (i32 [[V:%.*]]) {
-; CHECK-NEXT:call void @bar4(i32 range(i32 0, 10) [[V]])
+; CHECK-NEXT:call void @bar4(i32 range(i32 0, 0) [[V]])
 ; CHECK-NEXT:ret void
 ;
   call void @foo4_range_0_10(i32 range(i32 11, 50) %v)
@@ -595,7 +595,7 @@ define void @prop_range_empty_intersect(i32 %v) {
 define void @prop_range_empty(i32 %v) {
 ; CHECK-LABEL: define {{[^@]+}}@prop_range_empty
 ; CHECK-SAME: (i32 [[V:%.*]]) {
-; CHECK-NEXT:call void @bar4(i32 [[V]])
+; CHECK-NEXT:call void @bar4(i32 range(i32 1, 0) [[V]])
 ; CHECK-NEXT:ret void
 ;
   call void @foo4(i32 range(i32 1, 0) %v)
@@ -605,7 +605,7 @@ define void @prop_range_empty(i32 %v) {
 define void @prop_range_empty_with_intersect(i32 %v) {
 ; CHECK-LABEL: define {{[^@]+}}@prop_range_empty_with_intersect
 ; CHECK-SAME: (i32 [[V:%.*]]) {
-; CHECK-NEXT:call void @bar4(i32 range(i32 0, 10) [[V]])
+; CHECK-NEXT:call void @bar4(i32 range(i32 1, 10) [[V]])
 ; CHECK-NEXT:ret void
 ;
   call void @foo4_range_0_10(i32 range(i32 1, 0) %v)
@@ -615,7 +615,7 @@ define void @prop_range_empty_with_intersect(i32 %v) {
 define void @prop_range_intersect1(i32 %v) {
 ; CHECK-LABEL: define {{[^@]+}}@prop_range_intersect1
 ; CHECK-SAME: (i32 [[V:%.*]]) {
-; CHECK-NEXT:call void @bar4(i32 range(i32 0, 10) [[V]])
+; CHECK-NEXT:call void @bar4(i32 range(i32 0, 9) [[V]])
 ; CHECK-NEXT:ret void
 ;
   call void @foo4_range_0_10(i32 range(i32 0, 9) %v)
@@ -625,7 +625,7 @@ define void @prop_range_intersect1(i32 %v) {
 define void @prop_range_intersect2(i32 %v) {
 ; CHECK-LABEL: define {{[^@]+}}@prop_range_intersect2
 ; CHECK-SAME: (i32 [[V:%.*]]) {
-; CHECK-NEXT:call void @bar4(i32 range(i32 0, 10) [[V]])
+; CHECK-NEXT:call void @bar4(i32 range(i32 1, 9) [[V]])
 ; CHECK-NEXT:ret void
 ;
   call void @foo4_range_0_10(i32 range(i32 1, 9) %v)
@@ -635,7 +635,7 @@ define void @prop_range_intersect2(i32 %v) {
 define void @prop_range_intersect3(i32 %v) {
 ; CHECK-LABEL: define {{[^@]+}}@prop_range_intersect3
 ; CHECK-SAME: (i32 [[V:%.*]]) {
-; CHECK-NEXT:call void @bar4(i32 [[V]])
+; CHECK-NEXT:call void @bar4(i32 range(i32 0, 11) [[V]])
 ; CHECK-NEXT:ret void
 ;
   call void @foo4_2_range_0_10(i32 range(i32 0, 11) %v)
@@ -645,7 +645,7 @@ define void @prop_range_intersect3(i32 %v) {
 define void @prop_range_direct(i32 %v) {
 ; CHECK-LABEL: define {{[^@]+}}@prop_range_direct
 ; CHECK-SAME: (i32 [[V:%.*]]) {
-; CHECK-NEXT:call void @bar4(i32 [[V]])
+; CHECK-NEXT:call void @bar4(i32 range(i32 1, 11) [[V]])
 ; CHECK-NEXT:ret void
 ;
   call void @foo4(i32 range(i32 1, 11) %v)

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [Inliner] Propagate more attributes to params when inlining (PR #91101)

2024-05-18 Thread via cfe-commits


@@ -1352,20 +1352,43 @@ static void AddParamAndFnBasicAttributes(const CallBase 
,
   auto  = CalledFunction->getContext();
 
   // Collect valid attributes for all params.
-  SmallVector ValidParamAttrs;
+  SmallVector ValidObjParamAttrs, ValidExactParamAttrs;
   bool HasAttrToPropagate = false;
 
   for (unsigned I = 0, E = CB.arg_size(); I < E; ++I) {
-ValidParamAttrs.emplace_back(AttrBuilder{CB.getContext()});
+ValidObjParamAttrs.emplace_back(AttrBuilder{CB.getContext()});
+ValidExactParamAttrs.emplace_back(AttrBuilder{CB.getContext()});
 // Access attributes can be propagated to any param with the same 
underlying
 // object as the argument.
 if (CB.paramHasAttr(I, Attribute::ReadNone))
-  ValidParamAttrs.back().addAttribute(Attribute::ReadNone);
+  ValidObjParamAttrs.back().addAttribute(Attribute::ReadNone);
 if (CB.paramHasAttr(I, Attribute::ReadOnly))
-  ValidParamAttrs.back().addAttribute(Attribute::ReadOnly);
+  ValidObjParamAttrs.back().addAttribute(Attribute::ReadOnly);
 if (CB.paramHasAttr(I, Attribute::WriteOnly))
-  ValidParamAttrs.back().addAttribute(Attribute::WriteOnly);
-HasAttrToPropagate |= ValidParamAttrs.back().hasAttributes();
+  ValidObjParamAttrs.back().addAttribute(Attribute::WriteOnly);
+
+// Attributes we can only propagate if the exact parameter is forwarded.
+
+// We can propagate both poison generating an UB generating attributes
+// without any extra checks. The only attribute that is tricky to propagate
+// is `noundef` (skipped for now) as that can create new UB where previous

goldsteinn wrote:

There definitely are cases we can propagate it, but since it need specialized 
logic I'm keeping separate from this patch.
Next patch hopefully can get no capture, then maybe noundef.

https://github.com/llvm/llvm-project/pull/91101
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/next-executions-plugin] 498b05: Bump org.jenkins-ci.plugins:plugin from 4.81 to 4.82

2024-05-17 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: refs/heads/dependabot/maven/org.jenkins-ci.plugins-plugin-4.82
  Home:   https://github.com/jenkinsci/next-executions-plugin
  Commit: 498b05b0d8ac7ccd781eb8c7b1161b480b3ec38e
  
https://github.com/jenkinsci/next-executions-plugin/commit/498b05b0d8ac7ccd781eb8c7b1161b480b3ec38e
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump org.jenkins-ci.plugins:plugin from 4.81 to 4.82

Bumps [org.jenkins-ci.plugins:plugin](https://github.com/jenkinsci/plugin-pom) 
from 4.81 to 4.82.
- [Release notes](https://github.com/jenkinsci/plugin-pom/releases)
- [Changelog](https://github.com/jenkinsci/plugin-pom/blob/master/CHANGELOG.md)
- 
[Commits](https://github.com/jenkinsci/plugin-pom/compare/plugin-4.81...plugin-4.82)

---
updated-dependencies:
- dependency-name: org.jenkins-ci.plugins:plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/next-executions-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/next-executions-plugin/push/refs/heads/dependabot/maven/org.jenkins-ci.plugins-plugin-4.82/00-498b05%40github.com.


[jenkinsci/next-executions-plugin] 0697d7: Bump io.jenkins.tools.bom:bom-2.440.x

2024-05-17 Thread 'dependabot[bot]' via Jenkins Commits
  Branch: 
refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.440.x-3056.v53343b_a_b_a_850
  Home:   https://github.com/jenkinsci/next-executions-plugin
  Commit: 0697d7227d3db313840efe5dbaa7f6b8ea1e999e
  
https://github.com/jenkinsci/next-executions-plugin/commit/0697d7227d3db313840efe5dbaa7f6b8ea1e999e
  Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Bump io.jenkins.tools.bom:bom-2.440.x

Bumps [io.jenkins.tools.bom:bom-2.440.x](https://github.com/jenkinsci/bom) from 
3010.vec758b_8e7da_3 to 3056.v53343b_a_b_a_850.
- [Release notes](https://github.com/jenkinsci/bom/releases)
- [Commits](https://github.com/jenkinsci/bom/commits)

---
updated-dependencies:
- dependency-name: io.jenkins.tools.bom:bom-2.440.x
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] 



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/next-executions-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/next-executions-plugin/push/refs/heads/dependabot/maven/io.jenkins.tools.bom-bom-2.440.x-3056.v53343b_a_b_a_850/00-0697d7%40github.com.


[clang] [llvm] [DebugInfo][BPF] Add 'btf:type_tag' annotation in DWARF (PR #91423)

2024-05-17 Thread via cfe-commits

eddyz87 wrote:

> Looks like some changes are duplicate from #91422, e.g., 
> llvm/lib/Bitcode/Reader/MetadataLoader.cpp. There are some other files are 
> duplicated as well. Could you do a cleanup here? This will make it easy to 
> compare to https://reviews.llvm.org/D143967.

As far as I understand, this is how one makes "revision stacks" after migration 
from Phabriactor to Github: I have three branches, one for each patch I want to 
land, each branch is forked from a previous one. Until first branch is landed 
Github will show two pending commits (one from the previous branch, one from 
this branch). To check changes specific to this branch please refer to the 
top-most commit of the branch: 
https://github.com/llvm/llvm-project/pull/91423/commits/4f3fbf2e4d831ea92d3bd5170e5e3c14b36fff5c

Please let me know if I understand the new process in a wrong way.

https://github.com/llvm/llvm-project/pull/91423
_______
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)

2024-05-17 Thread Hubert Tong via cfe-commits
  [[FREXP2:%.*]] = alloca double, align 8
+// LNX-NEXT:[[FREXP3:%.*]] = alloca double, align 8
+// LNX-NEXT:[[FREXP4:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP5:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP6:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP7:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP8:%.*]] = alloca x86_fp80, align 16
+// LNX-NEXT:store i32 0, ptr [[I]], align 4
+// LNX-NEXT:store double 1.30e+00, ptr [[MIN1]], align 8
+// LNX-NEXT:store double -0.00e+00, ptr [[MIN2]], align 8
+// LNX-NEXT:store double -0.00e+00, ptr [[MIN3]], align 8
+// LNX-NEXT:store float 0x7FF8, ptr [[MIN4]], align 4
+// LNX-NEXT:store float -1.00e+00, ptr [[MIN5]], align 4
+// LNX-NEXT:store float 0xFFF0, ptr [[MIN6]], align 4
+// LNX-NEXT:store float 0.00e+00, ptr [[MIN7]], align 4
+// LNX-NEXT:store x86_fp80 0xK4005F6E978D4FDF3B646, ptr [[MIN8]], align 16
+// LNX-NEXT:store double 1.524000e+01, ptr [[MAX1]], align 8
+// LNX-NEXT:store double 0.00e+00, ptr [[MAX2]], align 8
+// LNX-NEXT:store double 0.00e+00, ptr [[MAX3]], align 8
+// LNX-NEXT:store float -1.00e+00, ptr [[MAX4]], align 4
+// LNX-NEXT:store float 0x7FF0, ptr [[MAX5]], align 4
+// LNX-NEXT:store float 0.00e+00, ptr [[MAX6]], align 4
+// LNX-NEXT:store float 0x7FF8, ptr [[MAX7]], align 4
+// LNX-NEXT:store x86_fp80 0xK4008C540C49BA5E353F8, ptr [[MAX8]], align 16
+// LNX-NEXT:store double 0x3FEEDCCD, ptr [[FREXP1]], align 8
+// LNX-NEXT:store double 0.00e+00, ptr [[FREXP2]], align 8
+// LNX-NEXT:store double -0.00e+00, ptr [[FREXP3]], align 8
+// LNX-NEXT:store float 0x7FF8, ptr [[FREXP4]], align 4
+// LNX-NEXT:store float 0xFFF8, ptr [[FREXP5]], align 4
+// LNX-NEXT:store float 0x7FF0, ptr [[FREXP6]], align 4
+// LNX-NEXT:store float 0x7FF0, ptr [[FREXP7]], align 4
+// LNX-NEXT:store x86_fp80 0xK3FFE81A9FBE76C8B4396, ptr [[FREXP8]], align 
16
+// LNX-NEXT:ret i32 0
+//
+int func()
+{
+  int i;
+
+  // fmin
+  constexpr double min1 = __builtin_fmin(15.24, 1.3);
+  constexpr double min2 = __builtin_fmin(-0.0, +0.0);
+  constexpr double min3 = __builtin_fmin(+0.0, -0.0);
+  constexpr float min4 = __builtin_fminf(NAN, NAN);
+  constexpr float min5 = __builtin_fminf(NAN, -1);
+  constexpr float min6 = __builtin_fminf(-INFINITY, 0);
+  constexpr float min7 = __builtin_fminf(INFINITY, 0);
+  constexpr long double min8 = __builtin_fminl(123.456L, 789.012L);
+
+  // fmax
+  constexpr double max1 =  __builtin_fmax(15.24, 1.3);
+  constexpr double max2 = __builtin_fmax(-0.0, +0.0);
+  constexpr double max3 = __builtin_fmax(+0.0, -0.0);
+  constexpr float max4 = __builtin_fmaxf(NAN, -1);
+  constexpr float max5 = __builtin_fmaxf(+INFINITY, 0);
+  constexpr float max6 = __builtin_fmaxf(-INFINITY, 0);
+  constexpr float max7 = __builtin_fmaxf(NAN, NAN);
+  constexpr long double max8 = __builtin_fmaxl(123.456L, 789.012L);
+
+  // frexp
+  constexpr double frexp1 = __builtin_frexp(123.45, );
+  constexpr double frexp2 = __builtin_frexp(0.0, );
+  constexpr double frexp3 = __builtin_frexp(-0.0, );
+  constexpr float frexp4 = __builtin_frexpf(NAN, );
+  constexpr float frexp5 = __builtin_frexpf(-NAN, );
+  constexpr float frexp6 = __builtin_frexpf(INFINITY, );
+  constexpr float frexp7 = __builtin_frexpf(INFINITY, );

hubert-reinterpretcast wrote:

Fix "copy/paste error":
```suggestion
  constexpr float frexp6 = __builtin_frexpf(+INFINITY, );
  constexpr float frexp7 = __builtin_frexpf(-INFINITY, );
```

https://github.com/llvm/llvm-project/pull/88978
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)

2024-05-17 Thread Hubert Tong via cfe-commits


@@ -0,0 +1,52 @@
+// RUN: %clang_cc1 -DWIN -verify -std=c++23 -fsyntax-only  %s
+// RUN: %clang_cc1 -verify -std=c++23 -fsyntax-only  %s

hubert-reinterpretcast wrote:

Duplicate this run line for `-std=c++20`.
Modify the test to use the `__builtin_*` functions only for the `-std=c++20` 
case.
Use the non-`__builtin_*` functions for the `-std=c++23` case.

https://github.com/llvm/llvm-project/pull/88978
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)

2024-05-17 Thread Hubert Tong via cfe-commits


@@ -14683,6 +14710,23 @@ bool FloatExprEvaluator::VisitCallExpr(const CallExpr 
*E) {
   default:
 return false;
 
+  case Builtin::BI__builtin_frexp:

hubert-reinterpretcast wrote:

The non-`__builtin_`-prefixed cases need to be added in as per @philnik777's 
comment 
(https://github.com/llvm/llvm-project/pull/88978#discussion_r1582059951). Same 
for the other two function families.

Some more thought is needed on how to handle the non-`__builtin_`-prefixed 
cases under non-C++23-or-higher language modes. The specific implications of 
those functions being non-`constexpr` under said modes (as required, for C++, 
by https://wg21.link/constexpr.functions) may determine the solution to apply 
in this PR.

https://github.com/llvm/llvm-project/pull/88978
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)

2024-05-17 Thread Hubert Tong via cfe-commits
  [[FREXP2:%.*]] = alloca double, align 8
+// LNX-NEXT:[[FREXP3:%.*]] = alloca double, align 8
+// LNX-NEXT:[[FREXP4:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP5:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP6:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP7:%.*]] = alloca float, align 4
+// LNX-NEXT:[[FREXP8:%.*]] = alloca x86_fp80, align 16
+// LNX-NEXT:store i32 0, ptr [[I]], align 4
+// LNX-NEXT:store double 1.30e+00, ptr [[MIN1]], align 8
+// LNX-NEXT:store double -0.00e+00, ptr [[MIN2]], align 8
+// LNX-NEXT:store double -0.00e+00, ptr [[MIN3]], align 8
+// LNX-NEXT:store float 0x7FF8, ptr [[MIN4]], align 4
+// LNX-NEXT:store float -1.00e+00, ptr [[MIN5]], align 4
+// LNX-NEXT:store float 0xFFF0, ptr [[MIN6]], align 4
+// LNX-NEXT:store float 0.00e+00, ptr [[MIN7]], align 4
+// LNX-NEXT:store x86_fp80 0xK4005F6E978D4FDF3B646, ptr [[MIN8]], align 16
+// LNX-NEXT:store double 1.524000e+01, ptr [[MAX1]], align 8
+// LNX-NEXT:store double 0.00e+00, ptr [[MAX2]], align 8
+// LNX-NEXT:store double 0.00e+00, ptr [[MAX3]], align 8
+// LNX-NEXT:store float -1.00e+00, ptr [[MAX4]], align 4
+// LNX-NEXT:store float 0x7FF0, ptr [[MAX5]], align 4
+// LNX-NEXT:store float 0.00e+00, ptr [[MAX6]], align 4
+// LNX-NEXT:store float 0x7FF8, ptr [[MAX7]], align 4
+// LNX-NEXT:store x86_fp80 0xK4008C540C49BA5E353F8, ptr [[MAX8]], align 16
+// LNX-NEXT:store double 0x3FEEDCCD, ptr [[FREXP1]], align 8
+// LNX-NEXT:store double 0.00e+00, ptr [[FREXP2]], align 8
+// LNX-NEXT:store double -0.00e+00, ptr [[FREXP3]], align 8
+// LNX-NEXT:store float 0x7FF8, ptr [[FREXP4]], align 4
+// LNX-NEXT:store float 0xFFF8, ptr [[FREXP5]], align 4
+// LNX-NEXT:store float 0x7FF0, ptr [[FREXP6]], align 4
+// LNX-NEXT:store float 0x7FF0, ptr [[FREXP7]], align 4
+// LNX-NEXT:store x86_fp80 0xK3FFE81A9FBE76C8B4396, ptr [[FREXP8]], align 
16
+// LNX-NEXT:ret i32 0
+//
+int func()
+{
+  int i;
+
+  // fmin
+  constexpr double min1 = __builtin_fmin(15.24, 1.3);
+  constexpr double min2 = __builtin_fmin(-0.0, +0.0);
+  constexpr double min3 = __builtin_fmin(+0.0, -0.0);
+  constexpr float min4 = __builtin_fminf(NAN, NAN);
+  constexpr float min5 = __builtin_fminf(NAN, -1);
+  constexpr float min6 = __builtin_fminf(-INFINITY, 0);
+  constexpr float min7 = __builtin_fminf(INFINITY, 0);
+  constexpr long double min8 = __builtin_fminl(123.456L, 789.012L);
+
+  // fmax
+  constexpr double max1 =  __builtin_fmax(15.24, 1.3);

hubert-reinterpretcast wrote:

Formatting nit:
```suggestion
  constexpr double max1 = __builtin_fmax(15.24, 1.3);
```

https://github.com/llvm/llvm-project/pull/88978
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [DebugInfo][BPF] Add 'btf:type_tag' annotation in DWARF (PR #91423)

2024-05-17 Thread via cfe-commits

yonghong-song wrote:

Looks like some changes are duplicate from 
https://github.com/llvm/llvm-project/pull/91422, e.g., 
llvm/lib/Bitcode/Reader/MetadataLoader.cpp. There are some other files are 
duplicated as well. Could you do a cleanup here? This will make it easy to 
compare to https://reviews.llvm.org/D143967.

https://github.com/llvm/llvm-project/pull/91423
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [webkit.RefCntblBaseVirtualDtor] Ignore a base class which has a specialized deref function for a given derived class. (PR #92501)

2024-05-17 Thread Ryosuke Niwa via cfe-commits
H 7/7] Fix formatting.

---
 .../WebKit/RefCntblBaseVirtualDtorChecker.cpp   | 17 +
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git 
a/clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp 
b/clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
index 2a5707837726b..e565b2323063c 100644
--- 
a/clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
+++ 
b/clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
@@ -111,7 +111,8 @@ class DerefAnalysisVisitor
   } else if (auto *RD = dyn_cast(PointeeType)) {
 if (RD->getDecl() == ClassDecl)
   return true;
-  } else if (auto* ST = 
dyn_cast(PointeeType)) {
+  } else if (auto *ST =
+ dyn_cast(PointeeType)) {
 auto Type = ST->getReplacementType();
 if (auto *RD = dyn_cast(Type)) {
   if (RD->getDecl() == ClassDecl)
@@ -180,7 +181,7 @@ class RefCntblBaseVirtualDtorChecker
 if (shouldSkipDecl(RD))
   return;
 
-for (auto& Base : RD->bases()) {
+for (auto  : RD->bases()) {
   const auto AccSpec = Base.getAccessSpecifier();
   if (AccSpec == AS_protected || AccSpec == AS_private ||
   (AccSpec == AS_none && RD->isClass()))
@@ -202,8 +203,7 @@ class RefCntblBaseVirtualDtorChecker
 
   bool AnyInconclusiveBase = false;
   const auto hasPublicRefInBase =
-  [](const CXXBaseSpecifier *Base,
- CXXBasePath &) {
+  [](const CXXBaseSpecifier *Base, CXXBasePath &) {
 auto hasRefInBase = clang::hasPublicMethodInBase(Base, "ref");
 if (!hasRefInBase) {
   AnyInconclusiveBase = true;
@@ -235,8 +235,8 @@ class RefCntblBaseVirtualDtorChecker
 
   const auto *Dtor = C->getDestructor();
   if (!Dtor || !Dtor->isVirtual()) {
-auto* ProblematicBaseSpecifier = 
-auto* ProblematicBaseClass = C;
+auto *ProblematicBaseSpecifier = 
+    auto *ProblematicBaseClass = C;
 reportBug(RD, ProblematicBaseSpecifier, ProblematicBaseClass);
   }
 }
@@ -284,8 +284,9 @@ class RefCntblBaseVirtualDtorChecker
 ClsName == "ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr");
   }
 
-  static std::optional isClassWithSpecializedDelete(
-  const CXXRecordDecl *C, const CXXRecordDecl *DerivedClass) {
+  static std::optional
+  isClassWithSpecializedDelete(const CXXRecordDecl *C,
+   const CXXRecordDecl *DerivedClass) {
 if (auto *ClsTmplSpDecl = dyn_cast(C)) {
   for (auto *MethodDecl : C->methods()) {
 if (safeGetName(MethodDecl) == "deref") {

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [webkit.RefCntblBaseVirtualDtor] Ignore a base class which has a specialized deref function for a given derived class. (PR #92501)

2024-05-17 Thread Ryosuke Niwa via cfe-commits
 reportBug(RD, ProblematicBaseSpecifier, ProblematicBaseClass);
   }
 }
@@ -274,15 +284,16 @@ class RefCntblBaseVirtualDtorChecker
 ClsName == "ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr");
   }
 
-  static bool isClassWithSpecializedDelete(const CXXRecordDecl *C,
-   const CXXRecordDecl *DerivedClass) {
+  static std::optional isClassWithSpecializedDelete(
+  const CXXRecordDecl *C, const CXXRecordDecl *DerivedClass) {
 if (auto *ClsTmplSpDecl = dyn_cast(C)) {
   for (auto *MethodDecl : C->methods()) {
 if (safeGetName(MethodDecl) == "deref") {
   DerefAnalysisVisitor DerefAnalysis(ClsTmplSpDecl->getTemplateArgs(),
  DerivedClass);
-  if (DerefAnalysis.HasSpecializedDelete(MethodDecl))
-return true;
+  auto Result = DerefAnalysis.HasSpecializedDelete(MethodDecl);
+  if (!Result || *Result)
+return Result;
 }
   }
   return false;
@@ -290,8 +301,9 @@ class RefCntblBaseVirtualDtorChecker
 for (auto *MethodDecl : C->methods()) {
   if (safeGetName(MethodDecl) == "deref") {
 DerefAnalysisVisitor DerefAnalysis(DerivedClass);
-if (DerefAnalysis.HasSpecializedDelete(MethodDecl))
-  return true;
+auto Result = DerefAnalysis.HasSpecializedDelete(MethodDecl);
+if (!Result || *Result)
+  return Result;
   }
 }
 return false;
diff --git 
a/clang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor-templates.cpp 
b/clang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor-templates.cpp
index c42d8520b5f05..f04c68cb641f1 100644
--- 
a/clang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor-templates.cpp
+++ 
b/clang/test/Analysis/Checkers/WebKit/ref-cntbl-base-virtual-dtor-templates.cpp
@@ -132,16 +132,36 @@ class ThreadSafeRefCounted {
   mutable unsigned refCount { 0 };
 };
 
-template 
-class ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr {
+class ThreadSafeRefCountedControlBlock {
 public:
-  void ref() const { ++refCount; }
-  void deref() const {
-if (!--refCount)
-  delete const_cast(static_cast(this));
+  ThreadSafeRefCountedControlBlock(void* object) : object(object) { }
+  void strongRef() const { ++refCount; }
+  template 
+  void strongDeref() const {
+--refCount;
+if (refCount)
+  return;
+
+auto deleteObject = [&] {
+  delete static_cast(object);
+  delete this;
+};
+
+deleteObject();
   }
 private:
   mutable unsigned refCount { 0 };
+  mutable void* object { nullptr };
+};
+
+template 
+class ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr {
+public:
+  ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr() { }
+  void ref() const { controlBlock.strongRef(); }
+  void deref() const { controlBlock.template strongDeref(); }
+private:
+  ThreadSafeRefCountedControlBlock& controlBlock { *new 
ThreadSafeRefCountedControlBlock(static_cast(this)) };
 };
 
 } // namespace WTF
@@ -150,8 +170,12 @@ class DerivedClass4 : public 
WTF::RefCounted { };
 
 class DerivedClass4b : public WTF::ExoticRefCounted { };
 
-class DerivedClass4c : public WTF::BadBase { };
-// expected-warning@-1{{Class 'WTF::BadBase' is used as a 
base of class 'DerivedClass4c' but doesn't have virtual destructor}}
+class OtherType;
+class DerivedClass4c : public WTF::BadBase { };
+// expected-warning@-1{{Class 'WTF::BadBase' is 
used as a base of class 'DerivedClass4c' but doesn't have virtual destructor}}
+class OtherType : public DerivedClass4c { };
+// expected-warning@-1{{Class 'DerivedClass4c' is used as a base of class 
'OtherType' but doesn't have virtual destructor}}
+void UseDerived4c(DerivedClass4c ) { obj.deref(); }
 
 class DerivedClass5 : public DerivedClass4 { };
 // expected-warning@-1{{Class 'DerivedClass4' is used as a base of class 
'DerivedClass5' but doesn't have virtual destructor}}
@@ -163,6 +187,9 @@ class DerivedClass7 : public DerivedClass6 { };
 
 class DerivedClass8 : public 
WTF::ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr { };
 
+class DerivedClass8b : public 
WTF::ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr { };
+void UseDerived8b(DerivedClass8b ) { obj.deref(); }
+
 class DerivedClass9 : public DerivedClass8 { };
 // expected-warning@-1{{Class 'DerivedClass8' is used as a base of class 
'DerivedClass9' but doesn't have virtual destructor}}
 
@@ -170,6 +197,7 @@ class DerivedClass10 : public 
WTF::FancyDeref { };
 
 class DerivedClass10b : public WTF::BadFancyDeref { };
 // expected-warning@-1{{Class 'WTF::BadFancyDeref' is used as 
a base of class 'DerivedClass10b' but doesn't have virtual destructor}}
+void UseDerived10b(DerivedClass10b ) { obj.deref(); }
 
 class BaseClass1 {
 public:

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)

2024-05-17 Thread Hubert Tong via cfe-commits


@@ -0,0 +1,57 @@
+// RUN: %clang_cc1 -DWIN -verify -std=c++23 -fsyntax-only  %s
+// RUN: %clang_cc1 -verify -std=c++23 -fsyntax-only  %s
+
+// expected-no-diagnostics
+
+
+#ifdef WIN
+#define INFINITY ((float)(1e+300 * 1e+300))
+#define NAN  (-(float)(INFINITY * 0.0F))
+#else
+#define NAN (__builtin_nanf(""))
+#define INFINITY (__builtin_inff())
+#endif
+
+extern "C" void abort() noexcept;
+extern "C" int write(int, const void*, unsigned long);
+
+#define assert(condition) \
+  do { \
+if (!(condition)) {\
+  write(2, "Assertion failed: ", 18);  \
+  write(2, #condition, sizeof(#condition) - 1);\
+  write(2, "\n", 1);   \
+  abort(); \
+}  \
+  } while (false)
+
+int main() {
+int i;
+
+// fmin
+static_assert(__builtin_fmin(15.24, 1.3) == 1.3, "");
+static_assert(__builtin_fmin(-0.0, +0.0) == -0.0, "");
+static_assert(__builtin_fmin(+0.0, -0.0) == -0.0, "");
+assert(__builtin_isnan(__builtin_fminf(NAN,NAN)));
+assert(__builtin_isnan(__builtin_fminf(NAN, -1)));
+assert(__builtin_isnan(__builtin_fminf(-INFINITY, 0)));
+assert(__builtin_iszero(__builtin_fminf(+INFINITY, 0)));
+
+// frexp
+static_assert(__builtin_frexp(123.45, ) == 0.9644531250002);

hubert-reinterpretcast wrote:

Here is an example of checking both the fraction and exponent values by 
"identity" instead of by comparisons.

```cpp
template  constexpr bool is_same_val = false;
template  constexpr bool is_same_val = true;

template 
struct FrexpResult {
  T fraction;
  int exponent;
};

template 
constexpr auto simulateFrexp(T value) {
  FrexpResult result;
  result.fraction = __builtin_frexp(value, );
  return result;
}

static_assert(is_same_val);
```

https://godbolt.org/z/Whx6o5Y7E

https://github.com/llvm/llvm-project/pull/88978
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)

2024-05-17 Thread Hubert Tong via cfe-commits

hubert-reinterpretcast wrote:

Re: https://github.com/llvm/llvm-project/pull/88978#discussion_r1578762448

> It means that INT_MAX and INT_MIN is fine (based on the wording).

The committee reflector discussion reached a conclusion that this behaviour is 
okay. Implementations need not agree on the values. Indeed, an implementation 
is not required to consistently produce the same value.

https://github.com/llvm/llvm-project/pull/88978
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [llvm] [C++23] [CLANG] Adding C++23 constexpr math functions: fmin, fmax and frexp. (PR #88978)

2024-05-17 Thread Hubert Tong via cfe-commits


@@ -14638,6 +14649,8 @@ bool FloatExprEvaluator::VisitCallExpr(const CallExpr 
*E) {
 return true;
   }
 
+  case Builtin::BIfmin:
+  case Builtin::BIfminf:

hubert-reinterpretcast wrote:

At the Clang C/C++ Language Workgroup call on 2024-05-15, it was agreed that 
`-fno-builtin[-*]` should remain capable of disabling built-in treatment even 
when that treatment would be required for conformance w.r.t. `constexpr` 
behaviour of functions shared with C.

For me, the first expectation for this PR (on that subject) is an update to the 
documentation of `-fno-builtin[-*]`.

@AaronBallman @ldionne, I am no sure how we want to handle this w.r.t. 
documenting the C++23 implementation status. Does it go in both the Clang 
documentation (for the functions shared with C) and the libc++ documentation 
(for the overloads added by C++)?

https://github.com/llvm/llvm-project/pull/88978
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [lldb] Refactor string manipulation in Debugger.cpp (#91209) (PR #92565)

2024-05-17 Thread via lldb-commits

https://github.com/aabhinavg updated 
https://github.com/llvm/llvm-project/pull/92565

>From 13fefb6846b6641900843c37746b03140063a955 Mon Sep 17 00:00:00 2001
From: aabhinavg 
Date: Fri, 17 May 2024 21:17:51 +0530
Subject: [PATCH 1/2] removed unwanted file

---
 lldb/source/Core/Debugger.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lldb/source/Core/Debugger.cpp b/lldb/source/Core/Debugger.cpp
index 9951fbcd3e7c3..70303173925e3 100644
--- a/lldb/source/Core/Debugger.cpp
+++ b/lldb/source/Core/Debugger.cpp
@@ -2067,7 +2067,7 @@ void Debugger::HandleProgressEvent(const lldb::EventSP 
_sp) {
   const uint32_t term_width = GetTerminalWidth();
   const uint32_t ellipsis = 3;
   if (message.size() + ellipsis >= term_width)
-message = message.substr(0, term_width - ellipsis);
+message.resize(message.size() - ellipsis);
 
   const bool use_color = GetUseColor();
   llvm::StringRef ansi_prefix = GetShowProgressAnsiPrefix();

>From 3ed69bf19942a6e9470fda66efd54b25cbac176e Mon Sep 17 00:00:00 2001
From: aabhinavg 
Date: Sat, 18 May 2024 08:39:21 +0530
Subject: [PATCH 2/2] updated the patch

---
 lldb/source/Core/Debugger.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lldb/source/Core/Debugger.cpp b/lldb/source/Core/Debugger.cpp
index 70303173925e3..d08aa1dc476f6 100644
--- a/lldb/source/Core/Debugger.cpp
+++ b/lldb/source/Core/Debugger.cpp
@@ -2067,7 +2067,7 @@ void Debugger::HandleProgressEvent(const lldb::EventSP 
_sp) {
   const uint32_t term_width = GetTerminalWidth();
   const uint32_t ellipsis = 3;
   if (message.size() + ellipsis >= term_width)
-message.resize(message.size() - ellipsis);
+message.resize(term_width - ellipsis);
 
   const bool use_color = GetUseColor();
   llvm::StringRef ansi_prefix = GetShowProgressAnsiPrefix();

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[llvm-branch-commits] [lld] [llvm] release/18.x: [LoongArch] Use R_LARCH_ALIGN with section symbol (#84741) (PR #88891)

2024-05-17 Thread Lu Weining via llvm-branch-commits

SixWeining wrote:

This will be reverted in main branch 
(https://github.com/llvm/llvm-project/pull/92584). So close it.

https://github.com/llvm/llvm-project/pull/88891
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [lld] [llvm] release/18.x: [LoongArch] Use R_LARCH_ALIGN with section symbol (#84741) (PR #88891)

2024-05-17 Thread Lu Weining via llvm-branch-commits

https://github.com/SixWeining closed 
https://github.com/llvm/llvm-project/pull/88891
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[jenkins-infra/jenkins-infra] 6e829a: chore: Update Docker Image tag for jenkinsciinfra/...

2024-05-17 Thread 'jenkins-infra-bot' via Jenkins Commits
  Branch: 
refs/heads/updatecli_production_dcbbec40f9af8939db81814533c67efa7b9791d2a05c5f4ffc7523d342c32d7d
  Home:   https://github.com/jenkins-infra/jenkins-infra
  Commit: 6e829afdb25995ee5338003c752e904d1664585c
  
https://github.com/jenkins-infra/jenkins-infra/commit/6e829afdb25995ee5338003c752e904d1664585c
  Author: Jenkins Infra Bot (updatecli) 
<60776566+jenkins-infra-...@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M hieradata/common.yaml

  Log Message:
  ---
  chore: Update Docker Image tag for jenkinsciinfra/openvpn:latest

Made with ❤️️ by updatecli



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

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkins-infra/jenkins-infra/push/refs/heads/updatecli_production_dcbbec40f9af8939db81814533c67efa7b9791d2a05c5f4ffc7523d342c32d7d/00-6e829a%40github.com.


[clang] [clang][Sema] Warn consecutive builtin comparisons in an expression (PR #92200)

2024-05-17 Thread Shafik Yaghmour via cfe-commits


@@ -36,7 +36,7 @@ namespace InExpr {
 
 // These are valid expressions.
 foo(0);
+foo(0); // expected-warning {{comparisons like 'X<=Y<=Z' don't have 
their mathematical meaning}}
 foo(false);

shafik wrote:

It is a shame we don't catch this one but neither does gcc

https://github.com/llvm/llvm-project/pull/92200
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/scoring-load-balancer-plugin]

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/heads/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x
  Home:   https://github.com/jenkinsci/scoring-load-balancer-plugin

To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/scoring-load-balancer-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/scoring-load-balancer-plugin/push/refs/heads/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x/65ac89-00%40github.com.


[jenkinsci/scoring-load-balancer-plugin] 3a9b29: Update dependency io.jenkins.tools.bom:bom-2.426.x...

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/heads/main
  Home:   https://github.com/jenkinsci/scoring-load-balancer-plugin
  Commit: 3a9b29119c83598c3e0257340448edd99a9f0adf
  
https://github.com/jenkinsci/scoring-load-balancer-plugin/commit/3a9b29119c83598c3e0257340448edd99a9f0adf
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Update dependency io.jenkins.tools.bom:bom-2.426.x to v3056



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/scoring-load-balancer-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/scoring-load-balancer-plugin/push/refs/heads/main/e589a7-3a9b29%40github.com.


[clang] [BoundsSafety] Allow 'counted_by' attribute on pointers in structs in C (PR #90786)

2024-05-17 Thread Dan Liew via cfe-commits

delcypher wrote:

The leak via `clang::Parser::ParseLexedCAttribute` is 

```c++
LA.Toks.push_back(AttrEnd);
```

and the leak via `clang::Parser::ParseGNUAttributes`

is 

```
  LateParsedAttribute *LA =
  new LateParsedAttribute(this, *AttrName, AttrNameLoc);
```

which is really old code so I doubt this is directly responsible for the leak.

I'm a little confused because LSan is telling us that these are indirect leaks 
which means "reachable from other leaked blocks" but LSan isn't showing any 
direct leaks (not reachable from anywhere). This might suggest the leak is some 
sort of cycle (multiple objects leaked that point to each other).

https://github.com/llvm/llvm-project/pull/90786
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/scoring-load-balancer-plugin]

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: 
refs/renovate/branches/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x
  Home:   https://github.com/jenkinsci/scoring-load-balancer-plugin

To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/scoring-load-balancer-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/scoring-load-balancer-plugin/push/refs/renovate/branches/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x/8bbc58-00%40github.com.


[jenkinsci/scoring-load-balancer-plugin] 8bbc58: Update dependency io.jenkins.tools.bom:bom-2.426.x...

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: 
refs/renovate/branches/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x
  Home:   https://github.com/jenkinsci/scoring-load-balancer-plugin
  Commit: 8bbc58fa335703d4ba2dc13a49ea2b58ba208113
  
https://github.com/jenkinsci/scoring-load-balancer-plugin/commit/8bbc58fa335703d4ba2dc13a49ea2b58ba208113
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Update dependency io.jenkins.tools.bom:bom-2.426.x to v3056



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/scoring-load-balancer-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/scoring-load-balancer-plugin/push/refs/renovate/branches/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x/00-8bbc58%40github.com.


[jenkinsci/scoring-load-balancer-plugin] 65ac89: Update dependency io.jenkins.tools.bom:bom-2.426.x...

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/heads/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x
  Home:   https://github.com/jenkinsci/scoring-load-balancer-plugin
  Commit: 65ac89babeb47ec98302d9e46cabdf4e481ca53b
  
https://github.com/jenkinsci/scoring-load-balancer-plugin/commit/65ac89babeb47ec98302d9e46cabdf4e481ca53b
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Update dependency io.jenkins.tools.bom:bom-2.426.x to v3056



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/scoring-load-balancer-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/scoring-load-balancer-plugin/push/refs/heads/renovate/io.jenkins.tools.bom-bom-2.426.x-3056.x/00-65ac89%40github.com.


[clang] [BoundsSafety] Allow 'counted_by' attribute on pointers in structs in C (PR #90786)

2024-05-17 Thread Dan Liew via cfe-commits
mp;, clang::ParsingDeclSpec*, clang::AccessSpecifier) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1271:12
#16 0xf2f663e4 in 
clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, 
clang::ParsedAttributes&, clang::ParsingDeclSpec*) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1074:14
#17 0xf2f617e0 in 
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr&, 
clang::Sema::ModuleImportState&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:763:12
#18 0xf2f55874 in clang::ParseAST(clang::Sema&, bool, bool) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseAST.cpp:163:20
#19 0xefc9a774 in clang::FrontendAction::Execute() 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Frontend/FrontendAction.cpp:1078:8
#20 0xefbc05fc in 
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:1062:33
#21 0xefe8a540 in 
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:280:25
#22 0xe8cc18e0 in cc1_main(llvm::ArrayRef, char const*, 
void*) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/cc1_main.cpp:232:15
#23 0xe8cbac68 in ExecuteCC1Tool(llvm::SmallVectorImpl&, 
llvm::ToolContext const&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/driver.cpp:215:12
#24 0xe8cb94a0 in clang_main(int, char**, llvm::ToolContext const&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/driver.cpp:256:12
#25 0xe8cd574c in main 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm_build_asan/tools/clang/tools/driver/clang-driver.cpp:17:10
#26 0xffff92d27580  (/lib/aarch64-linux-gnu/libc.so.6+0x27580) (BuildId: 
605b0f51a62b4c7b7370930d1cd7d395aac51429)
#27 0x92d27654 in __libc_start_main 
(/lib/aarch64-linux-gnu/libc.so.6+0x27654) (BuildId: 
605b0f51a62b4c7b7370930d1cd7d395aac51429)
#28 0xe8bd8e2c in _start 
(/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm_build_asan/bin/clang-19+0xbcc8e2c)
SUMMARY: AddressSanitizer: 6000 byte(s) leaked in 30 allocation(s).
```

https://github.com/llvm/llvm-project/pull/90786
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Attributes] Support Attributes being declared as supporting an experimental late parsing mode "extension" (PR #88596)

2024-05-17 Thread Dan Liew via cfe-commits
mp;, clang::ParsingDeclSpec*, clang::AccessSpecifier) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1271:12
#16 0xf2f663e4 in 
clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, 
clang::ParsedAttributes&, clang::ParsingDeclSpec*) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:1074:14
#17 0xf2f617e0 in 
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr&, 
clang::Sema::ModuleImportState&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/Parser.cpp:763:12
#18 0xf2f55874 in clang::ParseAST(clang::Sema&, bool, bool) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Parse/ParseAST.cpp:163:20
#19 0xefc9a774 in clang::FrontendAction::Execute() 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Frontend/FrontendAction.cpp:1078:8
#20 0xefbc05fc in 
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:1062:33
#21 0xefe8a540 in 
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:280:25
#22 0xe8cc18e0 in cc1_main(llvm::ArrayRef, char const*, 
void*) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/cc1_main.cpp:232:15
#23 0xe8cbac68 in ExecuteCC1Tool(llvm::SmallVectorImpl&, 
llvm::ToolContext const&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/driver.cpp:215:12
#24 0xe8cb94a0 in clang_main(int, char**, llvm::ToolContext const&) 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/driver/driver.cpp:256:12
#25 0xe8cd574c in main 
/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm_build_asan/tools/clang/tools/driver/clang-driver.cpp:17:10
#26 0xffff92d27580  (/lib/aarch64-linux-gnu/libc.so.6+0x27580) (BuildId: 
605b0f51a62b4c7b7370930d1cd7d395aac51429)
#27 0x92d27654 in __libc_start_main 
(/lib/aarch64-linux-gnu/libc.so.6+0x27654) (BuildId: 
605b0f51a62b4c7b7370930d1cd7d395aac51429)
#28 0xe8bd8e2c in _start 
(/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm_build_asan/bin/clang-19+0xbcc8e2c)
SUMMARY: AddressSanitizer: 6000 byte(s) leaked in 30 allocation(s).
```

https://github.com/llvm/llvm-project/pull/88596
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] 1e9324a - [lldb] Namespace SBSourceLanguageName (NFC)

2024-05-17 Thread Jonas Devlieghere via lldb-commits

Author: Jonas Devlieghere
Date: 2024-05-17T18:43:09-07:00
New Revision: 1e9324a8c734aaa933d2672522cc22d5022c6200

URL: 
https://github.com/llvm/llvm-project/commit/1e9324a8c734aaa933d2672522cc22d5022c6200
DIFF: 
https://github.com/llvm/llvm-project/commit/1e9324a8c734aaa933d2672522cc22d5022c6200.diff

LOG: [lldb] Namespace SBSourceLanguageName (NFC)

Added: 


Modified: 
lldb/include/lldb/API/SBExpressionOptions.h
lldb/source/API/SBExpressionOptions.cpp

Removed: 




diff  --git a/lldb/include/lldb/API/SBExpressionOptions.h 
b/lldb/include/lldb/API/SBExpressionOptions.h
index 19c416d0f3bcb..a9e929a4c0bd9 100644
--- a/lldb/include/lldb/API/SBExpressionOptions.h
+++ b/lldb/include/lldb/API/SBExpressionOptions.h
@@ -71,7 +71,7 @@ class LLDB_API SBExpressionOptions {
   /// Set the language using a pair of language code and version as
   /// defined by the DWARF 6 specification.
   /// WARNING: These codes may change until DWARF 6 is finalized.
-  void SetLanguage(SBSourceLanguageName name, uint32_t version);
+  void SetLanguage(lldb::SBSourceLanguageName name, uint32_t version);
 
 #ifndef SWIG
   void SetCancelCallback(lldb::ExpressionCancelCallback callback, void *baton);

diff  --git a/lldb/source/API/SBExpressionOptions.cpp 
b/lldb/source/API/SBExpressionOptions.cpp
index ce686112ff719..15ed403eaaea1 100644
--- a/lldb/source/API/SBExpressionOptions.cpp
+++ b/lldb/source/API/SBExpressionOptions.cpp
@@ -156,7 +156,7 @@ void SBExpressionOptions::SetLanguage(lldb::LanguageType 
language) {
   m_opaque_up->SetLanguage(language);
 }
 
-void SBExpressionOptions::SetLanguage(SBSourceLanguageName name,
+void SBExpressionOptions::SetLanguage(lldb::SBSourceLanguageName name,
   uint32_t version) {
   LLDB_INSTRUMENT_VA(this, name, version);
 



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[jenkinsci/configuration-as-code-plugin] 92c600: Update plugin-bom.version to v3056

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: 
refs/heads/updatecli_master_826cf2c93e438e11e9a7fc0479c71d12103331eed6633a5604ad389619ebb800
  Home:   https://github.com/jenkinsci/configuration-as-code-plugin
  Commit: 92c6008cd46ea88d115771f9125d219af10f51de
  
https://github.com/jenkinsci/configuration-as-code-plugin/commit/92c6008cd46ea88d115771f9125d219af10f51de
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Update plugin-bom.version to v3056



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/configuration-as-code-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/configuration-as-code-plugin/push/refs/heads/updatecli_master_826cf2c93e438e11e9a7fc0479c71d12103331eed6633a5604ad389619ebb800/df55ce-92c600%40github.com.


[jenkinsci/configuration-as-code-plugin]

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/heads/renovate/major-plugin-bom.version
  Home:   https://github.com/jenkinsci/configuration-as-code-plugin

To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/configuration-as-code-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/configuration-as-code-plugin/push/refs/heads/renovate/major-plugin-bom.version/45cc24-00%40github.com.


[jenkinsci/configuration-as-code-plugin] 92c600: Update plugin-bom.version to v3056

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/heads/master
  Home:   https://github.com/jenkinsci/configuration-as-code-plugin
  Commit: 92c6008cd46ea88d115771f9125d219af10f51de
  
https://github.com/jenkinsci/configuration-as-code-plugin/commit/92c6008cd46ea88d115771f9125d219af10f51de
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Update plugin-bom.version to v3056



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/configuration-as-code-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/configuration-as-code-plugin/push/refs/heads/master/df55ce-92c600%40github.com.


[clang] [OpenCL] Fix an infinite loop in builidng AddrSpaceQualType (PR #92612)

2024-05-17 Thread Changpeng Fang via cfe-commits


@@ -537,8 +537,9 @@ void AggExprEmitter::EmitArrayInit(Address DestPtr, 
llvm::ArrayType *AType,
   elementType.isTriviallyCopyableType(CGF.getContext())) {
 CodeGen::CodeGenModule  = CGF.CGM;
 ConstantEmitter Emitter(CGF);
+Qualifiers Quals;
 QualType GVArrayQTy = CGM.getContext().getAddrSpaceQualType(
-CGM.getContext().removeAddrSpaceQualType(ArrayQTy),
+CGM.getContext().getUnqualifiedArrayType(ArrayQTy, Quals),

changpeng wrote:

> Something like that, yes.

Thanks. Updated. Should be closer!

https://github.com/llvm/llvm-project/pull/92612
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [OpenCL] Fix an infinite loop in builidng AddrSpaceQualType (PR #92612)

2024-05-17 Thread Changpeng Fang via cfe-commits
3 @@ QualType ASTContext::removeAddrSpaceQualType(QualType T) 
const {
   if (!T.hasAddressSpace())
 return T;
 
+  // For arrays, strip the qualifier off the element type, then reconstruct the
+  // array type
+  if (T.getTypePtr()->isArrayType()) {
+Qualifiers Qualfs;
+return getUnqualifiedArrayType(T, Qualfs);
+  }
+
   // If we are composing extended qualifiers together, merge together
   // into one ExtQuals node.
   QualifierCollector Quals;
@@ -6093,7 +6100,7 @@ CanQualType ASTContext::getCanonicalParamType(QualType T) 
const {
 }
 
 QualType ASTContext::getUnqualifiedArrayType(QualType type,
- Qualifiers ) {
+ Qualifiers ) const {
   SplitQualType splitType = type.getSplitUnqualifiedType();
 
   // FIXME: getSplitUnqualifiedType() actually walks all the way to
diff --git a/clang/lib/CodeGen/CGExprAgg.cpp b/clang/lib/CodeGen/CGExprAgg.cpp
index 53ce133e8cbc6..6172eb9cdc1bb 100644
--- a/clang/lib/CodeGen/CGExprAgg.cpp
+++ b/clang/lib/CodeGen/CGExprAgg.cpp
@@ -537,9 +537,8 @@ void AggExprEmitter::EmitArrayInit(Address DestPtr, 
llvm::ArrayType *AType,
   elementType.isTriviallyCopyableType(CGF.getContext())) {
 CodeGen::CodeGenModule  = CGF.CGM;
 ConstantEmitter Emitter(CGF);
-Qualifiers Quals;
 QualType GVArrayQTy = CGM.getContext().getAddrSpaceQualType(
-CGM.getContext().getUnqualifiedArrayType(ArrayQTy, Quals),
+CGM.getContext().removeAddrSpaceQualType(ArrayQTy),
 CGM.GetGlobalConstantAddressSpace());
 LangAS AS = GVArrayQTy.getAddressSpace();
 if (llvm::Constant *C =

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[jenkinsci/configuration-as-code-plugin]

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/renovate/branches/renovate/major-plugin-bom.version
  Home:   https://github.com/jenkinsci/configuration-as-code-plugin

To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/configuration-as-code-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/configuration-as-code-plugin/push/refs/renovate/branches/renovate/major-plugin-bom.version/1e4426-00%40github.com.


[jenkinsci/configuration-as-code-plugin] 45cc24: Update plugin-bom.version to v3056

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/heads/renovate/major-plugin-bom.version
  Home:   https://github.com/jenkinsci/configuration-as-code-plugin
  Commit: 45cc244b15890e240ee1f987b2f8f55e1781b52c
  
https://github.com/jenkinsci/configuration-as-code-plugin/commit/45cc244b15890e240ee1f987b2f8f55e1781b52c
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Update plugin-bom.version to v3056



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/configuration-as-code-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/configuration-as-code-plugin/push/refs/heads/renovate/major-plugin-bom.version/4c3628-45cc24%40github.com.


[jenkinsci/configuration-as-code-plugin] 1e4426: Update plugin-bom.version to v3056

2024-05-17 Thread 'renovate[bot]' via Jenkins Commits
  Branch: refs/renovate/branches/renovate/major-plugin-bom.version
  Home:   https://github.com/jenkinsci/configuration-as-code-plugin
  Commit: 1e4426954d46db8ca2713cc9cc5b4f7312a23f80
  
https://github.com/jenkinsci/configuration-as-code-plugin/commit/1e4426954d46db8ca2713cc9cc5b4f7312a23f80
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2024-05-18 (Sat, 18 May 2024)

  Changed paths:
M pom.xml

  Log Message:
  ---
  Update plugin-bom.version to v3056



To unsubscribe from these emails, change your notification settings at 
https://github.com/jenkinsci/configuration-as-code-plugin/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-commits+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-commits/jenkinsci/configuration-as-code-plugin/push/refs/renovate/branches/renovate/major-plugin-bom.version/00-1e4426%40github.com.


[Lldb-commits] [lldb] [lldb] Add the word "backtrace" to bt help string (PR #92618)

2024-05-17 Thread via lldb-commits

jimingham wrote:

I'm fine with adding the to be searched for term to the alias help.

https://github.com/llvm/llvm-project/pull/92618
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Add the word "backtrace" to bt help string (PR #92618)

2024-05-17 Thread via lldb-commits

jimingham wrote:

In simple aliases, apropos could get this right itself by resolving the command 
the alias points to and if THAT help string had the searched term, list the 
alias.  But bt is an alias to a regex command.  Again, you could look through 
all the branches of the regex command finding their commands and do the same.  
But you'd really want to report `bt` not `_regexp-bt`.  That's getting a bit 
involved.

https://github.com/llvm/llvm-project/pull/92618
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[clang] [BoundsSafety] Add `-fexperimental-bounds-safety` CC1 and language option and use it to tweak `counted_by`'s semantics (PR #92623)

2024-05-17 Thread Dan Liew via cfe-commits

https://github.com/delcypher edited 
https://github.com/llvm/llvm-project/pull/92623
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [BoundsSafety] Add `-fexperimental-bounds-safety` CC1 and language option and use it to tweak `counted_by`'s semantics (PR #92623)

2024-05-17 Thread Dan Liew via cfe-commits
;
+  // expected-error@+1{{'counted_by' cannot be applied to an array with 
element of unknown size because 'struct has_annotated_VLA' is a struct type 
with a flexible array member}}
+  struct has_annotated_VLA Arr[] __counted_by(count);
+};
+
+struct buffer_of_const_structs_with_annotated_vla {
+  int count;
+  // Make sure the `const` qualifier is printed when printing the element type.
+  // expected-error@+1{{'counted_by' cannot be applied to an array with 
element of unknown size because 'const struct has_annotated_VLA' is a struct 
type with a flexible array member}}
+  const struct has_annotated_VLA Arr[] __counted_by(count);
+};

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [BoundsSafety] Add `-fexperimental-bounds-safety` CC1 and language option and use it to tweak `counted_by`'s semantics (PR #92623)

2024-05-17 Thread via cfe-commits
 int count;
+  // Make sure the `const` qualifier is printed when printing the element type.
+  // expected-error@+1{{'counted_by' cannot be applied to an array with 
element of unknown size because 'const struct has_annotated_VLA' is a struct 
type with a flexible array member}}
+  const struct has_annotated_VLA Arr[] __counted_by(count);
+};

``




https://github.com/llvm/llvm-project/pull/92623
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [BoundsSafety] Add `-fexperimental-bounds-safety` CC1 and language option and use it to tweak `counted_by`'s semantics (PR #92623)

2024-05-17 Thread Dan Liew via cfe-commits

delcypher wrote:

This is based on #70480 but removes the driver part of the change and makes the 
flag a CC1 flag only.

https://github.com/llvm/llvm-project/pull/92623
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [BoundsSafety] Add `-fexperimental-bounds-safety` CC1 and language option and use it to tweak `counted_by`'s semantics (PR #92623)

2024-05-17 Thread Dan Liew via cfe-commits
ang/test/Sema/attr-counted-by-bounds-safety-vlas.c
@@ -0,0 +1,37 @@
+// RUN: %clang_cc1 -fsyntax-only -fexperimental-bounds-safety -verify %s
+//
+// This is a portion of the `attr-counted-by-vla.c` test but is checked
+// under the semantics of `-fexperimental-bounds-safety` which has different
+// behavior.
+
+#define __counted_by(f)  __attribute__((counted_by(f)))
+
+struct has_unannotated_VLA {
+  int count;
+  char buffer[];
+};
+
+struct has_annotated_VLA {
+  int count;
+  char buffer[] __counted_by(count);
+};
+
+struct buffer_of_structs_with_unnannotated_vla {
+  int count;
+  // expected-error@+1{{'counted_by' cannot be applied to an array with 
element of unknown size because 'struct has_unannotated_VLA' is a struct type 
with a flexible array member}}
+  struct has_unannotated_VLA Arr[] __counted_by(count);
+};
+
+
+struct buffer_of_structs_with_annotated_vla {
+  int count;
+  // expected-error@+1{{'counted_by' cannot be applied to an array with 
element of unknown size because 'struct has_annotated_VLA' is a struct type 
with a flexible array member}}
+  struct has_annotated_VLA Arr[] __counted_by(count);
+};
+
+struct buffer_of_const_structs_with_annotated_vla {
+  int count;
+  // Make sure the `const` qualifier is printed when printing the element type.
+  // expected-error@+1{{'counted_by' cannot be applied to an array with 
element of unknown size because 'const struct has_annotated_VLA' is a struct 
type with a flexible array member}}
+  const struct has_annotated_VLA Arr[] __counted_by(count);
+};

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [Clang][CWG1815] Support lifetime extension of temporary created by aggregate initialization using a default member initializer (PR #87933)

2024-05-17 Thread via cfe-commits

yronglin wrote:

Thanks for the new test case, it's fixed with 
https://github.com/llvm/llvm-project/pull/92527

https://github.com/llvm/llvm-project/pull/87933
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [BoundsSafety] Allow 'counted_by' attribute on pointers in structs in C (PR #90786)

2024-05-17 Thread Bill Wendling via cfe-commits

bwendling wrote:

Thank you. I wrote to the author. I hope he'll be able to come up with a change 
on his end. Or at least an explanation that makes sense :-)

https://github.com/llvm/llvm-project/pull/90786
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [OpenCL] Fix an infinite loop in builidng AddrSpaceQualType (PR #92612)

2024-05-17 Thread Eli Friedman via cfe-commits


@@ -537,8 +537,9 @@ void AggExprEmitter::EmitArrayInit(Address DestPtr, 
llvm::ArrayType *AType,
   elementType.isTriviallyCopyableType(CGF.getContext())) {
 CodeGen::CodeGenModule  = CGF.CGM;
 ConstantEmitter Emitter(CGF);
+Qualifiers Quals;
 QualType GVArrayQTy = CGM.getContext().getAddrSpaceQualType(
-CGM.getContext().removeAddrSpaceQualType(ArrayQTy),
+CGM.getContext().getUnqualifiedArrayType(ArrayQTy, Quals),

efriedma-quic wrote:

Something like that, yes.

https://github.com/llvm/llvm-project/pull/92612
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [WIP] [lldb][Progress] Report progress when completing types from DWARF (PR #91452)

2024-05-17 Thread Jonas Devlieghere via lldb-commits

JDevlieghere wrote:

> @JDevlieghere I know we discussed this in the past and it made sense to me, 
> but I'm right now failing to connect the dots. Why couldn't the same 
> single-line interface be used to print nested events something like this?
> 
> ```
> Evaluating expression > Type Checking > Importing "vector" > Finding 
> "begin" in Foo.o
> ```

Shadowing happens with _unrelated_ events. The problem is that you don't want 
to show something like this:

```
Evaluating expression > Type Checking > Some unrelated background operation > 
Importing "vector"
```

Or let's say you're doing some work in parallel:

```
Doing some work on thread 1 > Doing some work on thread 2 > Some nested work on 
thread 2 > Some nested work on thread 1
```

For a single event, you can update it, as we do for importing the Swift 
modules. For your example, today you can show something like this:

```
Evaluating expression: Type Checking
Evaluating expression: Importing "vector"
Evaluating expression: Finding "begin" in Foo.o 
```

Compared to your approach, you lose out on the additional context that's not 
part of the title/category before the colon. On the other hand, that's how we 
aggregate events in the progress manager.

If we want to support nested _related_ events, I think that wouldn't be too 
hard. An event could have a parent event ID and LLDB could append events that 
belong to the currently displayed event. But we'd still shadow _unrelated_ 
events. 

https://github.com/llvm/llvm-project/pull/91452
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Add the word "backtrace" to bt help string (PR #92618)

2024-05-17 Thread Adrian Prantl via lldb-commits

https://github.com/adrian-prantl approved this pull request.


https://github.com/llvm/llvm-project/pull/92618
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Refactor string manipulation in Debugger.cpp (#91209) (PR #92565)

2024-05-17 Thread Adrian Prantl via lldb-commits


@@ -2067,7 +2067,7 @@ void Debugger::HandleProgressEvent(const lldb::EventSP 
_sp) {
   const uint32_t term_width = GetTerminalWidth();
   const uint32_t ellipsis = 3;
   if (message.size() + ellipsis >= term_width)
-message = message.substr(0, term_width - ellipsis);
+message.resize(message.size() - ellipsis);

adrian-prantl wrote:

Can you explain why `term_width` does not appear in the new patch?

https://github.com/llvm/llvm-project/pull/92565
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [WIP] [lldb][Progress] Report progress when completing types from DWARF (PR #91452)

2024-05-17 Thread Adrian Prantl via lldb-commits

adrian-prantl wrote:

> No, on the terminal it works that way by design. Unless you switch to 
> something that takes full control of your screen (like curses) there's no 
> good way to display multiple progress events at the same time and not doing 
> the shadowing (i.e. letting more recent progress events through) defeats the 
> purpose of highlighting long running operations.

@JDevlieghere I know we discussed this in the past and it made sense to me, but 
I'm right now failing to connect the dots. Why couldn't the same single-line 
interface be used to print nested events something like this?

```
Evaluating expression > Type Checking > Importing "vector" > Finding 
"begin" in Foo.o
```

https://github.com/llvm/llvm-project/pull/91452
___________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Add the word "backtrace" to bt help string (PR #92618)

2024-05-17 Thread Dave Lee via lldb-commits

kastiglione wrote:

Open to alternative rewordings that include "backtrace".

https://github.com/llvm/llvm-project/pull/92618
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] [lldb] Add the word "backtrace" to bt help string (PR #92618)

2024-05-17 Thread Dave Lee via lldb-commits

https://github.com/kastiglione edited 
https://github.com/llvm/llvm-project/pull/92618
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[clang] [llvm] [CMake][Release] Use the TXZ cpack generator for binaries (PR #90138)

2024-05-17 Thread Tom Stellard via cfe-commits

https://github.com/tstellar edited 
https://github.com/llvm/llvm-project/pull/90138
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang] [clang-format]: Annotate colons found in inline assembly (PR #92617)

2024-05-17 Thread Gedare Bloom via cfe-commits

gedare wrote:

With the patch:
```
$ echo " asm ( a : );" | clang-format -debug
...
 M=0 C=1 T=InlineASMColon S=1 F=0 B=0 BK=0 P=43 Name=colon L=7 PPK=2 
FakeLParens= FakeRParens=1 II=0x0 Text=':'
...
$ echo " asm { a : };" | clang-format -debug
...
 M=0 C=1 T=InlineASMColon S=0 F=1 B=0 BK=0 P=43 Name=colon L=7 PPK=2 
FakeLParens= FakeRParens=1 II=0x0 Text=':'
```

https://github.com/llvm/llvm-project/pull/92617
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [lldb] Add the word "backtrace" to bt help string (PR #92618)

2024-05-17 Thread via lldb-commits

llvmbot wrote:




@llvm/pr-subscribers-lldb

Author: Dave Lee (kastiglione)


Changes



---
Full diff: https://github.com/llvm/llvm-project/pull/92618.diff


2 Files Affected:

- (modified) lldb/source/Commands/CommandObjectThread.cpp (+2-2) 
- (modified) lldb/source/Interpreter/CommandInterpreter.cpp (+5-5) 


``diff
diff --git a/lldb/source/Commands/CommandObjectThread.cpp 
b/lldb/source/Commands/CommandObjectThread.cpp
index 4397ee14ea074..db96ee2cec383 100644
--- a/lldb/source/Commands/CommandObjectThread.cpp
+++ b/lldb/source/Commands/CommandObjectThread.cpp
@@ -114,8 +114,8 @@ class CommandObjectThreadBacktrace : public 
CommandObjectIterateOverThreads {
   CommandObjectThreadBacktrace(CommandInterpreter )
   : CommandObjectIterateOverThreads(
 interpreter, "thread backtrace",
-"Show thread call stacks.  Defaults to the current thread, thread "
-"indexes can be specified as arguments.\n"
+"Show backtraces of thread call stacks.  Defaults to the current "
+"thread, thread indexes can be specified as arguments.\n"
 "Use the thread-index \"all\" to see all threads.\n"
 "Use the thread-index \"unique\" to see threads grouped by unique "
 "call stacks.\n"
diff --git a/lldb/source/Interpreter/CommandInterpreter.cpp 
b/lldb/source/Interpreter/CommandInterpreter.cpp
index 4c58ecc3c1848..3e470a6989bbf 100644
--- a/lldb/source/Interpreter/CommandInterpreter.cpp
+++ b/lldb/source/Interpreter/CommandInterpreter.cpp
@@ -816,11 +816,11 @@ void CommandInterpreter::LoadCommandDictionary() {
   std::unique_ptr bt_regex_cmd_up(
   new CommandObjectRegexCommand(
   *this, "_regexp-bt",
-  "Show the current thread's call stack.  Any numeric argument "
-  "displays at most that many "
-  "frames.  The argument 'all' displays all threads.  Use 'settings"
-  " set frame-format' to customize the printing of individual frames "
-  "and 'settings set thread-format' to customize the thread header.",
+  "Show backtrace of the current thread's call stack.  Any numeric "
+  "argument displays at most that many frames.  The argument 'all' "
+  "displays all threads.  Use 'settings set frame-format' to customize 
"
+  "the printing of individual frames and 'settings set thread-format' "
+  "to customize the thread header.",
   "bt [ | all]", 0, false));
   if (bt_regex_cmd_up) {
 // accept but don't document "bt -c " -- before bt was a regex

``




https://github.com/llvm/llvm-project/pull/92618
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[clang] [OpenCL] Fix an infinite loop in builidng AddrSpaceQualType (PR #92612)

2024-05-17 Thread Changpeng Fang via cfe-commits


@@ -537,8 +537,9 @@ void AggExprEmitter::EmitArrayInit(Address DestPtr, 
llvm::ArrayType *AType,
   elementType.isTriviallyCopyableType(CGF.getContext())) {
 CodeGen::CodeGenModule  = CGF.CGM;
 ConstantEmitter Emitter(CGF);
+Qualifiers Quals;
 QualType GVArrayQTy = CGM.getContext().getAddrSpaceQualType(
-CGM.getContext().removeAddrSpaceQualType(ArrayQTy),
+CGM.getContext().getUnqualifiedArrayType(ArrayQTy, Quals),

changpeng wrote:

Do you mean we should actually fix removeAddrSpaceQualType? Somewhere inside 
removeAddrSpaceQualType, we
should use getUnqualifiedArrayType if it is an arrayType, and 
getSingleStepDesugaredType othereise?
I have to admit that I have no experience in this field, so I am relying on you 
and @svenvh to move on for a reasonable fix. Thanks.

https://github.com/llvm/llvm-project/pull/92612
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[Lldb-commits] [lldb] [lldb] Add the word "backtrace" to bt help string (PR #92618)

2024-05-17 Thread Dave Lee via lldb-commits

https://github.com/kastiglione created 
https://github.com/llvm/llvm-project/pull/92618

None

>From 1564ae4ce3a56fc1f11e03e82e0da1e01f25f3ed Mon Sep 17 00:00:00 2001
From: Dave Lee 
Date: Thu, 16 May 2024 14:01:22 -0700
Subject: [PATCH] [lldb] Add the word "backtrace" to bt help string

---
 lldb/source/Commands/CommandObjectThread.cpp   |  4 ++--
 lldb/source/Interpreter/CommandInterpreter.cpp | 10 +-
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/lldb/source/Commands/CommandObjectThread.cpp 
b/lldb/source/Commands/CommandObjectThread.cpp
index 4397ee14ea074..db96ee2cec383 100644
--- a/lldb/source/Commands/CommandObjectThread.cpp
+++ b/lldb/source/Commands/CommandObjectThread.cpp
@@ -114,8 +114,8 @@ class CommandObjectThreadBacktrace : public 
CommandObjectIterateOverThreads {
   CommandObjectThreadBacktrace(CommandInterpreter )
   : CommandObjectIterateOverThreads(
 interpreter, "thread backtrace",
-"Show thread call stacks.  Defaults to the current thread, thread "
-"indexes can be specified as arguments.\n"
+"Show backtraces of thread call stacks.  Defaults to the current "
+"thread, thread indexes can be specified as arguments.\n"
 "Use the thread-index \"all\" to see all threads.\n"
 "Use the thread-index \"unique\" to see threads grouped by unique "
 "call stacks.\n"
diff --git a/lldb/source/Interpreter/CommandInterpreter.cpp 
b/lldb/source/Interpreter/CommandInterpreter.cpp
index 4c58ecc3c1848..3e470a6989bbf 100644
--- a/lldb/source/Interpreter/CommandInterpreter.cpp
+++ b/lldb/source/Interpreter/CommandInterpreter.cpp
@@ -816,11 +816,11 @@ void CommandInterpreter::LoadCommandDictionary() {
   std::unique_ptr bt_regex_cmd_up(
   new CommandObjectRegexCommand(
   *this, "_regexp-bt",
-  "Show the current thread's call stack.  Any numeric argument "
-  "displays at most that many "
-  "frames.  The argument 'all' displays all threads.  Use 'settings"
-  " set frame-format' to customize the printing of individual frames "
-  "and 'settings set thread-format' to customize the thread header.",
+  "Show backtrace of the current thread's call stack.  Any numeric "
+  "argument displays at most that many frames.  The argument 'all' "
+  "displays all threads.  Use 'settings set frame-format' to customize 
"
+  "the printing of individual frames and 'settings set thread-format' "
+  "to customize the thread header.",
   "bt [ | all]", 0, false));
   if (bt_regex_cmd_up) {
 // accept but don't document "bt -c " -- before bt was a regex

___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[llvm-branch-commits] [clang] release/18.x: [clang] Don't assume location of compiler-rt for OpenBSD (#92183) (PR #92293)

2024-05-17 Thread Tom Stellard via llvm-branch-commits

https://github.com/tstellar closed 
https://github.com/llvm/llvm-project/pull/92293
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


[llvm-branch-commits] [clang] 48c1364 - [clang] Don't assume location of compiler-rt for OpenBSD (#92183)

2024-05-17 Thread Tom Stellard via llvm-branch-commits

Author: John Ericson
Date: 2024-05-17T16:26:37-07:00
New Revision: 48c1364200b5649dda2f9ccbe382b0bd908b99de

URL: 
https://github.com/llvm/llvm-project/commit/48c1364200b5649dda2f9ccbe382b0bd908b99de
DIFF: 
https://github.com/llvm/llvm-project/commit/48c1364200b5649dda2f9ccbe382b0bd908b99de.diff

LOG: [clang] Don't assume location of compiler-rt for OpenBSD (#92183)

If the `/usr/lib/...` path where compiler-rt is conventionally installed
on OpenBSD does not exist, fall back to the regular logic to find it.

This is a minimal change to allow OpenBSD cross compilation from a
toolchain that doesn't adopt all of OpenBSD's monorepo's conventions.

(cherry picked from commit be10746f3a4381456eb5082a968766201c17ab5d)

Added: 


Modified: 
clang/lib/Driver/ToolChains/OpenBSD.cpp

Removed: 




diff  --git a/clang/lib/Driver/ToolChains/OpenBSD.cpp 
b/clang/lib/Driver/ToolChains/OpenBSD.cpp
index fd6aa4d7e6844..00b6c520fcdd7 100644
--- a/clang/lib/Driver/ToolChains/OpenBSD.cpp
+++ b/clang/lib/Driver/ToolChains/OpenBSD.cpp
@@ -371,7 +371,8 @@ std::string OpenBSD::getCompilerRT(const ArgList , 
StringRef Component,
   if (Component == "builtins") {
 SmallString<128> Path(getDriver().SysRoot);
 llvm::sys::path::append(Path, "/usr/lib/libcompiler_rt.a");
-return std::string(Path);
+if (getVFS().exists(Path))
+  return std::string(Path);
   }
   SmallString<128> P(getDriver().ResourceDir);
   std::string CRTBasename =



___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits


  1   2   3   4   5   6   7   8   9   10   >