Skip Menu |
Report information
Id: 128268
Status: open
Priority: 0/
Queue: perl6

Owner: Nobody
Requestors: rob [at] hoelz.ro
Cc:
AdminCc:

Severity: (no value)
Tag: (no value)
Platform: (no value)
Patch Status: (no value)
VM: (no value)



Subject: "Could not find symbol" error occurs when you use module A::B::C within A::B's class definition
Download (untitled) / with headers
text/plain 609b
I found this issue when trying to use XML::Query; the attached tarball has a golfed-down example. I've also attached a picture that illustrates the "use" relationship between the various units. When I try to run test.pl in the tarball, I get the following error: Show quoted text
> ===SORRY!=== > Could not find symbol '&B'
Disabling precompilation fixes the issue, as does rearranging the contents of lib/Common/A.pm so that "use Common::A::B" comes before "unit class Common::A". Removing any seemingly superfluous use statement fixes the issue, so it appears this is one of those wacky dependency graph + precomp bugs.
Subject: test-module.png
Download test-module.png
image/png 31.4k
test-module.png
Subject: test-module.tar.xz
Download test-module.tar.xz
application/x-xz 392b

Message body not shown because it is not plain text.

Date: Sat, 28 May 2016 09:55:24 +0000
To: perl6-compiler [...] perl.org, bugs-bitbucket [...] rt.perl.org
From: Lloyd Fournier <lloyd.fourn [...] gmail.com>
Subject: Re: [perl #128268] "Could not find symbol" error occurs when you use module A::B::C within A::B's class definition
Download (untitled) / with headers
text/plain 1023b
Looks similar to RT #128156. 


On Fri, May 27, 2016 at 10:49 PM Rob Hoelz <perl6-bugs-followup@perl.org> wrote:
Show quoted text
# New Ticket Created by  Rob Hoelz
# Please include the string:  [perl #128268]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org/Ticket/Display.html?id=128268 >


I found this issue when trying to use XML::Query; the attached tarball has a golfed-down example.  I've also attached a picture that illustrates the "use" relationship between the various units.

When I try to run test.pl in the tarball, I get the following error:

> ===SORRY!===
> Could not find symbol '&B'

Disabling precompilation fixes the issue, as does rearranging the contents of lib/Common/A.pm so that "use Common::A::B" comes before "unit class Common::A".  Removing any seemingly superfluous use statement fixes the issue, so it appears this is one of those wacky dependency graph + precomp bugs.
Download (untitled) / with headers
text/plain 355b
While RT#128156 is now marked as resolved, this bug is still present: zoffix@leliana:~/CPANPRC/rakudo$ ./perl6-m -v This is Rakudo version 2016.05-361-gd1ebac0 built on MoarVM version 2016.06-9-g8fc21d5 implementing Perl 6.c. zoffix@leliana:~/CPANPRC/rakudo$ ./perl6-m -Iz/test-module/lib/ z/test-module/test.pl ===SORRY!=== Could not find symbol '&B'


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org