[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread via cfe-commits
eaeltsin wrote: Thanks for the quick fix! https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @eaeltsin @ilya-biryukov Fixed in 596a9c1f9b3179b3c77cbde1e96619292ce2a10a https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @ilya-biryukov See #91972 https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Ilya Biryukov via cfe-commits
ilya-biryukov wrote: Awesome, thanks a lot for looking into it! https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @ilya-biryukov I can fix this quickly (less than an hour). https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Ilya Biryukov via cfe-commits
ilya-biryukov wrote: Heh, of course! Now that you say it, that's quite obvious. Do you think is fix is just around the corner or will it take a long time? This blocks our internal compiler release and there is no workaround we could easily employ.

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: Repro: ```cpp template struct Typo { Typo(const Typo& t) { t->typo; // error t->Typp; // error t->Tzpo; // error t->ty; // ok } }; ``` https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @ilya-biryukov Actually, that is an incredibly useful piece of information :) I think this is an issue with type correction... https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread Ilya Biryukov via cfe-commits
ilya-biryukov wrote: 勞 amazingly, this only happens when the identifier being called is a lowercase version of the class name: https://gcc.godbolt.org/z/8aoaoPKnT: ```cpp template class Clone { public: Clone(const Clone&); T* operator->() const; T* ptr_; }; template struct

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-13 Thread via cfe-commits
eaeltsin wrote: Hi, This seems to break the following combination with overloaded -> operator - https://godbolt.org/z/jc6chKTdv ``` template class Clone { public: Clone(const Clone&); T* operator->() const; T* ptr_; }; // Assume T* T::clone()

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-09 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @dyung Per [[temp.dep.type] p10.11](http://eel.is/c++draft/temp.dep.type#10.11): > A type is dependent if it is > - [...] > - denoted by a _simple-template-id_ in which either the template name is a > template parameter or any of the template arguments is a dependent type or

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-09 Thread via cfe-commits
dyung wrote: Hi @sdkrystian, we were fixing up some internal codebases which this change exposed problems with but noticed that this slightly tweaked example of one doesn't seem to trigger an error even though it seems like it should with your change: ```c++ enum BK {}; template class

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @alexfh see #91503 https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread via cfe-commits
alexfh wrote: Great! Thanks for the prompt action! https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @alexfh It won't fix the example in your comment (but I have a separate fix for it) https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread via cfe-commits
alexfh wrote: > @bgra8 see #91498 Can you check if it also fixes https://github.com/llvm/llvm-project/pull/90152#issuecomment-2100932093 ? Or should it? https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @bgra8 see #91498 https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread via cfe-commits
alexfh wrote: This commit also breaks the following seemingly valid code (https://gcc.godbolt.org/z/1azKEKh6K): ``` template class Base { public: Base& operator=(int) { return *this; } class Inner; }; template class Base::Inner : public Base { public: using Base::operator=; }; void f()

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: Looks like `ActOnDependentIdExpression` tries to build a `DependentScopeDeclRefExpr`, which fails because `BuildDependentDeclRefExpr` returns `ExprError()` if no qualifier is present. I'll open a PR shortly. https://github.com/llvm/llvm-project/pull/90152

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @bgra8 Reduced to ```cpp template struct A { template auto f(U u) -> decltype(operator=(u)); }; template struct A; ``` Seems like `f` is being set as invalid without any diagnostic... I think I can fix this quickly https://github.com/llvm/llvm-project/pull/90152

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-08 Thread via cfe-commits
bgra8 wrote: @sdkrystian we've bisected a clang crash to this revision. The code on which it crashes is (`repro.cc`): ``` template struct a { template auto c(b d) -> decltype(operator=(d)); void operator()(); }; a e; void f() { e(); } ``` Compilation command: ``` $ clang -std=gnu++20 -c

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-06 Thread via cfe-commits
zmodem wrote: > @zmodem Fixed in 3191e0b Thanks! In the meantime, we're finding a number of legitimate bugs with this. Pretty cool :) https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-03 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @dyung Yup, that is expected https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-03 Thread via cfe-commits
dyung wrote: > @zmodem Fixed in > [3191e0b](https://github.com/llvm/llvm-project/commit/3191e0b52725aa17651e38d26284386f3ea64eb6) This change also seems to fix the small example I posted, I'll double check it against our original source code. https://github.com/llvm/llvm-project/pull/90152

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-03 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @zmodem Fixed in 3191e0b52725aa17651e38d26284386f3ea64eb6 https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-03 Thread Erich Keane via cfe-commits
erichkeane wrote: > @erichkeane I think this is actually a bug in how I applied [[temp.dep.type] > p5](http://eel.is/c++draft/temp.dep.type#5): > > > A qualified name is dependent if > > > > * it is a _conversion-function-id_ whose _conversion-type-id_ is dependent, > > or > > * its lookup

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-03 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @erichkeane I think this is actually a bug in how I applied [[temp.dep.type] p5](http://eel.is/c++draft/temp.dep.type#5): > A qualified name is dependent if > - it is a _conversion-function-id_ whose _conversion-type-id_ is dependent, or > - its lookup context is dependent

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-03 Thread Erich Keane via cfe-commits
erichkeane wrote: > This seems to break the version of libstdc++ we use in our sysroot: (Details > on https://crbug.com/338536261) > > ``` > ../../build/linux/debian_bullseye_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_iterator.h:1718:20: > error: use

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-03 Thread via cfe-commits
zmodem wrote: This seems to break the version of libstdc++ we use in our sysroot: (Details on https://crbug.com/338536261) ``` ../../build/linux/debian_bullseye_amd64-sysroot/usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_iterator.h:1718:20: error: use 'template' keyword

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Yaxun Liu via cfe-commits
yxsamliu wrote: Thanks for all your analysis. I agree this is a rocThrust bug. I will open an issue to rocThrust. https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @dyung It's a bit difficult to tell what the code is intended to do. An expression naming a non-static member function must either be the postfix-expression of a call, or be the terminal name of a qualified-id that is the operand of unary `&`.

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @yxsamliu The call to `this->construct` in the `emplace` member of the partial specialization `class optional` _is_ a bug -- unlike the primary class template, the partial specialization for `T&` does _not_ inherit from `optional_operations_base` (which declares the

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Erich Keane via cfe-commits
erichkeane wrote: > @yxsamliu The type of `this` is always a pointer. The class member access > operator may only be overloaded for operands of class type. In your reduced > example, could you provide a value of `T` that would instantiate to a valid > specialization? Agreed, this is another

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @yxsamliu The type of `this` is always a pointer. The class member access operator may only be overloaded for operands of class type. In your reduced example, could you provide a value of `T` that would instantiate to a valid specialization?

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Yaxun Liu via cfe-commits
yxsamliu wrote: This patch seems to cause a regression for rocThrust: https://github.com/ROCm/rocThrust/blob/f3a28e43355b0f439fb99a2210bd497ca59c8003/thrust/optional.h#L2756 rocThrust/thrust/../thrust/optional.h:2756:11: error: no member named 'construct' in 'optional' A reduced test case is

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread via cfe-commits
dyung wrote: We are also seeing a build break internally which I bisected back to this change. In our case, I was able to reduce it to the following code: ```c++ #include template class b { b operator=(b) { return operator=<>; } template ::d>> void operator=(b); }; ``` After this

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Sam Clegg via cfe-commits
sbc100 wrote: This change recently rolled into the emscripten SDK and seems to be breaking the build of regal. I've not invistigated this yet, and its not our code: ``` em++ -c /usr/local/google/home/sbc/dev/wasm/emscripten/cache/ports/regal/regal-version_7/src/regal/RegalIff.cpp -o

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Erich Keane via cfe-commits
erichkeane wrote: I think the `-fdelayed-template-parsing` is as much as we're going to do. This is a conformance issue, and I don't think we want to create a backwards compatibility flag for it. Clang has ALWAYS diagnosed un-instantiatable templates as aggressively as we could. ALL of the

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @davemgreen you can try using `-fdelayed-template-parsing` to fix the error. A compatibility flag could be added for older code bases -- but I'd like guidance from @erichkeane, @cor3ntin, and/or @AaronBallman on that. https://github.com/llvm/llvm-project/pull/90152

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread David Green via cfe-commits
davemgreen wrote: Hi - We've ran into a couple of places where this causes problems, one of them in running Spec as above. Is it possible to turn off this error for older codebases with a flag, turning it into a warning? It doesn't seem like a very useful error if it applies to code that is

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-05-02 Thread Luke Lau via cfe-commits
lukel97 wrote: Hi, this seems to uncover an unfortunate error in xalan-c https://github.com/apache/xalan-c/blob/c326619da4813acfc845c2830d904a4860f9afe1/src/xalanc/XMLSupport/XalanOtherEncodingWriter.hpp#L323 which is present in one of the SPEC CPU 2017 benchmarks (and prevents SPEC CPU 2017

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-30 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @erichkeane pushed a commit which fixes it https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-30 Thread via cfe-commits
hiraditya wrote: I believe this is breaking the buildbot https://lab.llvm.org/buildbot/#/builders/245/builds/23936 please confirm. https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-30 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: I built boost with `-DBUILD_TESTING=ON` and didn't see any regressions... hopefully that remains the case https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-30 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian closed https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-30 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian updated https://github.com/llvm/llvm-project/pull/90152 >From 2d613e80a59d69a263eaa713d080b97c307fe91b Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Thu, 25 Apr 2024 14:50:53 -0400 Subject: [PATCH 1/2] Reapply "[Clang][Sema] Diagnose class member access

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Erich Keane via cfe-commits
https://github.com/erichkeane approved this pull request. https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Vlad Serebrennikov via cfe-commits
https://github.com/Endilll commented: Changes to `Sema.h` and DR tests look good to me. https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: Tests have already been added :) @erichkeane https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: Code changes LGTM, please add the tests, and I'll do another run at this. https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: @erichkeane I placed all the new changes into a [single commit](https://github.com/llvm/llvm-project/pull/90152/commits/b8fda8106405eed0c234802fff8eecde53f2562e) https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Erich Keane via cfe-commits
erichkeane wrote: Please also identify the changes you made vs the previous patch. https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian updated https://github.com/llvm/llvm-project/pull/90152 >From 99d48cf8ae4987eb747f3baf128265dadb7d2038 Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Thu, 25 Apr 2024 14:50:53 -0400 Subject: [PATCH 1/2] Reapply "[Clang][Sema] Diagnose class member access

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian updated https://github.com/llvm/llvm-project/pull/90152 >From 6ea7f9d476910681ad01e2fe4525fb4d2c556c6f Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Thu, 25 Apr 2024 14:50:53 -0400 Subject: [PATCH 1/4] Reapply "[Clang][Sema] Diagnose class member access

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian updated https://github.com/llvm/llvm-project/pull/90152 >From 6ea7f9d476910681ad01e2fe4525fb4d2c556c6f Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Thu, 25 Apr 2024 14:50:53 -0400 Subject: [PATCH 1/4] Reapply "[Clang][Sema] Diagnose class member access

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian updated https://github.com/llvm/llvm-project/pull/90152 >From 6ea7f9d476910681ad01e2fe4525fb4d2c556c6f Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Thu, 25 Apr 2024 14:50:53 -0400 Subject: [PATCH 1/2] Reapply "[Clang][Sema] Diagnose class member access

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian updated https://github.com/llvm/llvm-project/pull/90152 >From 6ea7f9d476910681ad01e2fe4525fb4d2c556c6f Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Thu, 25 Apr 2024 14:50:53 -0400 Subject: [PATCH 1/2] Reapply "[Clang][Sema] Diagnose class member access

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-26 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian updated https://github.com/llvm/llvm-project/pull/90152 >From 6ea7f9d476910681ad01e2fe4525fb4d2c556c6f Mon Sep 17 00:00:00 2001 From: Krystian Stasiowski Date: Thu, 25 Apr 2024 14:50:53 -0400 Subject: [PATCH 1/2] Reapply "[Clang][Sema] Diagnose class member access

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-25 Thread Krystian Stasiowski via cfe-commits
sdkrystian wrote: Will add tests tomorrow... https://github.com/llvm/llvm-project/pull/90152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-25 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-tidy Author: Krystian Stasiowski (sdkrystian) Changes Reapplies #84050, addressing a bug which cases a crash when an expression with the type of the current instantiation is used as the _postfix-expression_ in a class member access expression

[clang] [clang-tools-extra] Reapply "[Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent

2024-04-25 Thread Krystian Stasiowski via cfe-commits
https://github.com/sdkrystian created https://github.com/llvm/llvm-project/pull/90152 Reapplies #84050, addressing a bug which cases a crash when an expression with the type of the current instantiation is used as the _postfix-expression_ in a class member access expression (arrow form).