Commit b7f55c8e by Ian Lance Taylor

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
parent 4f0eaba2
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 =
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment