]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: fix position of fake receivers; be more careful in logopt
authorDavid Chase <drchase@google.com>
Fri, 14 Oct 2022 20:24:44 +0000 (16:24 -0400)
committerDavid Chase <drchase@google.com>
Mon, 17 Oct 2022 15:59:12 +0000 (15:59 +0000)
commitda6042e82eb7fe5ba40a5c17959a31e19a44c3e8
treea4d6eaf9c91f8ca17c6afea195a81d5a8ff7ec4e
parentc83d4fba0791927e9a0b66729ee886e0f8d15249
cmd/compile: fix position of fake receivers; be more careful in logopt

The src.NoXPos in fake receivers was leaking, through a series of
mishaps, all the way to logopt.  If done just so, this can lead to
a compiler crash.  This makes logopt crash-proof and eliminates the
root cause as well.

I'm reluctant to write a test for this because it's kinda slow
and involved; my working test is "compile something that mentions
the flag package with -json=0,$TMPDIR flag, then be sure that
$TMPDIR/flag/__unnamed__.json was not created".

Change-Id: I384b717c0e7522953d22d61f7e06319e11192d7d
Reviewed-on: https://go-review.googlesource.com/c/go/+/443156
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Michael Pratt <mpratt@google.com>
src/cmd/compile/internal/logopt/log_opts.go
src/cmd/compile/internal/types/type.go