[PATCH] D150209: [clang][Interp] Add more shift error checking

2023-05-10 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.h:136 +if (LHS.isNegative()) + S.CCEDiag(E, diag::note_constexpr_lshift_of_negative) << 12; +else if (LHS.toUnsigned().countLeadingZeros() < static_cast(RHS)) shafik wrote: > Do

[PATCH] D150209: [clang][Interp] Add more shift error checking

2023-05-09 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo

[PATCH] D150191: [clang][Diagnostics] Provide a source range for 'use of undeclared identifier' diagnostics

2023-05-09 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Right, I expect (hope?) precommit CI to fail, but I'm stuck at an airport right now so I'll leave tests for when I'm back home. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D150191/new/ https://reviews.llvm.org/D150191

[PATCH] D150191: [clang][Diagnostics] Provide a source range for 'use of undeclared identifier' diagnostics

2023-05-09 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: cjdb, aaron.ballman, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Just a small improvement. Before: array.cpp:1279:9: error: use of

[PATCH] D149965: [clang][Interp] Fix tests for ignored expressions

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:593-594 +if (DiscardResult) + return true; + aaron.ballman wrote: > For my own understanding -- why do we not need to call `discard()` on the > operand expression? Is

[PATCH] D147591: [clang][Interp] Handle CXXTemporaryObjectExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 520361. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147591/new/ https://reviews.llvm.org/D147591 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/Interp/records.cpp Index:

