1
0
mirror of https://github.com/golang/go synced 2024-11-18 15:24:41 -07:00
go/test
Michael Hudson-Doyle b92a0a8969 cmd/internal/gc, cmd/go: fix value of importpath symbol
In https://golang.org/cl/7797 I attempted to use myimportpath to set the value
of the go.importpath.$foo. symbol for the module being compiled, but I messed
it up and only set the name (which the linker rewrites anyway). This lead to
the importpath for the module being compiled being "". This was hard to notice,
because all modules that import another define the importpath for their
imported modules correctly -- but main is not imported, and this meant that the
reflect module saw all fields of all types defined in the main module as
exported.

The fix is to do what I meant to do the first time, add a test and change the
go tool to compile main packages with -p main and not -p
command-line-arguments.

Fixes #10332

Change-Id: I5fc6e9b1dc2b26f058641e382f9a56a526eca291
Reviewed-on: https://go-review.googlesource.com/8481
Reviewed-by: Russ Cox <rsc@golang.org>
2015-04-19 20:14:59 +00:00
..
bench build: adjustments for move from src/pkg to src 2014-09-08 00:06:45 -04:00
bugs test: migrate remaining tests to run.go 2014-12-22 22:41:34 +00:00
chan cmd/gc: implement 'for range x {' 2014-07-16 19:27:10 -04:00
ddd2.dir test: convert tests to run.go whenever possible. 2012-10-10 22:35:27 +02:00
dwarf test: make rundir match compiledir/errorcheckdir. 2013-01-11 22:00:48 +01:00
fixedbugs cmd/internal/gc, cmd/go: fix value of importpath symbol 2015-04-19 20:14:59 +00:00
import2.dir test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
import4.dir test: match gccgo import error messages 2013-12-12 19:02:11 -08:00
interface cmd/internal/gc: inline x := y.(*T) and x, ok := y.(*T) 2015-03-20 20:05:37 +00:00
ken
method4.dir cmd/gc: do not omit wrapper for expression (interface{...}).F 2014-01-07 13:26:48 +01:00
safe test: adapt old-style tests to new flag parsing. 2013-01-11 22:05:46 +01:00
stress build: adjustments for move from src/pkg to src 2014-09-08 00:06:45 -04:00
syntax test: match gccgo error messages 2013-12-12 17:18:12 -08:00
64bit.go cmd/gc: Error out on division by constant zero. 2013-01-30 20:21:08 +01:00
235.go
alias1.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
alias.go
append.go
args.go test: run some more tests by default 2012-11-08 09:04:27 -08:00
assign1.go
assign.go cmd/gc: prohibit short variable declarations containing duplicate symbols 2014-10-06 17:16:39 -04:00
bigalg.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
bigmap.go
blank1.go test: match gccgo error messages for blank1.go 2013-09-28 15:19:05 -07:00
blank.go test: revert changes made for Go SSA interpreter test. 2013-10-08 14:36:20 -04:00
bom.go gc: initial BOM is legal. 2012-09-10 13:03:07 -07:00
bombad.go gc: initial BOM is legal. 2012-09-10 13:03:07 -07:00
bounds.go test: prepare for 64-bit ints 2012-09-24 00:06:41 -04:00
chancap.go
chanlinear.go runtime: test for linear enqueue/dequeue behavior 2014-12-08 22:18:17 +00:00
char_lit1.go
char_lit.go
clearfat.go [dev.power64] 9g: fix under-zeroing in clearfat 2014-10-31 11:08:27 -04:00
closedchan.go
closure1.go cmd/gc: capture variables by value 2015-01-29 13:07:30 +00:00
closure2.go cmd/gc: fix capturing by value for range statements 2015-02-03 15:48:48 +00:00
closure.go
cmp6.go cmd/gc: do not consider length zero arrays as comparable. 2014-01-31 00:30:56 +01:00
cmp.go cmd/gc: do not nop-convert equivalent but different interface types. 2014-02-27 08:07:50 +01:00
cmplx.go cmd/gc: reject complex calls with mismatched argument types. 2013-03-11 22:55:14 +01:00
cmplxdivide1.go
cmplxdivide.c test: comment the behavior and use of cmplxdivide* 2015-01-15 00:00:06 +00:00
cmplxdivide.go test: comment the behavior and use of cmplxdivide* 2015-01-15 00:00:06 +00:00
complit1.go
complit.go
compos.go
const1.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
const2.go test: match gccgo error messages 2012-09-28 08:30:30 -07:00
const3.go
const4.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
const5.go cmd/gc: reject builtin function calls in len(fixed array) constants 2014-04-03 19:04:33 -04:00
const6.go test: match gccgo error strings. 2013-06-26 18:05:02 +02:00
const.go exp/ssa/interp: (#6 of 5): test interpretation of SSA form of $GOROOT/test/*.go. 2013-02-21 12:48:38 -05:00
convert1.go
convert3.go
convert.go
convlit1.go
convlit.go
convT2X.go
copy.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
crlf.go
ddd1.go test: match gccgo error messages 2012-09-28 08:30:30 -07:00
ddd2.go test: convert tests to run.go whenever possible. 2012-10-10 22:35:27 +02:00
ddd.go
decl.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
declbad.go test: correct type in declbad.go 2012-10-07 21:52:57 +02:00
defer.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
deferfin.go runtime: combine small NoScan allocations 2014-01-24 22:35:11 +04:00
deferprint.go
deferprint.out
divide.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
divmod.go all: fix a few spelling errors in source comments 2013-12-27 08:59:02 -08:00
empty.go
env.go
eof1.go
eof.go
errchk test/errchk: use "#!/usr/bin/env perl" shebang line 2013-05-23 04:41:22 +08:00
escape2.go test: add -update_errors flag to run script 2015-04-10 11:33:42 +00:00
escape2n.go test: add -update_errors flag to run script 2015-04-10 11:33:42 +00:00
escape3.go
escape4.go cmd/internal/gc: transitive inlining 2015-02-26 17:36:00 +00:00
escape5.go test: add tests for escape analysis of interface conversions 2015-03-28 16:15:27 +00:00
escape_closure.go test: add tests for escape analysis of interface conversions 2015-03-28 16:15:27 +00:00
escape_field.go test: add tests for escape analysis of interface conversions 2015-03-28 16:15:27 +00:00
escape_iface.go test: add tests for escape analysis of interface conversions 2015-03-28 16:15:27 +00:00
escape_indir.go test: add tests for escape analysis of interface conversions 2015-03-28 16:15:27 +00:00
escape_level.go test: add tests for escape analysis of interface conversions 2015-03-28 16:15:27 +00:00
escape_map.go test: add tests for escape analysis of interface conversions 2015-03-28 16:15:27 +00:00
escape_param.go test: add tests for escape analysis of function parameters 2015-03-30 10:12:05 +00:00
escape_slice.go test: add tests for escape analysis of slices 2015-03-28 13:18:42 +00:00
escape.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
fibo.go Fix whitespace (use blanks consistently). 2014-12-08 22:22:58 +00:00
float_lit2.go test: fix two typos in float_lit2.go 2014-05-21 17:19:12 -04:00
float_lit3.go test/float_lit2.go: rewrite to test values near boundaries 2014-05-21 17:12:06 -04:00
float_lit.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
floatcmp.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
for.go
func1.go cmd/gc: ensure unique parameter and result names in function types 2013-03-15 15:24:13 -04:00
func2.go
func3.go
func4.go
func5.go
func6.go
func7.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
func8.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
func.go
funcdup2.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
funcdup.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
gc1.go
gc2.go test: check for build constraints only upto the first blank line 2015-02-06 05:36:26 +00:00
gc.go
gcstring.go runtime: fix empty string handling in garbage collector 2014-03-11 23:58:39 -04:00
goprint.go test: make goprint.go wait longer for go its routine to execute 2013-04-12 16:04:19 -07:00
goprint.out
goto.go
helloworld.go
helloworld.out
if.go
import1.go test: match gccgo import error messages 2013-12-12 19:02:11 -08:00
import2.go test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
import4.go test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
import5.go
import.go
index0.go test: run index test by default 2012-11-07 12:33:54 -08:00
index1.go test: run index test by default 2012-11-07 12:33:54 -08:00
index2.go test: run index test by default 2012-11-07 12:33:54 -08:00
index.go test: recognize gccgo error message in index.go 2013-09-27 20:38:52 -07:00
indirect1.go
indirect.go
init1.go test: deflake init1.go test, tighten its bounds 2015-02-13 22:13:56 +00:00
init.go
initcomma.go
initialize.go
initializerr.go test: add "duplicate" struct map key test 2012-12-17 11:05:58 -05:00
inline.go cmd/internal/gc: transitive inlining 2015-02-26 17:36:00 +00:00
int_lit.go
intcvt.go
iota.go
label1.go
label.go
linkx_run.go cmd/go: put user ldflags at the end of the linker invocation 2015-01-02 18:36:44 +00:00
linkx.go test: move linkx and sinit to run.go 2014-11-06 15:14:08 -05:00
literal.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
live1.go cmd/gc: correct liveness for fat variables 2014-02-15 10:58:55 -05:00
live2.go cmd/gc: allocate non-escaping maps on stack 2015-02-12 09:53:52 +00:00
live.go test: add -update_errors flag to run script 2015-04-10 11:33:42 +00:00
mallocfin.go
map1.go
map.go test/mapnan.go: add regression test for non-empty interfaces. 2014-08-06 17:02:55 -04:00
maplinear.go test: make maplinear more robust 2014-10-27 18:59:02 -04:00
method1.go
method2.go cmd/gc: fix method values whose receiver is an unnamed interface. 2013-08-29 10:00:58 +02:00
method3.go
method4.go test: convert more tests to rundir/compiledir conventions 2012-10-07 23:22:01 +02:00
method5.go cmd/gc: implement method values 2013-03-20 17:11:09 -04:00
method.go test: a number of fixes. 2013-02-11 18:20:52 -05:00
named1.go cmd/gc: comma-ok assignments produce untyped bool as 2nd result 2014-08-11 16:11:55 -07:00
named.go
nil.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
nilcheck.go cmd/gc: optimize existence-only map lookups 2015-01-07 22:36:06 +00:00
nilptr2.go test: revert changes made for Go SSA interpreter test. 2013-10-08 14:36:20 -04:00
nilptr3.go cmd/7g: enable peephole optimizer 2015-04-08 08:16:54 +00:00
nilptr4.go cmd/gc: fix bad checknil with ints on 32 bit compilers 2014-02-26 12:25:13 -08:00
nilptr.go test/nilptr: add more tests 2013-09-05 23:06:34 -04:00
nosplit.go test: fix nosplit test, and disable nilptr3 test on arm64 2015-03-16 18:46:35 +00:00
nul1.go test: run some more tests by default 2012-11-08 09:04:27 -08:00
parentype.go
peano.go
print.go runtime: move built-in print routines to go. 2014-07-31 13:48:48 -07:00
print.out runtime: move built-in print routines to go. 2014-07-31 13:48:48 -07:00
printbig.go
printbig.out
range.go cmd/gc: implement 'for range x {' 2014-07-16 19:27:10 -04:00
recover1.go
recover2.go
recover3.go tests: remove two misuses of nil pointers 2013-08-15 11:51:04 -04:00
recover4.go test: fix recover4 test on 64kb systems 2015-03-17 05:25:01 +00:00
recover.go test: add more cases to recover.go 2014-10-22 08:06:15 -07:00
rename1.go
rename.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00
reorder2.go cmd/gc: shorten temporary lifetimes when possible 2014-04-01 13:31:38 -04:00
reorder.go test: a number of fixes. 2013-02-11 18:20:52 -05:00
return.go test: add cases to return.go that gccgo got wrong 2013-08-07 11:31:01 -07:00
rotate0.go [dev.cc] test: disable rotate tests 2015-02-19 20:14:21 +00:00
rotate1.go [dev.cc] test: disable rotate tests 2015-02-19 20:14:21 +00:00
rotate2.go [dev.cc] test: disable rotate tests 2015-02-19 20:14:21 +00:00
rotate3.go [dev.cc] test: disable rotate tests 2015-02-19 20:14:21 +00:00
rotate.go test: add rotate.go and fixedbugs/bug313 2013-01-11 22:42:55 +01:00
run.go test: add -update_errors flag to run script 2015-04-10 11:33:42 +00:00
rune.go
runtime.go
shift1.go test: avoid "declared but not used" errors in shift1.go 2014-07-20 12:25:24 -07:00
shift2.go test: add shift expression incorrectly rejected by gccgo. 2013-06-25 08:06:34 +02:00
sieve.go
sigchld.go test: skip SIGCHLD test on Plan 9 2014-01-29 09:28:23 +01:00
sigchld.out
simassign.go
sinit_run.go test: fix nacl build 2014-11-09 21:10:49 -05:00
sinit.go test: move linkx and sinit to run.go 2014-11-06 15:14:08 -05:00
sizeof.go test: correct sizeof.go. 2013-06-02 19:10:11 +02:00
slice3.go cmd/gc, runtime: treat slices and strings like pointers in garbage collection 2014-08-25 14:38:19 -04:00
slice3err.go test: match gccgo error messages 2013-12-12 17:18:12 -08:00
slicecap.go cmd/gc, runtime: treat slices and strings like pointers in garbage collection 2014-08-25 14:38:19 -04:00
solitaire.go
stack.go
string_lit.go test: add []rune case to string_lit.go 2013-12-12 17:17:02 -08:00
stringrange.go all: make Unicode surrogate halves illegal as UTF-8 2012-08-08 14:01:23 -07:00
struct0.go
switch3.go cmd/gc: accept switches on comparable arrays. 2012-08-03 21:47:26 +02:00
switch4.go cmd/gc: disallow fallthrough in final case of switch 2013-03-15 00:35:09 -04:00
switch.go cmd/gc: disallow fallthrough in final case of switch 2013-03-15 00:35:09 -04:00
tinyfin.go runtime: combine small NoScan allocations 2014-01-24 22:35:11 +04:00
torture.go cmd/8g: don't allocate a register early for cap(CHAN). 2014-07-01 09:20:51 +02:00
turing.go
typecheck.go cmd/gc: silence assignment errors to undefined symbols 2014-01-03 21:03:20 +01:00
typeswitch1.go
typeswitch2.go
typeswitch3.go test: match gccgo error messages 2012-09-28 08:30:30 -07:00
typeswitch.go
undef.go
utf.go
varerr.go
varinit.go
zerodivide.go test: ensure all failing tests exit nonzero. 2013-02-12 13:17:49 -05:00