Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

bug: preserve reference values from tied-hash values()

Fermée
#1,554 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
68/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Active
Stack technique
java, perl
Domaine
compilers

Piste de recherche

Use the upstream CPAN test t/1_basic.t, especially test 8, as the behavioral reference, then locate the tied-hash values implementation and existing project regression tests. Add focused coverage for reference-valued FETCH results, validate it with system Perl, and confirm both JVM and interpreter backends pass while retaining the CPAN test as integration coverage.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

area:backend area:runtime bug

Summary

values %hash on a tied hash can return scalar iteration values instead of
the references returned by the tie object's FETCH method.

Evidence

  • CPAN distribution: Tie::MultiKeyInsertOrderHash 0.1 (pure Perl).
  • Archived CPAN run: 20260928-091741-26386.
  • Upstream test: t/1_basic.t, test 8, Values in right order test.
  • System Perl 5.42.2: 16/16 tests pass.
  • PerlOnJava JVM backend: 15/16 tests pass; test 8 fails.
  • PerlOnJava interpreter backend: the same 15/16 result and test-8 failure.

The distribution's tie class stores an array reference for each key. After
assigning repeated values to A and B, standard Perl makes
[values %hash] contain those array references. PerlOnJava instead reports
the first scalar value ('1') where the first array reference ([1, 3]) is
expected. keys %hash and list-context each %hash pass in the same test.

Expected behavior

For a tied hash, values %hash must preserve the actual values returned by
the tie interface, including references. It must not substitute the scalar
value paired with a key during tied iteration.

Acceptance criteria

  • Add a project-owned focused regression that verifies reference-valued
    FETCH results from values %tied_hash.
  • Validate the test with system Perl first.
  • Verify JVM and interpreter backend success.
  • Retain the existing CPAN test as integration coverage.

Duplicate check

No issue matched the distribution name or stable failing test. Closed #20 is
limited to a tied element access in void context, and open #1269 is a broad
core-suite tracker for repeated FETCH calls; neither covers this result
materialization error.

Langage dominant
Perl
Étoiles
64
Forks
8
Merge moyen
5 h 44 min
PR mergées (30 j)
203

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de fglock/PerlOnJava

Toutes les issues de fglock/PerlOnJava

Issues similaires

Plus d'issues Perl

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.