Stale comments after the dict and JSX representation changes
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- Une demi-journée
- Accessibilité débutants
- 55/100
- Type d'issue
- Documentation
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- javascript, ocaml
- Domaine
- compilers
Piste de recherche
Start with the three comments named in the issue: compiler/ml/translcore.ml around line 1453, analysis/reanalyze/src/side_effects.ml around line 63, and compiler/ml/lambda.ml lines 292-294. Check them against compiler/core/lam_compile_primitive.ml, which now compiles Pdict_spread to an object literal. Done when the dict and side-effect comments describe the current output, and the lambda.ml comment is either corrected or backed by the constructor-ordering practice. That last part needs a maintainer decision, so ask before changing it.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Found by differential semantic drift analysis from ece8b148 to a7721303.
What is broken
Comments still describe representations that the dict and JSX changes replaced:
translcore.mlL1453 says dict spreads compile toObject.assignviaPrimitive_dict.spread. Since #8747Pdict_spreadcompiles to an object literal with spreads (lam_compile_primitive.ml).analysis/reanalyze/src/side_effects.mlL63 says "Object.assign reads the spread dicts". The logic (a spread may have side effects) still holds; the wording does not.compiler/ml/lambda.mlL292-L294 says.cmjfiles marshalLambda.twithout a version check, so constructors must not be inserted where they shift existing tags. #8754 then insertedPjsxamong the non-constant constructors and changedPjs_call. Rebuilds after a compiler change probably make this harmless, but the comment and the practice disagree: either the comment overstates the constraint, or the constraint was broken.
Possible cause (speculation only)
A guess: each PR updated the code paths it changed and their tests, while comments elsewhere that describe the same mechanism were not searched for.
- Langage dominant
- OCaml
- Étoiles
- 7.5k
- Forks
- 484
- Merge moyen
- 19 h 46 min
- PR mergées (30 j)
- 81
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire 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.
Autres issues de rescript-lang/rescript
-
Difficulté 3/5 Une demi-journée Accessibilité débutants 58/100
rescript-lang/rescript#8757 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 40/100
rescript-lang/rescript#8753 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 22/100
rescript-lang/rescript#8733 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
rescript-lang/rescript#8727 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
rescript-lang/rescript#8726 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de rescript-lang/rescript
Issues similaires
-
flang:semantics
Difficulté 2/5 1-3 heures Accessibilité débutants 73/100
llvm/llvm-project#231051 ·
Les mainteneurs répondent en général sous 1 jour
-
bug derived types format I/O medium priority semantics
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
webgpu-tools/wesl-rs#329 ·
Les mainteneurs répondent en général sous 1 jour
-
compiler/runtime
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
golang/go#82141 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour