-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clang C++20 Feature: P1814R0 - Wording for Class Template Argument Deduction for Alias Templates #54051
Comments
@llvm/issue-subscribers-c-20 |
Friendly ping, any updates on this? |
@alanzhao1 sorry, I haven't had the time to work on this. |
It turned out this and #54050 are both parts of https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1021r6.html which I'm currently working on. |
@yuanfang-chen, I've been looking at this for the past few days, but I saw that you've been pretty active with https://reviews.llvm.org/D139837, which addresses #54050 which is related to this bug. Have you made any progress on this bug? If so, I'll abandon my efforts, as I'm sure you'll have something out before I do and I'd prefer to avoid duplicating work. |
Hi @alanzhao1, I'm still working on this. However, P2582R0 is yet to be picked up AFAIK. |
Thanks for the update! Since you're working on it, I'll abandon my efforts, as you're more experienced in this area. Feel free to add me as a reviewer to the patch (I'm ayzhao on LLVM's phabricator) |
Ran into this pothole today. So uh... Any news here? |
Ran into again today; just for another voice / raised hand. |
Hi @yuanfang-chen, I wonder what's the status now, are you still working on it? If not, I'm happy to pick it up. |
Reassign this issue to me. I'm working on it. |
Fixes #54051 This patch implements the C++20 feature -- CTAD for alias templates (P1814R0, specified in https://eel.is/c++draft/over.match.class.deduct#3). It is an initial patch: - it cover major pieces, thus it works for most cases; - the big missing piece is to implement the associated constraints (over.match.class.deduct#3.3) for the synthesized deduction guides, see the FIXME in code and tests; - Some enhancements on the TreeTransform&TemplateInstantiator to allow performing instantiation on `BuildingDeductionGuides` mode;
@llvm/issue-subscribers-clang-frontend Author: Tom Stellard (tstellar)
---
id: P1814R0
paper: https://wg21.link/p1814r0
|
Fix the following compilation error: ``` | ../../pdf/pdfium/pdfium_api_wrappers.cc:150:32: error: alias template 'PDFiumAPIStringBufferAdapter' requires template arguments; argument deduction only allowed for class templates | 150 | PDFiumAPIStringBufferAdapter adapter(&name, expected_size, | | ^ | ../../pdf/pdfium/pdfium_api_string_buffer_adapter.h:173:1: note: template is declared here | 173 | using PDFiumAPIStringBufferAdapter = | | ^ | 1 error generated. ``` This patch will be dropped once clang >= 19.1.0 is available, which includes support for class template argument deduction (CTAD) for type alias templates (P1814R0 [0]) (#54051 [1]). Note that currently meta-clang [2] provides the clang version `18.1.6`. [0] https://wg21.link/p1814r0 [1] llvm/llvm-project#54051 [2] https://github.com/kraj/meta-clang Signed-off-by: Ariel D'Alessandro <[email protected]>
Fix the following compilation error: ``` | ../../pdf/pdfium/pdfium_api_wrappers.cc:150:32: error: alias template 'PDFiumAPIStringBufferAdapter' requires template arguments; argument deduction only allowed for class templates | 150 | PDFiumAPIStringBufferAdapter adapter(&name, expected_size, | | ^ | ../../pdf/pdfium/pdfium_api_string_buffer_adapter.h:173:1: note: template is declared here | 173 | using PDFiumAPIStringBufferAdapter = | | ^ | 1 error generated. ``` This patch will be dropped once clang >= 19.1.0 is available, which includes support for class template argument deduction (CTAD) for type alias templates (P1814R0 [0]) (#54051 [1]). Note that currently meta-clang [2] provides the clang version `18.1.6`. [0] https://wg21.link/p1814r0 [1] llvm/llvm-project#54051 [2] https://github.com/kraj/meta-clang Signed-off-by: Ariel D'Alessandro <[email protected]>
id: P1814R0
paper: https://wg21.link/p1814r0
The text was updated successfully, but these errors were encountered: