microsoft / microsoft/TypeScript
Regression: incorrect return type when disabled strictNullChecks
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Go
- Estrellas
- 111k
- Forks
- 14.4k
- Merge medio
- 1 d 19 h
- PR fusionados (30 d)
- 117
Descripción
🔎 Search Terms
"ts7011", "strictnullchecks"
🕗 Version & Regression Information
- This changed between versions 5.6.3 and 5.7.0-beta (also in 5.7.0-dev.20241010)
When disabled strictNullChecks in tsconfig.json error TS7011: Function expression, which lacks return-type annotation, implicitly has an T return type
⏯ Playground Link
💻 Code
declare function wildcardToRegExp(s: string): RegExp | null;
const rules = ['a', 'b'].flatMap(rule => wildcardToRegExp(rule) || []); // if flatMap<RegExp> - no error
🙁 Actual behavior
TS7011: Function expression, which lacks return-type annotation, implicitly has an 'RegExp | any[]' return type.
🙂 Expected behavior
No error
Additional information about the issue
No response
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza reproduciendo el caso enlazado de Playground con TypeScript 5.7 y la configuración de tsconfig mostrada; después, compáralo con 5.6.3. El cambio estará completo cuando el callback de flatMap ya no produzca TS7011 con strictNullChecks desactivado y el comportamiento indicado siga siendo correcto.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- typescript
- Área
- compilers
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 42/100