Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

deduction guides do not work through alias templates

Abierto
#14,794 1 comentario 0 reacciones 1 asignado Ver en GitHub

@sean-mcmanus ya está trabajando en esto.

Desde el 23/9/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

bug Language Service parser
Environment
  • OS and Version: x64, Arch Linux (7.2.6.arch2-1)
  • VS Code Version: 1.138.0 commit: 7debcd0e2acdea1c52de81bf9ee1620444407dda
  • C/C++ Extension Version: 1.35.2 pre-release
  • If using SSH remote, specify OS of remote machine: N/A
Bug Summary and Steps to Reproduce

Bug Summary: Intellisense fails to perform CTAD in the following code, when an alias template for Foo is created:

template<typename T>
struct Foo{
    Foo(auto...){}
};
template<typename ...T>
Foo(T...) -> Foo<T...[0uz]>;

template<typename T>
using Foo2 = Foo<T>;

int main(){
    Foo x{3.1f};  // OK
    Foo2 y{3.1f}; // Not OK??
    return 0;
}
Image

GCC accepts this code.

Steps to reproduce:

  1. Create a new folder, open it as a workspace, and copy test.cpp into it
  2. Open file
  3. See error

Expected behavior:
Intellisense correctly performs CTAD and does not raise an error.

Configuration and Logs

c_cpp_properties.json: (None used)

Log Diagnostics output

Language server logging

Other Extensions

No response

Additional context

In testing, a variadic deduction guide and the use of pack indexing seemed necessary to trigger the bug. Although I'm not certain, it could indicate a problem with pack indexing somehow blocking template deduction.

Lenguaje dominante
TypeScript
Estrellas
6.2k
Forks
1.7k
Merge medio
1 d 4 h
PR fusionados (30 d)
58

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de microsoft/vscode-cpptools

Todos los issues de microsoft/vscode-cpptools

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.