microsoft / microsoft/TypeScript
In JS, typedef tags are not bound on non-expression statements
Personne n'a encore pris cette issue.
- Langage dominant
- Go
- Étoiles
- 111k
- Forks
- 14.3k
- Merge moyen
- 2 j 4 h
- PR mergées (30 j)
- 132
Description
/** @typedef {number} A */
var ok;
/** @typedef {number} B */
ok = 1; // also ok
/** @typedef {number} C not ok */
;
/** @typedef {number} D not ok */
if (ok) {
}
/** @type {[A, B, C, D]} */
var t = [1,2,3,4]
Expected behavior:
All of A, B, C, and D are type aliases for number.
Actual behavior:
Cannot find name 'C' and 'D'.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire l’extrait JavaScript et suivre la manière dont les balises typedef de JSDoc sont associées aux instructions de déclaration de variables, aux instructions d’expression, aux instructions vides et aux instructions if. La correction est terminée lorsque A, B, C et D sont tous résolus en tant qu’alias de number dans l’annotation de type présentée, avec une couverture de régression pour ces formes d’instructions.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, typescript
- Domaine
- compilers
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100