This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Go patch commited: correct nested_function_num


This patch by Cherry Zhang avoids double counting "." in
nested_function_num in the Go frontend.  Nested functions are named
"outerfunc.$nestedN", where N is a number. nested_function_num
extracts that number. The name is first passed to unpack_hidden_name,
which handles the "." and should result "$nestedN". Don't expect the
"." again.

This fixes an assertion failure when escape analysis is enabled and
-fgo-debug-escape is on. The failure looks like

go1: internal compiler error: in nested_function_num, at
go/gofrontend/names.cc:241
0x7bd7d3 Gogo::nested_function_num(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)

Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu.  Committed
to mainline.

Ian

Attachment: patch.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]