Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wrong multi method comb selected after module loading #5437

Closed
p6rt opened this issue Jul 8, 2016 · 7 comments
Closed

wrong multi method comb selected after module loading #5437

p6rt opened this issue Jul 8, 2016 · 7 comments
Labels
JVM Related to Rakudo-JVM

Comments

@p6rt
Copy link

p6rt commented Jul 8, 2016

Migrated from rt.perl.org#128580 (status was 'resolved')

Searchable as RT128580$

@p6rt
Copy link
Author

p6rt commented Jul 8, 2016

From @usev6

Currently there is a weird error while running S32-str/comb.t on rakudo-j. For some reason the test file aborts after 39 tests with the message 'Type check failed in binding $pat; expected Regex but got Str ("o")'.

Test number 40 runs just fine standalone​:

$ perl6-j -Ilib -e 'use Test; is comb("o","ooo"), <o o o>'
ok 1 -

I tried to golf the problem down and that's what I arrived at​:

$ > Foo.pm6
$ ./perl6-j -I. -e 'use Foo; "f".comb; "o".comb("o")'
Type check failed in binding $pat; expected Regex but got Str ("o")
  in block <unit> at -e line 1

So the problem seems to be related to module loading and it happens during that second call of method comb.

@p6rt
Copy link
Author

p6rt commented Jul 8, 2016

From @lizmat

Have you tried with MVM_SPESH_DISABLE=1 and friends?

On 08 Jul 2016, at 22​:56, Christian Bartolomaeus (via RT) <perl6-bugs-followup@​perl.org> wrote​:

# New Ticket Created by Christian Bartolomaeus
# Please include the string​: [perl #​128580]
# in the subject line of all future correspondence about this issue.
# <URL​: https://rt-archive.perl.org/perl6/Ticket/Display.html?id=128580 >

Currently there is a weird error while running S32-str/comb.t on rakudo-j. For some reason the test file aborts after 39 tests with the message 'Type check failed in binding $pat; expected Regex but got Str ("o")'.

Test number 40 runs just fine standalone​:

$ perl6-j -Ilib -e 'use Test; is comb("o","ooo"), <o o o>'
ok 1 -

I tried to golf the problem down and that's what I arrived at​:

$ > Foo.pm6
$ ./perl6-j -I. -e 'use Foo; "f".comb; "o".comb("o")'
Type check failed in binding $pat; expected Regex but got Str ("o")
in block <unit> at -e line 1

So the problem seems to be related to module loading and it happens during that second call of method comb.

@p6rt
Copy link
Author

p6rt commented Jul 8, 2016

The RT System itself - Status changed from 'new' to 'open'

@p6rt
Copy link
Author

p6rt commented Jul 9, 2016

From @usev6

On Fri Jul 08 14​:57​:11 2016, elizabeth wrote​:

Have you tried with MVM_SPESH_DISABLE=1 and friends?

This only happens on JVM, so there aren't many of those friends, are there? :-)

At least I tried now with 'optimize=0' and got the same error. I also tried 'RAKUDO_MODULE_DEBUG=1' but didn't something strange there​:

$ RAKUDO_MODULE_DEBUG=1 ./perl6-j --optimize=foo -I. -e 'use Foo; "f".comb; "o".comb("o")'
  11900 RMD​: Loading settings CORE
  11900 RMD​: Setting up default paths​: . blib
  11900 RMD​: going to load Perl6​::BOOTSTRAP
  11900 RMD​: Settings CORE loaded
360 11900 RMD​: Attempting 'Foo' as a pragma
  88 11900 RMD​: 'Foo' is not a valid pragma
  33 11900 RMD​: Attempting to load 'Foo'
  11 11900 RMD​: Late loading 'Foo'
  20 11900 RMD​: Parsing specs​: .
  28 11900 RMD​: Parsing specs​:
  16 11900 RMD​: Parsing specs​: .
  13 11900 RMD​: Parsing specs​: blib
  21 11900 RMD​: Parsing specs​: /usr/home/christian/bin/rakudo.jvm/share/nqp/lib
478 11900 RMD​: try-load 7795C5BD3D21241ED31BB5DB19106B21CC622A86​: /usr/home/christian/perl6/perl6-roast-data/rakudo.jvm/Foo.pm6
  55 11900 RMD​: Trying to load 7795C5BD3D21241ED31BB5DB19106B21CC622A86 from /usr/home/christian/perl6/perl6-roast-data/rakudo.jvm/.precomp
  36 11900 RMD​: Trying to load 7795C5BD3D21241ED31BB5DB19106B21CC622A86.repo-id from /usr/home/christian/perl6/perl6-roast-data/rakudo.jvm/.precomp
  44 11900 RMD​: Loading precompiled
  /usr/home/christian/perl6/perl6-roast-data/rakudo.jvm/.precomp/FCFAAA33FDBB30941CBF3561334B7DCB959F5F4F.1.468023657397E9/77/7795C5BD3D21241ED31BB5DB19106B21CC622A86
187 11900 RMD​: Performing imports for 'Foo'
  12 11900 RMD​: Imports for 'Foo' done
Type check failed in binding $pat; expected Regex but got Str ("o")
  in block <unit> at -e line 1

@p6rt
Copy link
Author

p6rt commented Dec 12, 2017

From @usev6

There was indeed something wrong with the multi cache on the JVM backend. Fixed with Raku/nqp@7eaebf5abd

I'm closing this ticket as 'resolved'.

1 similar comment
@p6rt
Copy link
Author

p6rt commented Dec 12, 2017

From @usev6

There was indeed something wrong with the multi cache on the JVM backend. Fixed with Raku/nqp@7eaebf5abd

I'm closing this ticket as 'resolved'.

@p6rt
Copy link
Author

p6rt commented Dec 12, 2017

@usev6 - Status changed from 'open' to 'resolved'

@p6rt p6rt closed this as completed Dec 12, 2017
@p6rt p6rt added the JVM Related to Rakudo-JVM label Jan 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JVM Related to Rakudo-JVM
Projects
None yet
Development

No branches or pull requests

1 participant