[clang] [clang][bytecode] Check array sizes against step limit (PR #137679)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137679 None >From 4a404de04669d20963e512e212aae23781fd2703 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 28 Apr 2025 19:56:39 +0200 Subject: [PATCH] [clang][bytecode] Check array sizes again

[clang] [clang][bytecode][NFC] Stop using Function in InterpBuiltin (PR #137597)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137597 Prepare for the ultimate removal of Function instances for builtin functions. >From 33395a25a1acdda8fbcf0ab26cd0c150b2728df2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 28 Apr 2025

[clang] [clang][bytecode][NFC] Stop using Function in InterpBuiltin (PR #137597)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137597 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Don't create function frames for builtin calls (PR #137607)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137607 They don't have local variables etc. so don't create frames for them. >From 9ce67008616c3fc8f59f1071fdaede24227cd678 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 28 Apr 2025 11:40:36

[clang] [clang][bytecode] Fix two small builtin_constant_p cases (PR #137587)

2025-04-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137587 Only accept string literals if we're pointing to the first index and do accept complex literals. >From 2005584f52d7fa2bd964eed80303a8cc1a6dda4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Dat

[clang] [clang][TSA] Make RequiresCapability a DeclOrType attribute (PR #67095)

2025-04-23 Thread Timm Baeder via cfe-commits
@@ -136,6 +136,17 @@ int main(void) { // Cleanup happens automatically -> no warning. } + /// Function pointers + { +int __attribute__((requires_capability(&mu1))) (*function_ptr)(int) = Foo_fun1; + +function_ptr(5); // expected-warning {{calling function 'fun

[clang] [clang][bytecode] Diagnose comparing pointers to fields... (PR #137159)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/137159 >From a489e3957eeb23fc38758c9a6670a3abd082321d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 24 Apr 2025 13:19:25 +0200 Subject: [PATCH] [clang][bytecode] Diagnose comparing pointers t

[clang] [clang][bytecode] Emit diagnostics from GetGlobalUnchecked (PR #137203)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137203 If the global is uninitialized. >From 87377cd713004492ca9c989e1e7de806ba972ebf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 24 Apr 2025 17:46:49 +0200 Subject: [PATCH] [clang][byteco

[clang] [clang][bytecode] Diagnose comparing pointers to fields... (PR #137159)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137159 ... with different access specifiers. >From a4c3afca1ef1d029aea8c70d83195100e48b39e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 24 Apr 2025 13:19:25 +0200 Subject: [PATCH] [clang][

[clang] [clang][bytecode] Diagnose comparing pointers to fields... (PR #137159)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137159 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Diagnose heap-allocated array elem pointers... (PR #137523)

2025-04-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137523 ... as "pointer to subobject". >From af8eadcf3930667b5b6b215df8312c21e9f4381a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 27 Apr 2025 17:33:13 +0200 Subject: [PATCH] [clang][byteco

[clang] [clang][bytecode] Diagnose PointerToIntegral casts (PR #137444)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137444 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Allow memory leaks before C++20 (PR #137445)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137445 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Diagnose destroying already dead locals (PR #137357)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137357 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Check for dummy pointers when calling pseudo dtors (PR #137437)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137437 None >From 043c655ece82e3a167745000a102911cee56143f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 26 Apr 2025 04:53:56 +0200 Subject: [PATCH] [clang][bytecode] Check for dummy pointer

[clang] [clang][bytecode] Diagnose delete of non-heap-allocated blocks (PR #137475)

2025-04-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137475 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Don't ignore discarded ArraySubScriptExprs (PR #137526)

2025-04-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137526 We need to evaluate them since the index might be out of bounds. >From f472d88b60eae7af922e4cc8350bafeeac79ffaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 27 Apr 2025 18:15:47 +020

[clang] [clang][bytecode] Diagnose heap-allocated array elem pointers... (PR #137523)

2025-04-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137523 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Check for global decls in destructors (PR #137525)

2025-04-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137525 Destructors can't be called on global variables. >From 6cae24d12cd68d9a4227dfbdb2566fe7a605e3f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 27 Apr 2025 17:51:57 +0200 Subject: [PATC

[clang] [clang][bytecode] Check for global decls in destructors (PR #137525)

2025-04-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137525 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Don't ignore discarded ArraySubScriptExprs (PR #137526)

2025-04-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137526 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][TSA] Make RequiresCapability a DeclOrType attribute (PR #67095)

2025-04-23 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/67095 >From 62f499be459107de97a697f42a04f1888af1218b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 22 Sep 2023 08:42:05 +0200 Subject: [PATCH] [clang][TSA] Make RequiresCapability a DeclOrTyp

[clang] [clang][bytecode] Refine diagnostics for volatile reads (PR #136857)

2025-04-23 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/136857 Differentiate between a volarile read via a lvalue-to-rvalue cast of a volatile qualified subexpression and a read from a pointer with a volatile base object. >From 3fd82eb6e494491e9621122db910a747682d3737 Mon

[clang] [clang][bytecode] Refine diagnostics for volatile reads (PR #136857)

2025-04-23 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/136857 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Mark constructors with invalid initializers as invalid (PR #137773)

2025-04-30 Thread Timm Baeder via cfe-commits
@@ -2,16 +2,20 @@ // RUN: %clang_cc1 -Wreorder -fsyntax-only -verify -std=c++98 %s // RUN: %clang_cc1 -Wreorder -fsyntax-only -verify -std=c++11 %s -class A { +class A { + // expected-note@-1 {{candidate constructor}} +#if __cplusplus >= 201103L // C++11 or later + // expec

[clang] [clang][bytecode] Only print ptr/reference types via toAPValue() (PR #137965)

2025-04-30 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137965 Otherwise, convert them to an RValue to print them. This fixes the printing of e.g. complex values. Rate limit · GitHub body { background-color: #f6f8fa;

[clang] [clang][bytecode] Fix checking for integer overflow (PR #137962)

2025-04-30 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137962 We need to evaluate both the True/False expressions of a conditional operator as well as the LHS/RHS of a binary operator in more cases. >From 5f3b5f7c6198b73a6182a6034fe3aa65a6ffc97f Mon Sep 17 00:00:00 2001

[clang] [clang][bytecode] Only print ptr/reference types via toAPValue() (PR #137965)

2025-04-30 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137965 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Remove obsolete test file (PR #138080)

2025-04-30 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/138080 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode][NFC] Remove unused Context::getStack() (PR #138079)

2025-04-30 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/138079 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Fix checking for integer overflow (PR #137962)

2025-04-30 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137962 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Misc TypeidPointer fixes (PR #135322)

2025-04-10 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/135322 Fix comparing type id pointers, add mor info when print()ing them, use the most derived type in GetTypeidPtr() and the canonically unqualified type when we know the type statically. >From 375f9b8c00e2c4a01f16

[clang] [clang][ast]: Add DynamicAllocLValue and TypeInfoLValue support to APValue::dump(). (PR #135178)

2025-04-11 Thread Timm Baeder via cfe-commits
@@ -738,6 +738,10 @@ void TextNodeDumper::Visit(const APValue &Value, QualType Ty) { else if (const auto *BE = B.dyn_cast()) { OS << BE->getStmtClassName() << ' '; dumpPointer(BE); +} else if (B.is()) { + OS << "TypeInfoLValue"; +} else if (B.is())

[clang] [clang][bytecode] Reject constexpr-unknown pointers from Inc ops (PR #135548)

2025-04-13 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/135548 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Implement __builtin_wmem{cpy, move} (PR #135969)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/135969 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Add missing __builtin_memcpy checks (PR #135975)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/135975 Add a test for type punning and tests and the necessary checks for non-trivially-copyable types and incomplete types. >From 16a4869d46a33d60d12e53a27daad9e742605f20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim

[clang] [clang][bytecode] Implement __builtin_wmem{cpy, move} (PR #135969)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/135969 None >From 3e925a2b07d7720137b0a525b66782f6869cea58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 16 Apr 2025 16:25:44 +0200 Subject: [PATCH] [clang][bytecode] Implement __builtin_wme

[clang] [clang][bytecode] Fix subtracting zero-sized pointers (PR #135929)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr edited https://github.com/llvm/llvm-project/pull/135929 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Explicitly mark constexpr-unknown variables as such (PR #135806)

2025-04-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/135806 >From 038f7cbb3cfa03045e1ccdc10ea68842ec85232c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 14 Apr 2025 17:18:50 +0200 Subject: [PATCH] [clang][bytecode] Explicitly mark constexpr-unk

[clang] [clang][bytecode] Fix subtracting zero-sized pointers (PR #135929)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/135929 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][ExprConst] Diagnose ptr subs with non-zero offset (PR #135938)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/135938 >From 2a868984cb5964fa48b041ca59ccc71cde420f51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 16 Apr 2025 10:34:33 +0200 Subject: [PATCH] [clang][ExprConst] Diagnose ptr subs with non-z

[clang] [clang][bytecode] Enter a non-constant context when revisiting (PR #136104)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/136104 >From 33e4c2f88d8446604c091002c1992b097e3e477c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 17 Apr 2025 09:38:57 +0200 Subject: [PATCH] [clang][bytecode] Enter a non-constant context

[clang] [clang][bytecode] Enter a non-constant context when revisiting (PR #136104)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/136104 Otherwise, things like __builtin_is_constant_evaluated() return the wrong value. >From d55ada6a4b88db3579570a4f1fbd43ae38a715b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 17 Apr 20

[clang] [clang][ast]: Add DynamicAllocLValue and TypeInfoLValue support to APValue::dump(). (PR #135178)

2025-04-14 Thread Timm Baeder via cfe-commits
@@ -738,6 +738,15 @@ void TextNodeDumper::Visit(const APValue &Value, QualType Ty) { else if (const auto *BE = B.dyn_cast()) { OS << BE->getStmtClassName() << ' '; dumpPointer(BE); +} else if (B.is()) { tbaederr wrote: ```suggestion }

[clang] [clang][ast]: Add DynamicAllocLValue and TypeInfoLValue support to APValue::dump(). (PR #135178)

2025-04-14 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr approved this pull request. https://github.com/llvm/llvm-project/pull/135178 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Add source range to 'use of undeclared identifier' diagnostics (PR #117671)

2025-04-16 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/117671 >From c9d681353e118c1c36646fcc89ef223f22bfa7a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 26 Nov 2024 08:44:57 +0100 Subject: [PAT

[clang] [clang][bytecode] Explicitly mark constexpr-unknown variables as such (PR #135806)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/135806 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode][NFC] Remove PT_FnPtr (PR #135947)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/135947 We don't need this anymore since we don't return it from classify() anymore. >From d375892c9ea455512a1a38dc651a1343ed474c5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 16 Apr 2025 1

[clang] [clang][bytecode] Give typeinfo APValues an LValuePath (PR #135948)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/135948 That's what the current interpreter does as well. >From 6ce3dade0fa78ebe20e81fa9546b0917d02fb424 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 16 Apr 2025 12:47:53 +0200 Subject: [PAT

[clang] [clang][ExprConst] Diagnose ptr subs with non-zero offset (PR #135938)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr edited https://github.com/llvm/llvm-project/pull/135938 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode][NFC] Remove PT_FnPtr (PR #135947)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/135947 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Give typeinfo APValues an LValuePath (PR #135948)

2025-04-16 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/135948 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Enter a non-constant context when revisiting (PR #136104)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/136104 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Implement dump() for MemberPointer APValues (PR #136130)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/136130 Print the member pointer decl and the path. >From ae8fac6c80a757a5ee3a0fa6e59d7546f71ce116 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 17 Apr 2025 13:44:50 +0200 Subject: [PATCH] [c

[clang] [clang] Implement dump() for MemberPointer APValues (PR #136130)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/136130 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Reject assignments in C (PR #136126)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/136126 Similar to what the current interpreter does. >From 646321191ac22da6ff4c83031ea995da4a2f8756 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 17 Apr 2025 13:02:45 +0200 Subject: [PATCH]

[clang] [clang][bytecode] Reject assignments in C (PR #136126)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/136126 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Implement dump() for MemberPointer APValues (PR #136130)

2025-04-17 Thread Timm Baeder via cfe-commits
tbaederr wrote: > Can you do the JSONNodeDumper as well so the two stay somewhat in-sync? Looks like that goes through `APValue::printPretty()`, so nothing to do for that. https://github.com/llvm/llvm-project/pull/136130 ___ cfe-commits mailing list

[clang] [clang][ExprConst] Diagnose ptr subs with non-zero offset (PR #135938)

2025-04-17 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/135938 >From 4a7fbbc62ee5b90627d053a641182d62bac38d09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 16 Apr 2025 10:34:33 +0200 Subject: [PATCH] [clang][ExprConst] Diagnose ptr subs with non-z

[clang] [clang][bytecode] Use bytecode interpreter in EvaluateCharRangeAsString (PR #138461)

2025-05-05 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/138461 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Do not warn for serialized builtin or command-line definitions (PR #137306)

2025-05-06 Thread Timm Baeder via cfe-commits
tbaederr wrote: @jmmartinez Ping. https://github.com/llvm/llvm-project/pull/137306 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][ExprConst] Check for array size of initlists (PR #138673)

2025-05-06 Thread Timm Baeder via cfe-commits
tbaederr wrote: That fixes compile-time computation, but this example still breaks in codegen: ```c++ #include using namespace std; constexpr size_t kMemoryChunk = 1024 * 8; constexpr size_t kNumberOfIterations = 200; constexpr size_t kThreadsNumber = 2 * kMemoryChunk; struct S {}; int mai

[clang] [clang][bytecode] Bail out on invalid function declarations (PR #138503)

2025-05-05 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/138503 None Rate limit · GitHub body { background-color: #f6f8fa; color: #24292e; font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial

[clang] [clang][bytecode] Use bytecode interpreter in EvaluateCharRangeAsString (PR #138461)

2025-05-04 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/138461 >From 6cc6ff2f4c62e6d0a7b95338c461f8998a4a6bbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 4 May 2025 07:25:20 +0200 Subject: [PATCH] [clang][bytecode] Use bytecode interpreter in E

[clang] [clang][bytecode] Use bytecode interpreter in EvaluateCharRangeAsString (PR #138461)

2025-05-04 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/138461 This was always using the ast walker. >From 8d76bc91a3a443b6563cfe26f7558adf73d2f60c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 4 May 2025 07:25:20 +0200 Subject: [PATCH] [clang][b

[clang] [clang][bytecode] Bail out on invalid function declarations (PR #138503)

2025-05-05 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/138503 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Compute pointer differences as 64bit integers (PR #137128)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137128 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Compute pointer differences as 64bit integers (PR #137128)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137128 And only convert to the target type after that. >From 00823f8e58ee1b1e8e5660f5e727d9abc72feecf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 24 Apr 2025 08:16:05 +0200 Subject: [PATCH

[clang] [clang][bytecode] Diagnose pseudo dtor calls before C++20 (PR #137303)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137303 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Allow forming pointers to fields of extern globals (PR #137211)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137211 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Don't diagnose const extern reads in CPCE mode (PR #137285)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137285 They might become constexpr later. >From af0ed78bbab6b944d51b35ab2d2055c9f781662c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 25 Apr 2025 07:40:30 +0200 Subject: [PATCH] [clang][byt

[clang] [clang][bytecode] Propagate IsVolatile bit to subobjects (PR #137293)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137293 For ```c++ struct S { constexpr S(int=0) : i(1) {} int i; }; constexpr volatile S vs; ``` reading from `vs.i` is not allowed, even though `i` is not volatile qualified. Propagate the IsVolatile b

[clang] [clang][bytecode] Don't diagnose const extern reads in CPCE mode (PR #137285)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137285 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Emit diagnostics from GetGlobalUnchecked (PR #137203)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137203 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Allow forming pointers to fields of extern globals (PR #137211)

2025-04-24 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/137211 >From 9388799f1a7bb4d6bbfc467db569aa61c4666445 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Thu, 24 Apr 2025 18:29:36 +0200 Subject: [PATCH] [clang][bytecode] Allow forming pointers to fie

[clang] [clang][bytecode] Diagnose destroying already dead locals (PR #137357)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137357 None >From 6b572e0de6874d94f8b7ae4b269e07f1451956b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 25 Apr 2025 13:17:14 +0200 Subject: [PATCH] [clang][bytecode] Diagnose destroying alr

[clang] [clang][bytecode] Propagate IsVolatile bit to subobjects (PR #137293)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137293 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Diagnose pseudo dtor calls before C++20 (PR #137303)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137303 None >From 5677e610e30479b2da672fad3c2606115873bdbe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 25 Apr 2025 11:48:03 +0200 Subject: [PATCH] [clang][bytecode] Diagnose pseudo dtor ca

[clang] [clang][bytecode] Fix various issues with multidimensional arrars (PR #134628)

2025-04-10 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr edited https://github.com/llvm/llvm-project/pull/134628 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Print jump lines in Function::dump() (PR #135482)

2025-04-12 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/135482 E.g. for ```c++ constexpr int foo(int b) { int a = 1+1; for (int i = 0; i < b; ++i) { ++a; } return a; } ``` we now print: ``` foo 0x7cc8d4bf0580 frame size: 128 arg size: 8 rvo:0 this ar

[clang] [clang][bytecode] Fix an inconsistency with loop condition jumps (PR #135530)

2025-04-13 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/135530 >From 3664bf04f155105eb9d7189a29e5f3248324c745 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 12 Apr 2025 17:40:19 +0200 Subject: [PATCH] [clang][bytecode] Fix an inconsistency with loo

[clang] [clang][bytecode] Explicitly mark constexpr-unknown variables as such (PR #135806)

2025-04-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/135806 Instead of trying to figure out what's constexpr-unknown later on. >From 17b01c64357ecddcf64144ab28ffd85ac7126acf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 14 Apr 2025 17:18:50 +0

[clang] [clang][bytecode] Don't create Function instances for builtins (PR #137618)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137618 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Don't create function frames for builtin calls (PR #137607)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/137607 >From e7d9f571ff5b2af123244dac3a1c2a754d090f8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 28 Apr 2025 11:40:36 +0200 Subject: [PATCH] [clang][bytecode] Don't create function frames

[clang] [clang][bytecode] Don't create function frames for builtin calls (PR #137607)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137607 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Don't create Function instances for builtins (PR #137618)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137618 Now that we don't use them anymore in InterpBuiltin.cpp and we don't create frames for them anymore anyway, just don't create Function instances. >From cb2d21899df17578675bf9b85c3be2d141425ff3 Mon Sep 17 00:00

[clang] [clang][bytecode] Fix ia32_addcarry/subborrow (PR #137642)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137642 RHS is followed by another Pointer. >From c2ac52ac1ec9abd64576c92a2a2ea7780ab59f02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 28 Apr 2025 16:44:52 +0200 Subject: [PATCH] [clang][by

[clang] [clang][bytecode] Check live-ness when calling dtors (PR #137645)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137645 We can't call a destructor on a dead pointer. >From 595420d71250dece001bf9b85cc35191a4e478bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Mon, 28 Apr 2025 16:55:29 +0200 Subject: [PATCH]

[clang] [clang][bytecode] Check array sizes against step limit (PR #137679)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137679 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Mark constructors with invalid initializers as invalid (PR #137773)

2025-04-29 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137773 If a member or base initializer of a constructor turns out to be invalid, mark the entire constructor as invalid. >From eaa78a369c3a1577b040b6b3e78d6812af6f1348 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=2

[clang] [clang][bytecode] Remove base casts before doing memcpy (PR #137754)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137754 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Remove base casts before doing memcpy (PR #137754)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137754 We have to copy the entire thing, not just one of the bases. >From e73345a59ec62a79e709bcf91f17855df8f118e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 29 Apr 2025 06:33:09 +0200 Su

[clang] [clang][bytecode] Start implementing builtin_is_within_lifetime (PR #137765)

2025-04-29 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137765 None >From 609b14ff51520373247a85dc27e11ccc7335cee9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 29 Apr 2025 09:28:39 +0200 Subject: [PATCH] [clang][bytecode] Start implementing bui

[clang] [clang][bytecode] Start implementing builtin_is_within_lifetime (PR #137765)

2025-04-29 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137765 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Mark constructors with invalid initializers as invalid (PR #137773)

2025-04-29 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/137773 >From 53dea9e3d96c622c7e1ffc892117723ff1d3831c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Tue, 29 Apr 2025 11:11:08 +0200 Subject: [PATCH] [clang] Mark constructors with invalid initiali

[clang] [clang][bytecode] Check for dummy pointers when calling pseudo dtors (PR #137437)

2025-04-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137437 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][bytecode] Diagnose delete of non-heap-allocated blocks (PR #137475)

2025-04-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/137475 With std::allocator::deallocate() calls >From bdada63879bdd12603273167a291eaa4c0971dc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 26 Apr 2025 22:57:55 +0200 Subject: [PATCH] [clang

[clang] [clang][bytecode] Check live-ness when calling dtors (PR #137645)

2025-04-28 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/137645 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] add `-fimplicit-constexpr` flag (PR #136436)

2025-04-19 Thread Timm Baeder via cfe-commits
Hana =?utf-8?q?Dusíková?= Message-ID: In-Reply-To: tbaederr wrote: > That however runs into the problem that the constant evaluator needs to be > able to diagnose any invalid constructs it runs into w/o crashing, and I’m > not sure it’s currently set up for that given that > CheckConstex

[clang] [clang][ExprConst] Diagnose ptr subs with non-zero offset (PR #135938)

2025-04-18 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/135938 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

<    19   20   21   22   23   24   25   26   27   28   >