[PATCH] D147591: [clang][Interp] Handle CXXTemporaryObjectExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/records.cpp:317-318 { - auto T = Test(Arr, Pos); + Test(Arr, Pos); // End of scope, should destroy Test. } aaron.ballman wrote: > tbaeder wrote: > > aaron.ballman wrote:

[PATCH] D147591: [clang][Interp] Handle CXXTemporaryObjectExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/records.cpp:317-318 { - auto T = Test(Arr, Pos); + Test(Arr, Pos); // End of scope, should destroy Test. } aaron.ballman wrote: > tbaeder wrote: > > aaron.ballman wrote:

[PATCH] D149965: [clang][Interp] Fix tests for ignored expressions

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 520352. tbaeder added a comment. @aaron.ballman This is where the sizeof/alignof tests were actually broken. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149965/new/ https://reviews.llvm.org/D149965 Files:

[PATCH] D150040: [clang][Interp] Call invalid destructors

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/records.cpp:606 +S{}; // ref-note {{in call to '{}->~S()'}} +return 1; // expected-note {{in call to '{}->~S()'}} + // FIXME: ^ Wrong line erichkeane wrote: > Which DTOR is

[PATCH] D149834: [clang][Interp] Fix ignoring TypeTraitExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 520340. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149834/new/ https://reviews.llvm.org/D149834 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/test/AST/Interp/literals.cpp Index: clang/test/AST/Interp/literals.cpp

[PATCH] D149834: [clang][Interp] Fix ignoring TypeTraitExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:875 1 ? 0 : 1; +sizeof(A); +alignof(A); tbaeder wrote: > tbaeder wrote: > > aaron.ballman wrote: > > > tbaeder wrote: > > > > aaron.ballman wrote: > > > > > Let's make

[PATCH] D149834: [clang][Interp] Fix ignoring TypeTraitExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:875 1 ? 0 : 1; +sizeof(A); +alignof(A); tbaeder wrote: > aaron.ballman wrote: > > tbaeder wrote: > > > aaron.ballman wrote: > > > > Let's make sure we still reject this: >

[PATCH] D149834: [clang][Interp] Fix ignoring TypeTraitExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:875 1 ? 0 : 1; +sizeof(A); +alignof(A); aaron.ballman wrote: > tbaeder wrote: > > aaron.ballman wrote: > > > Let's make sure we still reject this: > > > ``` > > >

[PATCH] D150111: [clang][Interp] Implement lambda static invokers

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 520331. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D150111/new/ https://reviews.llvm.org/D150111 Files: clang/lib/AST/Interp/ByteCodeEmitter.cpp clang/lib/AST/Interp/ByteCodeStmtGen.cpp clang/lib/AST/Interp/ByteCodeStmtGen.h

[PATCH] D150111: [clang][Interp] Implement lambda static invokers

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 520330. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D150111/new/ https://reviews.llvm.org/D150111 Files: clang/lib/AST/Interp/ByteCodeEmitter.cpp clang/lib/AST/Interp/ByteCodeStmtGen.cpp clang/lib/AST/Interp/ByteCodeStmtGen.h

[PATCH] D150111: [clang][Interp] Implement lambda static invokers

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Emit custom byte code for the static invoker

[PATCH] D150108: [clang] Evaluate non-type default template argument when it is required

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/docs/ReleaseNotes.rst:375 +- A default argument for a non-type template parameter is evaluated and checked + at the point where is is required. This fixes: + (`#62224 `_) and

[PATCH] D146030: [clang][Interp] Handle LambdaExprs

2023-05-08 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/lambda.cpp:92 + static_assert(foo() == 1); // expected-error {{not an integral constant expression}} +} + tbaeder wrote: > tbaeder wrote: > > aaron.ballman wrote: > > > How about some tests like:

[PATCH] D146030: [clang][Interp] Handle LambdaExprs

2023-05-07 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/lambda.cpp:92 + static_assert(foo() == 1); // expected-error {{not an integral constant expression}} +} + tbaeder wrote: > aaron.ballman wrote: > > How about some tests like: > > ``` > >

[PATCH] D150087: [Clang] Support more stdio builtins

2023-05-07 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:102 // std libcall builtins are implemented. static SmallDenseMap F128Builtins{ + {Builtin::BI__builtin___fprintf_chk, "__fprintfieee128"}, The size should be increased I

[PATCH] D146030: [clang][Interp] Handle LambdaExprs

2023-05-07 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 520155. tbaeder marked 3 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146030/new/ https://reviews.llvm.org/D146030 Files: clang/lib/AST/Interp/ByteCodeEmitter.cpp clang/lib/AST/Interp/ByteCodeEmitter.h

[PATCH] D149834: [clang][Interp] Fix ignoring TypeTraitExprs

2023-05-07 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:875 1 ? 0 : 1; +sizeof(A); +alignof(A); aaron.ballman wrote: > Let's make sure we still reject this: > ``` > constexpr int oh_my() { > int x = 0; > sizeof(int[x++]);

[PATCH] D146030: [clang][Interp] Handle LambdaExprs

2023-05-07 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/lambda.cpp:92 + static_assert(foo() == 1); // expected-error {{not an integral constant expression}} +} + aaron.ballman wrote: > How about some tests like: > ``` > constexpr int

[PATCH] D149837: [clang][Interp] Fix ignoring CompoundLiteralExprs

2023-05-07 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 520153. tbaeder marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149837/new/ https://reviews.llvm.org/D149837 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/test/AST/Interp/literals.cpp Index:

[PATCH] D150040: [clang][Interp] Call invalid destructors

2023-05-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. We need to call them like any other function, so

[PATCH] D147591: [clang][Interp] Handle CXXTemporaryObjectExprs

2023-05-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/records.cpp:317-318 { - auto T = Test(Arr, Pos); + Test(Arr, Pos); // End of scope, should destroy Test. } aaron.ballman wrote: > Nit: nothing actually tests that this

[PATCH] D150036: [Clang] Correctly handle allocation in template arguments

2023-05-06 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:15356-15360 - if (!::EvaluateInPlace(Result.Val, Info, LVal, this) || Result.HasSideEffects) + FullExpressionRAII Scope(Info); + if (!::EvaluateInPlace(Result.Val, Info, LVal, this) ||

[PATCH] D149965: [clang][Interp] Fix tests for ignored expressions

2023-05-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, tahonermann, shafik, erichkeane. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. We didn't call the function explicitly in a

[PATCH] D149960: [clang][Interp] Fix ignoring String- and CharacterLiterals

2023-05-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo

[PATCH] D148689: [clang][Interp] Handle PredefinedExprs

2023-05-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 519835. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148689/new/ https://reviews.llvm.org/D148689 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/Interp/literals.cpp Index:

[PATCH] D148689: [clang][Interp] Handle PredefinedExprs

2023-05-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 519834. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148689/new/ https://reviews.llvm.org/D148689 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/Interp/literals.cpp Index:

[PATCH] D147875: [clang][Diagnostics] Show line numbers when printing code snippets

2023-05-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 519799. tbaeder added a comment. Add docs and a release note. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147875/new/ https://reviews.llvm.org/D147875 Files: clang-tools-extra/test/clang-tidy/checkers/cert/uppercase-literal-suffix-integer.cpp

[PATCH] D147875: [clang][Diagnostics] Show line numbers when printing code snippets

2023-05-05 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/FixIt/fixit-function-call.cpp:1 -// RUN: not %clang_cc1 -fdiagnostics-parseable-fixits -x c++ %s 2> %t +// RUN: not %clang_cc1 -fdiagnostics-parseable-fixits -fno-diagnostics-show-line-numbers -fcaret-diagnostics-max-lines 1

[PATCH] D149824: [clang][Interp] Don't call getSource() on functions without a body

2023-05-05 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGe8fb478f2df8: [clang][Interp] Dont call getSource() on functions without a body (authored by tbaeder). Changed prior to commit:

[PATCH] D148689: [clang][Interp] Handle PredefinedExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:849 +static_assert(strings_match(__func__, "foo")); +static_assert(strings_match(__PRETTY_FUNCTION__, "void PredefinedExprs::foo()")); + } aaron.ballman wrote: > You should

[PATCH] D149550: [clang][Interp] Fix compound assign operator evaluation order

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:683-685 + // C++17 onwards require that we evaluate the RHS first. + // Compute RHS and save it in a temporary variable so we can + // load it again later. aaron.ballman

[PATCH] D148689: [clang][Interp] Handle PredefinedExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 519479. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148689/new/ https://reviews.llvm.org/D148689 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/lib/AST/Interp/ByteCodeExprGen.h clang/test/AST/Interp/literals.cpp Index:

[PATCH] D148689: [clang][Interp] Handle PredefinedExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:783 + +namespace PredefinedExprs { + constexpr char heh(unsigned index) { aaron.ballman wrote: > tbaeder wrote: > > shafik wrote: > > > Can we add tests for each predefined

[PATCH] D149846: [clang][Interp] Check inc/dec family of ops for initialization

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Fix a few of the leftover FIXME comments from

[PATCH] D147621: [clang][Interp] Start handling mutable record members

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 519434. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147621/new/ https://reviews.llvm.org/D147621 Files: clang/lib/AST/Interp/Interp.cpp clang/lib/AST/Interp/Interp.h clang/test/AST/Interp/records.cpp Index:

[PATCH] D149550: [clang][Interp] Fix compound assign operator evaluation order

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 519428. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149550/new/ https://reviews.llvm.org/D149550 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/test/AST/Interp/floats.cpp clang/test/AST/Interp/literals.cpp Index:

[PATCH] D149641: [docs] Hide collaboration and include graphs in doxygen docs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGeadf6db585e1: [docs] Hide collaboration and include graphs in doxygen docs (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D149837: [clang][Interp] Fix ignoring CompoundLiteralExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:537 +} } return true; Obviously, this patch also fixes ignoring `InitListExpr`s. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D149837: [clang][Interp] Fix ignoring CompoundLiteralExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo

[PATCH] D149834: [clang][Interp] Fix ignoring TypeTraitExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo

[PATCH] D149831: [clang][Interp] Fix ignoring SubstNonTypeTemplateParmExpr

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a subscriber: kristof.beyls. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Ignore

[PATCH] D149828: [clang][Interp] Evaluate Base when discarding a MemberExpr

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. The Base expression might cause side-effects, so

[PATCH] D149824: [clang][Interp] Don't call getSource() on functions without a body

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. For builtin functions, we create a Function

[PATCH] D148689: [clang][Interp] Handle PredefinedExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:783 + +namespace PredefinedExprs { + constexpr char heh(unsigned index) { shafik wrote: > Can we add tests for each predefined expressions, it does not look like there > are a lot of

[PATCH] D149550: [clang][Interp] Fix compound assign operator evaluation order

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 519370. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149550/new/ https://reviews.llvm.org/D149550 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/test/AST/Interp/floats.cpp clang/test/AST/Interp/literals.cpp Index:

[PATCH] D149550: [clang][Interp] Fix compound assign operator evaluation order

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:683-685 + // C++17 onwards require that we evaluate the RHS first. + // Compute RHS and save it in a temporary variable so we can + // load it again later. tbaeder wrote: >

[PATCH] D149550: [clang][Interp] Fix compound assign operator evaluation order

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/ByteCodeExprGen.cpp:683-685 + // C++17 onwards require that we evaluate the RHS first. + // Compute RHS and save it in a temporary variable so we can + // load it again later. aaron.ballman

[PATCH] D149634: [clang][Interp] Implement inc/dec operators for floats

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG338c2489f63e: [clang][Interp] Implement inc/dec operators for floats (authored by tbaeder). Changed prior to commit: https://reviews.llvm.org/D149634?vs=518642=519365#toc Repository: rG LLVM Github

[PATCH] D147840: [clang][Interp] Handle DiscardResult for DeclRef- and ParenExprs

2023-05-04 Thread Timm Bäder via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG92f67dc27f41: [clang][Interp] Handle DiscardResult for DeclRef- and ParenExprs (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D149816: [clang][Interp] Implement __builtin_strcmp

2023-05-03 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Make our Function class keep a list of parameter

[PATCH] D149514: Check if First argument in _builtin_assume_aligned_ is of pointer type

2023-05-03 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. This patch was submitted by a beginner, because https://github.com/llvm/llvm-project/issues/62305 has the "good first issue" label. From the last few comments, I'm not sure they know how to proceed. Could you summarize what the next steps are? CHANGES SINCE LAST

[PATCH] D149013: [clang][Interp] Check pointers when accessing base class

2023-05-03 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/records.cpp:509-512 + constexpr A *a2 = + 1; // expected-error {{must be initialized by a constant expression}} \ +// expected-note {{cannot access base class of pointer past the end

[PATCH] D148690: [clang][Interp] Handle __extension__ unary operators

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/test/AST/Interp/literals.cpp:791 +#endif return __FUNCTION__[index]; } aaron.ballman wrote: > tbaeder wrote: > > erichkeane wrote: > > > tbaeder wrote: > > > > It's weird that the above two statements warn

[PATCH] D149645: [clang][Interp] Optionally cast comparison result to non-bool

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. In D149645#4312193 , @erichkeane wrote: > In D149645#4312190 , @tbaeder wrote: > >> In D149645#4312162 , @erichkeane >> wrote: >> >>> For C,

[PATCH] D149645: [clang][Interp] Optionally cast comparison result to non-bool

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 518707. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149645/new/ https://reviews.llvm.org/D149645 Files: clang/lib/AST/Interp/ByteCodeExprGen.cpp clang/test/AST/Interp/c.c Index: clang/test/AST/Interp/c.c

[PATCH] D149645: [clang][Interp] Optionally cast comparison result to non-bool

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. In D149645#4312162 , @erichkeane wrote: > For C, should we instead be teaching our boolean operations to understand it > might be int? I fear this will end up causing conversion problems later, > such as with: > > `int F = 1

[PATCH] D149645: [clang][Interp] Optionally cast comparison result to non-bool

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Our comparison opcodes always produce a Boolean

[PATCH] D149641: [docs] Hide collaboration and include graphs in doxygen docs

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, shafik. Herald added a reviewer: bollu. Herald added subscribers: bviyer, Moerafaat, zero9178, bzcheeseman, ayermolo, sdasgup3, wenzhicui, wrengr, cota, teijeong, rdzhabarov, tatianashp, msifontes, jurahul, Kayjukh, grosul1,

[PATCH] D149634: [clang][Interp] Implement inc/dec operators for floats

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik, sepavloff. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Looks like I forgot these.

[PATCH] D149633: [clang][codegen] Add F128 svnprintf_chk builtin

2023-05-02 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: ecnelises, tstellar, tuliom, efriedma. Herald added subscribers: kbarton, nemanjai. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Fixes

[PATCH] D149149: [clang][Interp] Check one-past-the-end pointers in GetPtrField

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149149/new/ https://reviews.llvm.org/D149149 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D149013: [clang][Interp] Check pointers when accessing base class

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149013/new/ https://reviews.llvm.org/D149013 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D149133: [clang][Interp] BaseToDerived casts

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149133/new/ https://reviews.llvm.org/D149133 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D148982: [clang][Interp] Fix ignoring conditional operators

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148982/new/ https://reviews.llvm.org/D148982 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D148690: [clang][Interp] Handle __extension__ unary operators

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148690/new/ https://reviews.llvm.org/D148690 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D148689: [clang][Interp] Handle PredefinedExprs

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148689/new/ https://reviews.llvm.org/D148689 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D148614: [clang][Interp] Add frame depth checking

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148614/new/ https://reviews.llvm.org/D148614 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D147840: [clang][Interp] Handle DiscardResult for DeclRef- and ParenExprs

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147840/new/ https://reviews.llvm.org/D147840 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D147621: [clang][Interp] Start handling mutable record members

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147621/new/ https://reviews.llvm.org/D147621 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D147591: [clang][Interp] Handle CXXTemporaryObjectExprs

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147591/new/ https://reviews.llvm.org/D147591 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D146030: [clang][Interp] Handle LambdaExprs

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146030/new/ https://reviews.llvm.org/D146030 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D144943: [clang][Interp] Implement bitcasts (WIP)

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144943/new/ https://reviews.llvm.org/D144943 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D144457: [clang][Interp] Handle global composite temporaries

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144457/new/ https://reviews.llvm.org/D144457 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D144164: [clang][Interp] Handle PtrMemOps

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144164/new/ https://reviews.llvm.org/D144164 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D143334: [clang][Interp] Fix diagnosing uninitialized ctor record arrays

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143334/new/ https://reviews.llvm.org/D143334 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D142630: [clang][Interp] Implement virtual function calls

2023-05-01 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142630/new/ https://reviews.llvm.org/D142630 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D149550: [clang][Interp] Fix compound assign operator evaluation order

2023-04-30 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. We need to evaluated the RHS before the LHS.

[PATCH] D149172: [clang][Interp] Emit proper diagnostic when comparing unrelated pointers

2023-04-27 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. Meh, turns out `(void*)` is a bitcast, so can't push this yet. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149172/new/ https://reviews.llvm.org/D149172 ___ cfe-commits mailing

[PATCH] D149154: [clang][Interp] Emit diagnostic when comparing function pointers

2023-04-27 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGf8a9c55bef38: [clang][Interp] Emit diagnostic when comparing function pointers (authored by tbaeder). Changed prior to commit:

[PATCH] D148987: [clang][Interp] Check Neg ops for errors

2023-04-27 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG6cf14a72390f: [clang][Interp] Check Neg ops for errors (authored by tbaeder). Changed prior to commit:

[PATCH] D149276: [Clang] Fix parsing of `(auto(x))`.

2023-04-27 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/Parse/ParseTentative.cpp:1067 +bool mayHaveDirectInit, +bool mayHaveTrailingReturnType) { // declarator: Not part of

[PATCH] D147875: [clang][Diagnostics] Show line numbers when printing code snippets

2023-04-27 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang-tools-extra/test/clang-tidy/checkers/cert/uppercase-literal-suffix-integer.cpp:34 // CHECK-MESSAGES-NEXT: ^~ - // CHECK-MESSAGES-NEXT: {{^ *}}L{{$}} + // CHECK-MESSAGES-NEXT: {{^ *| *}}L{{$}} // CHECK-FIXES: static

[PATCH] D147875: [clang][Diagnostics] Show line numbers when printing code snippets

2023-04-27 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 517463. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147875/new/ https://reviews.llvm.org/D147875 Files: clang-tools-extra/test/clang-tidy/checkers/cert/uppercase-literal-suffix-integer.cpp

[PATCH] D147875: [clang][Diagnostics] Show line numbers when printing code snippets

2023-04-26 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 517450. Herald added a subscriber: carlosgalvezp. Herald added a project: clang-tools-extra. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147875/new/ https://reviews.llvm.org/D147875 Files:

[PATCH] D148601: [Clang] Handle Error message to output proper Prefix

2023-04-26 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder accepted this revision. tbaeder added a comment. This revision is now accepted and ready to land. When I run with `-verify=foo,bar`I only get the output for `bar-no-diagnostics`. Adding `bar-no-diagnostics`, I get no output at all and the test succeeds. I didn't know how passing

[PATCH] D146358: [clang][AST] Print name instead of type when diagnosing uninitialized subobject in constexpr variables

2023-04-26 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. @aaron.ballman Are you OK with the approach taken here? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146358/new/ https://reviews.llvm.org/D146358 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D148901: [clang][Interp] Fix post-inc/dec operator result

2023-04-26 Thread Timm Bäder via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG3185e47b5a84: [clang][Interp] Fix post-inc/dec operator result (authored by tbaeder). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D148987: [clang][Interp] Check Neg ops for errors

2023-04-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder updated this revision to Diff 517054. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D148987/new/ https://reviews.llvm.org/D148987 Files: clang/lib/AST/Interp/Integral.h clang/lib/AST/Interp/Interp.h clang/lib/AST/Interp/PrimType.h clang/test/AST/Interp/literals.cpp

[PATCH] D149154: [clang][Interp] Emit diagnostic when comparing function pointers

2023-04-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.h:652-653 + const SourceInfo = S.Current->getSource(OpPC); + S.FFDiag(Loc, diag::note_constexpr_pointer_comparison_unspecified) + << LS << RS; + return false; aaron.ballman wrote: >

[PATCH] D149172: [clang][Interp] Emit proper diagnostic when comparing unrelated pointers

2023-04-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Also adds `toDiagnosticString()` to `Pointer` so

[PATCH] D149154: [clang][Interp] Emit diagnostic when comparing function pointers

2023-04-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.h:652-653 + const SourceInfo = S.Current->getSource(OpPC); + S.FFDiag(Loc, diag::note_constexpr_pointer_comparison_unspecified) + << LS << RS; + return false; aaron.ballman wrote: >

[PATCH] D148987: [clang][Interp] Check Neg ops for errors

2023-04-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added inline comments. Comment at: clang/lib/AST/Interp/Interp.h:438-441 + // FIXME: This code Just Works[tm] for floats, but it's probably not doing + // the right thing. At least the diagnostic could be better without + // the conversion to an APInt. +

[PATCH] D148601: [Clang] Handle Error message to output proper Prefix

2023-04-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder added a comment. In D148601#4279604 , @Unique_Usman wrote: > In D148601#4279334 , @tbaeder wrote: > >> I am not 100% sure about the semantics of passing multiple prefixes, i.e. if >> the error is

[PATCH] D149154: [clang][Interp] Emit diagnostic when comparing function pointers

2023-04-25 Thread Timm Bäder via Phabricator via cfe-commits
tbaeder created this revision. tbaeder added reviewers: aaron.ballman, erichkeane, tahonermann, shafik. Herald added a project: All. tbaeder requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Function pointers can be compared for

<    3   4   5   6   7   8   9   10   11   12   >