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

`FSharpValue.PreComputeTuplePropertyInfo` reports an out-of-range index for every struct tuple

Abierto Apto para principiantes
#20,801 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 3 días

@T-Gro ya está trabajando en esto.

Desde el 19/10/2026.

  • #20815 de @T-Gro — abierto

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
64/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
fsharp

Línea de trabajo

Empieza por localizar FSharpValue.PreComputeTuplePropertyInfo en el código fuente de FSharp.Core y sus pruebas de reflexión de tuplas. Comprueba cómo se manejan las tuplas struct y cómo se produce la excepción actual por índice fuera de rango; el issue ofrece PreComputeTupleReader y GetTupleField como alternativas funcionales. El trabajo estará terminado cuando se admitan las llamadas con tuplas struct o fallen con la ArgumentException documentada que dirige a los usuarios a esas alternativas.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Bug Needs-Triage

FSharpValue.PreComputeTuplePropertyInfo fails for every index of a struct tuple type, and the message says that the index is out of range. That sends the reader to the wrong cause: a struct tuple keeps its items in fields, and the method returns a PropertyInfo.

Repro steps

open Microsoft.FSharp.Reflection

FSharpValue.PreComputeTuplePropertyInfo (typeof<struct (int * string)>, 0)

Expected behavior

Either support for struct tuples, or an ArgumentException that says that a struct tuple has no item properties and names FSharpValue.PreComputeTupleReader and FSharpValue.GetTupleField, which work for it.

Actual behavior

System.ArgumentException: The tuple index '0' was out of range for tuple type 'System.ValueTuple`2[[System.Int32, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]'. (Parameter 'index')

Known workarounds

FSharpValue.PreComputeTupleReader and FSharpValue.GetTupleField read struct tuples.

Related information

  • FSharp.Core 10.1.0.0, .NET SDK 10.0.402 (dotnet fsi), Windows 11
  • #4240 fixed FSharpValue.MakeTuple for struct tuples.
Lenguaje dominante
F#
Estrellas
4.3k
Forks
881
Merge medio
4 d 8 h
PR fusionados (30 d)
117

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

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 dotnet/fsharp

Todos los issues de dotnet/fsharp

Issues similares

Más issues de Backend & API Design

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.