Another failing example:

    use v6;

    class Test {
        sub foo is export(:foo) {42};
        sub bar is export(:bar) {0x42};
        sub baz is export(:foo, :bar) {0o42};
    }

   % perl6 -e 'use Test :foo, :bar'
   ===SORRY!===
   Cannot import symbol &baz from Test, because it already exists in this
lexical scope
    ...


On Mon, Jul 22, 2013 at 3:40 PM, perl6 via RT
<perl6-bugs-follo...@perl.org>wrote:

> Greetings,
>
> This message has been automatically generated in response to the
> creation of a trouble ticket regarding:
>         "[BUG] Import of overlapping export groups",
> a summary of which appears below.
>
> There is no need to reply to this message right now.  Your ticket has been
> assigned an ID of [perl #118965].
>
> Please include the string:
>
>          [perl #118965]
>
> in the subject line of all future correspondence about this issue. To do
> so,
> you may reply to this message.
>
>                         Thank you,
>                         perl6-bugs-follo...@perl.org
>
> -------------------------------------------------------------------------
> Rakudo is trying to import a symbol multiple times, and failing, when it
> belongs to overlapping groups.
>
> Consider 'center' in the following class definition:
>
>     use v6;
>
>     class Alignment {
>
> constant left   is export(:horizontal) = 0.0;
> constant right  is export(:horizontal) = 1.0;
>
> constant bottom is export(:vertical) = 0.0;
> constant top    is export(:vertical) = 1.0;
>
> constant center is export(:horizontal, :vertical) = 0.5;
>     }
>
> % perl6 -v
> This is perl6 version 2013.07-12-ga1e237b built on parrot 5.5.0 revision
> RELEASE_5_5_0
> % perl6 -e'use Alignment :horizontal'
> % perl6 -e'use Alignment :horizontal, :vertical'
> ===SORRY!===
> Cannot import symbol center from Alignment, because it already exists in
> this lexical scope
> at -e:1
> ------> use Alignment :horizontal, :verticalā<EOL>
>     expecting any of:
>         pair value
>         postfix
>
>

Reply via email to