Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 0.7.6
-
Fix Version/s: None
-
Component/s: Compiler
-
Labels:None
-
Environment:boo-0.7.6.2299
-
Number of attachments :
Description
Boo.Lang seems to be used by boo as a global namespace, which currently introduces some interestings bug: you are unable to define nor consume namespaces that begin with Runtime, i.e. Runtime.<whatever> (for example if some external module defines namespace Runtime.<whatever> you won't be able to consume it), it reports:
BCE0021: Namespace 'Runtime.Something' not found, maybe you forgot to add an assembly reference?
Also, if you have some module with namespace Runtime, if you import Runtime, it won't generate any error, but you won't see classes inside that module, they become hidden to Boo programs. I think fallback case should be added: if part, but not whole namespace found in Boo.Lang (global?) namespace, it should ignore that and try to seek further, and if namespace is found in Boo.Lang (global?) namespace, it should still try to look further and import that as well, ignoring errors if any.
Activity
| Field | Original Value | New Value |
|---|---|---|
| Attachment | df-boo-744.patch [ 21206 ] |
| Attachment | df-boo-744.patch [ 21207 ] |
I think this patch fixes it to some degree (not sure if doesn't break anything though, I didn't dig it too deply), and it works with Runtime.*, however I don't yet know how to do "double import" (i.e. how to import both Boo.Lang.Runtime and global::Runtime when there's import Runtime)...