[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-05 Thread Matheus Izvekov via cfe-commits
mizvekov wrote: > Probably best to pass a constant `false`/`true` to preserve old behaviour. We > can't even instantiate templates in the expression evaluator right now, so > don't think we should be worrying about this at the moment Please see https://github.com/llvm/llvm-project/pull/125791

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-05 Thread Michael Buch via cfe-commits
Michael137 wrote: > Might be as simple as a constant true or false, but I'm nearing the end of my > work day so I've reverted it for now. > > In the meantime, @Michael137 might know if this is something LLDB should > actually be tracking. Or in other words, is #125290 something that can happen

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-04 Thread David Spickett via cfe-commits
DavidSpickett wrote: Might be as simple as a constant true or false, but I'm nearing the end of my work day so I've reverted it for now. In the meantime, @Michael137 might know if this is something LLDB should actually be tracking. Or in other words, is https://github.com/llvm/llvm-project/is

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-04 Thread Matheus Izvekov via cfe-commits
mizvekov wrote: > well Thanks, I won't be able to for the next few hours. If it's not trivial to fix, please go ahead and revert. https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.l

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-04 Thread Haojian Wu via cfe-commits
hokein wrote: The lldb code needs to be updated as well https://github.com/llvm/llvm-project/blob/d5488f157c74332646d2b6e9d16c88e61d5a789e/lldb/source/Plugins/ExpressionParser/Clang/CxxModuleHandler.cpp#L277-L283 https://github.com/llvm/llvm-project/pull/125372 _

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-04 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov closed https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-04 Thread via cfe-commits
https://github.com/cor3ntin approved this pull request. https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-03 Thread Erich Keane via cfe-commits
@@ -2525,8 +2525,11 @@ void TextNodeDumper::VisitCXXRecordDecl(const CXXRecordDecl *D) { OS << " instantiated_from"; dumpPointer(Instance); } - if (const auto *CTSD = dyn_cast(D)) + if (const auto *CTSD = dyn_cast(D)) { dumpTemplateSpecializationKind(CTSD->get

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-03 Thread Erich Keane via cfe-commits
https://github.com/erichkeane approved this pull request. I think the 'strict patch match' is valuable in the AST since the paper introduces it as a term of art. I hate our ast-print formats at times, but this is fine to me. https://github.com/llvm/llvm-project/pull/125372 ___

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-03 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-03 Thread Aaron Ballman via cfe-commits
@@ -2525,8 +2525,11 @@ void TextNodeDumper::VisitCXXRecordDecl(const CXXRecordDecl *D) { OS << " instantiated_from"; dumpPointer(Instance); } - if (const auto *CTSD = dyn_cast(D)) + if (const auto *CTSD = dyn_cast(D)) { dumpTemplateSpecializationKind(CTSD->get

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-02 Thread Matheus Izvekov via cfe-commits
@@ -1841,15 +1841,21 @@ class ClassTemplateSpecializationDecl : public CXXRecordDecl, LLVM_PREFERRED_TYPE(TemplateSpecializationKind) unsigned SpecializationKind : 3; + /// When matching the primary template, have we matched any packs on the + /// parameter side, versus

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-02 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov updated https://github.com/llvm/llvm-project/pull/125372 >From 36cab9c0ae9bd24b86dcfa0c260f1b0701d7468e Mon Sep 17 00:00:00 2001 From: Matheus Izvekov Date: Fri, 31 Jan 2025 20:41:39 -0300 Subject: [PATCH] [clang] fix P3310 overload resolution flag propagation Class

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-02 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov updated https://github.com/llvm/llvm-project/pull/125372 >From a624adeb9a0b0af5c9370c6a97b2e2c874cdc066 Mon Sep 17 00:00:00 2001 From: Matheus Izvekov Date: Fri, 31 Jan 2025 20:41:39 -0300 Subject: [PATCH] [clang] fix P3310 overload resolution flag propagation Class

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-02 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov edited https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-02 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov edited https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-02 Thread Matheus Izvekov via cfe-commits
@@ -1841,15 +1841,21 @@ class ClassTemplateSpecializationDecl : public CXXRecordDecl, LLVM_PREFERRED_TYPE(TemplateSpecializationKind) unsigned SpecializationKind : 3; + /// When matching the primary template, have we matched any packs on the + /// parameter side, versus

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-02 Thread Matheus Izvekov via cfe-commits
@@ -2525,8 +2525,11 @@ void TextNodeDumper::VisitCXXRecordDecl(const CXXRecordDecl *D) { OS << " instantiated_from"; dumpPointer(Instance); } - if (const auto *CTSD = dyn_cast(D)) + if (const auto *CTSD = dyn_cast(D)) { dumpTemplateSpecializationKind(CTSD->get

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread via cfe-commits
https://github.com/cor3ntin edited https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread via cfe-commits
https://github.com/cor3ntin commented: Thanks for fixing that quickly. LGTM, just a few nits/comments. (I assume that we will want to cherry-pick that to 20) https://github.com/llvm/llvm-project/pull/125372 ___ cfe-commits mailing list cfe-commits@li

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread via cfe-commits
@@ -2525,8 +2525,11 @@ void TextNodeDumper::VisitCXXRecordDecl(const CXXRecordDecl *D) { OS << " instantiated_from"; dumpPointer(Instance); } - if (const auto *CTSD = dyn_cast(D)) + if (const auto *CTSD = dyn_cast(D)) { dumpTemplateSpecializationKind(CTSD->get

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread via cfe-commits
@@ -1841,15 +1841,21 @@ class ClassTemplateSpecializationDecl : public CXXRecordDecl, LLVM_PREFERRED_TYPE(TemplateSpecializationKind) unsigned SpecializationKind : 3; + /// When matching the primary template, have we matched any packs on the + /// parameter side, versus

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread via cfe-commits
@@ -1841,15 +1841,21 @@ class ClassTemplateSpecializationDecl : public CXXRecordDecl, LLVM_PREFERRED_TYPE(TemplateSpecializationKind) unsigned SpecializationKind : 3; + /// When matching the primary template, have we matched any packs on the + /// parameter side, versus

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov updated https://github.com/llvm/llvm-project/pull/125372 >From 9645f14d3b9aa016cb45ca27ad0425adbbc0e1c6 Mon Sep 17 00:00:00 2001 From: Matheus Izvekov Date: Fri, 31 Jan 2025 20:41:39 -0300 Subject: [PATCH] [clang] fix P3310 overload resolution flag propagation Class

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-modules Author: Matheus Izvekov (mizvekov) Changes Class templates might be only instantiated when they are required to be complete, but checking the template args against the primary template is immediate. This result is cached so that later wh

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Matheus Izvekov (mizvekov) Changes Class templates might be only instantiated when they are required to be complete, but checking the template args against the primary template is immediate. This result is cached so that later when the c

[clang] [clang] fix P3310 overload resolution flag propagation (PR #125372)

2025-02-01 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov created https://github.com/llvm/llvm-project/pull/125372 Class templates might be only instantiated when they are required to be complete, but checking the template args against the primary template is immediate. This result is cached so that later when the class i