Hi Arpad,

You have to always use namespace name as prefix for acesing namespace
entities.
(The only exception is direct import of calss).
So expectatins in your tests are wrong.

Thanks. Dmitry.

> -----Original Message-----
> From: Arpad Ray [mailto:[EMAIL PROTECTED] 
> Sent: Sunday, July 15, 2007 7:32 PM
> To: Dmitry Stogov
> Cc: 'Hans Lellelid'; 'PHP internals'
> Subject: Re: [PHP-DEV] Simple Namespace Proposal
> 
> 
> Dmitry Stogov wrote:
> > The patch is already committed to the HEAD.
> >
> > Dmitry.
> >   
> There seem to be some problems with importing across files. The tests 
> currently in CVS are all in single files so it's not immediately 
> obvious. When a namespace is declared in one file and imported in 
> another, classes must be addressed absolutely either in the import or 
> when used, and functions must be addressed absolutely when used, 
> irrespective of imports.
> 
> I've attached some phpt files to test this, but here's a simple 
> illustration:
> 
> foo.php:
> <?php
> namespace foo;
> function foobar() { }
> class Foobaz { }
> ?>
> 
> bar.php:
> <?php
> import foo;
> foobar(); // error
> new Foobaz; // error
> foo::foobar(); // ok
> new foo::Foobaz; // ok
> 
> import foo::foobar;
> import foo::Foobaz;
> foobar(); // error
> new Foobaz; // ok
> 
> import foo::foobar as foobar2;
> foobar2(); // error
> ?>
> 
> 
> Arpad
> 

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to