gcc/libgo/misc/cgo
Ian Lance Taylor 52eb4ab409 compiler: error on func declaration/definition
Long long long ago Go permitted writing
        func F()
    in one file and writing
        func F() {}
    in another file.  This was removed from the language, and that is now
    considered to be a multiple definition error.  Gccgo never caught up
    to that, and it has been permitting this invalid code for some time.
    
    Stop permitting it, so that we give correct errors.  Since we've
    supported it for a long time, the compiler uses it in a couple of
    cases: it predeclares the hash/equal methods if it decides to create
    them while compiling another function, and it predeclares main.main as
    a mechanism for getting the right warning if a program uses the wrong
    signature for main.  For simplicity, keep those existing uses.
    
    This required a few minor changes in libgo which were relying,
    unnecessarily, on the current behavior.
    
    Reviewed-on: https://go-review.googlesource.com/93083

From-SVN: r257600
2018-02-12 19:29:52 +00:00
..
errors libgo: update to Go1.10rc2 2018-02-08 15:30:22 +00:00
fortran libgo: update to go1.9 2017-09-14 17:11:35 +00:00
gmp
life libgo: update to Go1.10beta1 2018-01-09 01:23:08 +00:00
nocgo
stdio libgo: update to Go1.10beta1 2018-01-09 01:23:08 +00:00
test compiler: error on func declaration/definition 2018-02-12 19:29:52 +00:00
testasan
testcarchive libgo: update to Go1.10rc1 2018-01-27 23:44:29 +00:00
testcshared libgo: update to Go1.10rc1 2018-01-27 23:44:29 +00:00
testgodefs
testplugin libgo: update to Go1.10beta1 2018-01-09 01:23:08 +00:00
testsanitizers libgo: update to Go1.10beta2 release 2018-01-17 14:20:29 +00:00
testshared libgo: update to Go1.10rc1 2018-01-27 23:44:29 +00:00
testsigfwd
testso
testsovar
testtls