Array construct/destruct should warn at least for duplicate keys
Abierto
Nadie ha tomado este issue todavía.
Feature
Status: Requires RFC
- Lenguaje dominante
- C
- Estrellas
- 40.4k
- Forks
- 8.1k
- Merge medio
- 2 d 13 h
- PR fusionados (30 d)
- 96
Descripción
Description
$arr = ['4', 'x' => 5];
// construct with duplicate keys
var_dump(['x' => 4, 'x' => 6]);
var_dump([2 => 4, 2.0 => 6]);
// spread operator leading to duplicate keys
var_dump(['x' => 4, ...$arr]);
// destruct with duplicate keys (it is safe to do, but if same key should be assigned to another variable too, it can be done after the destruct)
['x' => $a, 'x' => $b] = ['x' => 10];
var_dump([$a, $b]);
all cases should emit at least warning if not an error
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 los ejemplos de construcción de claves duplicadas, spread y destructuring del issue, incluido el caso enlazado en 3v4l.org. Sigue el tratamiento de las claves de arrays por parte del intérprete de PHP e identifica las pruebas o puntos de entrada relevantes; se considera terminado cuando cada caso de clave duplicada enumerado emite al menos una advertencia o un error.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- php
- Área
- compilers
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 25/100