compiler: don't use predeclared location for implicit runtime import
For the main package we add an implicit import of the runtime package, to ensure that it is initialized. That import used the predeclared location, which caused various tests, notably Named_type::is_builtin, to treat these imported names as builtin. Start using a real location, so that those tests do the right thing. By the way, this implicit import is a partial cause of golang/go#19773. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/194337 From-SVN: r275540
This commit is contained in:
parent
4f0eaba24d
commit
b7f55c8e35
@ -1,4 +1,4 @@
|
||||
28c9053b3d507bef7bd56cb01c6b22deea354cdd
|
||||
17bef47f464983fd8513f88f3f159d28e2423e79
|
||||
|
||||
The first line of this file holds the git revision number of the last
|
||||
merge done from the gofrontend repository.
|
||||
|
@ -2589,9 +2589,11 @@ Gogo::define_global_names()
|
||||
if (this->is_main_package())
|
||||
{
|
||||
// Every Go program has to import the runtime package, so that
|
||||
// it is properly initialized.
|
||||
// it is properly initialized. We can't use
|
||||
// predeclared_location here as it will cause runtime functions
|
||||
// to appear to be builtin functions.
|
||||
this->import_package("runtime", "_", false, false,
|
||||
Linemap::predeclared_location());
|
||||
this->package_->location());
|
||||
}
|
||||
|
||||
for (Bindings::const_declarations_iterator p =
|
||||
|
Loading…
Reference in New Issue
Block a user