go/src
Dmitry Vyukov 3a0fbfab57 cmd/gc: generate simpler names for closures
Fixes #8291

There were several complaints about closure names in the issue tracker.
The first problem is that you see names like net/http.func·001
in profiles, traces, etc. And there is no way to figure out what
is that function.
Another issue is non-US-ascii symbols. All programs out there
should accept UTF-8. But unfortunately it is not true in reality.
For example, less does not render middle dot properly.

This change prepends outer function name to closure name and
replaces middle dot with dot. Now names look like:

main.glob.func1
main.glob.func2
main.glob.func2.1
main.init.1
main.init.1.func1
main.init.1.func1.1
main.main.func1
main.main.func1.1

Change-Id: I725726af88f2ad3ced2e3450f0f06bf459fd91c0
Reviewed-on: https://go-review.googlesource.com/3964
Reviewed-by: Russ Cox <rsc@golang.org>
2015-02-18 07:09:50 +00:00
..
archive archive/tar: set Header.Mode in example 2015-01-26 01:54:06 +00:00
bufio bufio: add Reader.Discard 2015-01-07 06:37:57 +00:00
builtin
bytes bytes, strings: improve documentation for Count functions 2015-01-22 18:28:35 +00:00
cmd cmd/gc: generate simpler names for closures 2015-02-18 07:09:50 +00:00
compress all: don't refer to code.google.com/p/go{,-wiki}/ 2015-02-06 14:41:47 +00:00
container
crypto crypto/x509: allow matchHostnames to work with absolute domain names 2015-02-11 01:20:35 +00:00
database/sql database/sql: reduce lock contention in Stmt.connStmt 2015-01-24 09:56:25 +00:00
debug
encoding encoding/xml: encoding name spaces correctly 2015-02-13 17:28:45 +00:00
errors
expvar expvar: fix build 2015-02-05 13:53:29 +00:00
flag
fmt cmd/gc: allocate buffers for non-escaped strings on stack 2015-01-28 20:12:38 +00:00
go net: re-implement Interfaces and InterfaceAddrs for IPNet, IPv6 on Windows 2015-02-10 00:44:05 +00:00
hash
html all: don't refer to code.google.com/p/go{,-wiki}/ 2015-02-06 14:41:47 +00:00
image image/draw: add CMYK fast path. 2015-02-17 23:17:12 +00:00
index/suffixarray
internal/syscall net: re-implement Interfaces and InterfaceAddrs for IPNet, IPv6 on Windows 2015-02-10 00:44:05 +00:00
io
lib9 lib9: provide alterantive implementation of ldexp and frexp 2015-02-06 05:40:28 +00:00
libbio
liblink cmd/gc: factor newly-portable code into gc directory 2015-02-11 20:36:27 +00:00
log log: add SetOutput method on Logger 2015-01-30 16:00:10 +00:00
math math: change Nextafter64 to Nextafter in the description of Nextafter 2015-02-17 14:29:18 +00:00
mime mime/multipart: moved some code to mime/internal/quotedprintable 2014-12-23 19:30:02 +00:00
net all: fix typo in doc 2015-02-17 04:37:18 +00:00
os all: fix typo in doc 2015-02-17 04:37:18 +00:00
path all: don't refer to code.google.com/p/go{,-wiki}/ 2015-02-06 14:41:47 +00:00
reflect cmd/gc: fix noscan maps 2015-02-15 08:52:14 +00:00
regexp regexp: update URLs in tests 2015-01-26 01:54:28 +00:00
runtime runtime: fix runtime-gdb_test on arm 2015-02-17 20:10:31 +00:00
sort sort: fixed small typo in comments 2015-02-08 23:38:50 +00:00
strconv strconv: simplified logic resulting in faster float formatting 2015-02-11 17:45:19 +00:00
strings bytes, strings: improve documentation for Count functions 2015-01-22 18:28:35 +00:00
sync sync/atomic: darwin/arm support 2015-02-06 05:49:14 +00:00
syscall syscall: make mksyscall_windows.go to work even when output does not uses unsafe package 2015-02-17 08:31:38 +00:00
testing testing: pad benchmark names to align results 2015-02-07 21:52:25 +00:00
text
time Build fix for plan9 after 8bf13838eb. 2015-02-08 22:30:46 +00:00
unicode unicode: Fixed an out of date comment (MaxLatin1, not Latin1Max). 2015-02-16 21:35:33 +00:00
unsafe unsafe: minor doc string improvements 2015-01-28 19:42:15 +00:00
Make.dist
all.bash
all.bat
all.rc
androidtest.bash androidtest.bash: remove use of cp --preserve. 2015-02-13 21:16:25 +00:00
clean.bash
clean.bat
clean.rc
make.bash cmd/go, make: remove ccflags 2015-02-04 16:15:00 +00:00
make.bat [dev.cc] build: do not pass GOHOSTOS and GOHOSTARCH to Go 1.4 build 2015-01-14 20:17:20 +00:00
make.rc cmd/go, make: remove ccflags 2015-02-04 16:15:00 +00:00
nacltest.bash cmd/dist: reactivate vfp detection on linux/arm 2015-02-10 00:17:06 +00:00
race.bash
race.bat build: fix race.bat flags 2015-02-07 01:54:43 +00:00
run.bash cmd/cgo: remove obsolete -cdefs flag 2015-01-07 22:49:59 +00:00
run.bat
run.rc build: add GOTESTONLY environment test for Plan 9's run.rc 2015-01-08 04:35:23 +00:00