microsoft / microsoft/vscode-cpptools

C23 auto type inference support

Aperta
#11,269 4 commenti 4 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

enhancement Language Service parser Visual Studio
Lingua principale
TypeScript
Stelle
6.2k
Fork
1.7k
Merge medio
14h 46m
PR unite (30g)
61

Descrizione

C standard is set to c23 in extension settings.

In C23 standard the auto keyword allows type inference doing pretty much the same job as __auto_type GNU extension. The latter is supported by your extension and if I hover my mouse over declared variable I see that the type is infered correctly.
image

But if I change __auto_type to auto an error is yield:
image
This code compiles and works correctly with -std=c2x flag.

Since __auto_type is already supported, can auto behave the same way if C standard parameter is set to c23?

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Riprodurre il problema con l'impostazione dello standard C configurata su c23, confrontando le dichiarazioni auto e __auto_type e i relativi risultati al passaggio del mouse con una build che utilizza -std=c2x. Il lavoro è completato quando l'estensione accetta auto di C23, non segnala alcun errore errato e deduce correttamente il tipo della variabile dichiarata.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
c, vscode
Ambito
tooling
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.