summaryrefslogtreecommitdiff
path: root/test/files/presentation/t8085b
Commit message (Collapse)AuthorAgeFilesLines
* SI-8085 Fix BrowserTraverser for package objectsJason Zaugg2013-12-184-0/+51
A source file like: import foo.bar package object baz Is parsed into: package <empty> { import foo.bar package baz { object `package` } } A special case in Namers compensates by adjusting the owner of `baz` to be `<root>`, rather than `<empty>`. This wasn't being accounted for in `BrowserTraverser`, which underpins `-sourcepath`, and allows the presentation compiler to load top level symbols from sources outside those passes as the list of sources to compile. This bug did not appear in sources like: package p1 package object p2 { ... } ... because the parser does not wrap this in the `package <empty> {}` This goes some way to explaining why it has gone unnoticed for so long.