# New Ticket Created by Aaron Sherman
# Please include the string: [perl #128794]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/Ticket/Display.html?id=128794 >
Example code:
$ perl6 -e 'class NotComposed { has &.func = ~*; }; class IsRat does
Rational[Int,Int] { has &.func = ~* }; class IsReal does Real { has &.func
= ~* }; say "In NotComposed, func={NotComposed.new.func.perl}"; say "In
IsRat, func={IsRat.new.func.perl}"; say "In IsReal,
func={IsReal.new.func.perl}"'
In NotComposed, func={ ... }
In IsRat, func=Callable
In IsReal, func={ ... }
Expected all three lines of output to indicate the same value.
I suspect the Rational.new method's nqp::create call is doing something
unfriendly at:
https://github.com/rakudo/rakudo/blob/1ab1fb6f18c3a82dfdcd4e989dcbd5b3a43da940/src/core/Rational.pm#L19
Version and platform info:
$ perl6 -v
This is Rakudo version 2016.07.1-34-ge5c909c built on MoarVM version
2016.07-3-gc01472d
implementing Perl 6.c.
$ uname -a
Linux hostname 4.4.0-31-generic #50-Ubuntu SMP Wed Jul 13 00:07:12 UTC 2016
x86_64 x86_64 x86_64 GNU/Linux
--
Aaron Sherman, M.:
P: 617-440-4332 Google Talk, Email and Google Plus: [email protected]
Toolsmith, developer, gamer and life-long student.