compiler: follow-on fix for finalizing imported methods
authorIan Lance Taylor <ian@gcc.gnu.org>
Tue, 23 Jul 2019 00:34:38 +0000 (00:34 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Tue, 23 Jul 2019 00:34:38 +0000 (00:34 +0000)
commit1d46067b347ab1814de3cdd7f620f5c8ca73232a
tree347f784d5b19e1702eed59c9479fec0c5496c742
parent22e4efa142acc9c7cdabc4ace27e306b8e807a56
compiler: follow-on fix for finalizing imported methods

    This patch is a revision to CL 185518, which added code to perform
    finalization of methods on types created by the importer and not
    directly reachable until inlining is done.

    The original fix invoked the finalization code at the end of
    Import::read_types(), but it turns out this doesn't handle the case
    where a type with methods is read in due to a reference from something
    later in the export data (a function or variable). The fix is to move
    the import finalization call to the end of Import::import().

    Testcase for this bug is in CL 187057.

    Fixes golang/go#33219.

    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/187058

From-SVN: r273713
gcc/go/gofrontend/MERGE
gcc/go/gofrontend/import.cc