From 12d5ebf9630364515229268e48c04cffd069dd32 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Fri, 19 Oct 2018 19:43:47 +0000 Subject: [PATCH] compiler: don't export any functions with special names This keeps init functions from appearing in the export data. Checking for special names in general means that we don't need to check specifically for nested functions or thunks, which have special names. Reviewed-on: https://go-review.googlesource.com/c/143237 From-SVN: r265321 --- gcc/go/gofrontend/MERGE | 2 +- gcc/go/gofrontend/export.cc | 8 ++------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index bb7ab780f6b..1503672619f 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -6f4bce815786ff3803741355f7f280e4e2c89668 +e1dc92a6037a3f81ea1b8ea8fb6207af33505f0c The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/gcc/go/gofrontend/export.cc b/gcc/go/gofrontend/export.cc index da3d67f1152..6365d6440b7 100644 --- a/gcc/go/gofrontend/export.cc +++ b/gcc/go/gofrontend/export.cc @@ -75,12 +75,8 @@ should_export(Named_object* no) if (Gogo::is_hidden_name(no->name())) return false; - // We don't export nested functions. - if (no->is_function() && no->func_value()->enclosing() != NULL) - return false; - - // We don't export thunks. - if (no->is_function() && Gogo::is_thunk(no)) + // We don't export various special functions. + if (Gogo::is_special_name(no->name())) return false; // Methods are exported with the type, not here. -- 2.30.2