r229907 - in /trunk: gcc/go/gofrontend/MERGE li...

ian@gcc.gnu.org ian@gcc.gnu.org
Sat Nov 7 01:24:00 GMT 2015


Author: ian
Date: Sat Nov  7 01:24:57 2015
New Revision: 229907

URL: https://gcc.gnu.org/viewcvs?rev=229907&root=gcc&view=rev
Log:
	PR go/66138
    reflect, encoding/json, encoding/xml: fix unexported embedded structs
    
    Bring in three changes from the master Go repository.  These changes
    will be in Go 1.6, but they are appropriate for gccgo now because they
    resolve a long-standing discrepancy between how gc and gccgo handle the
    PkgPath field for embedded unexported struct fields.  The core issue is
    described at https://golang.org/cl/7247.  This has been reported against
    gccgo as https://gcc.gnu.org/PR66138.
    
    The three changes being brought over are:
    
    https://golang.org/cl/14010
    
    reflect: adjust access to unexported embedded structs
    
    This CL changes reflect to allow access to exported fields and
    methods in unexported embedded structs for gccgo and after gc
    has been adjusted to disallow access to embedded unexported structs.
    
    Adresses #12367, #7363, #11007, and #7247.
    
    https://golang.org/cl/14011
    
    encoding/json: check for exported fields in embedded structs
    
    Addresses issue #12367.
    
    https://golang.org/cl/14012
    
    encoding/xml: check for exported fields in embedded structs
    
    Addresses issue #12367.
    
    Reviewed-on: https://go-review.googlesource.com/16723

Modified:
    trunk/gcc/go/gofrontend/MERGE
    trunk/libgo/go/encoding/json/decode_test.go
    trunk/libgo/go/encoding/json/encode.go
    trunk/libgo/go/encoding/xml/marshal_test.go
    trunk/libgo/go/encoding/xml/typeinfo.go
    trunk/libgo/go/reflect/export_test.go
    trunk/libgo/go/reflect/type.go
    trunk/libgo/go/reflect/value.go



More information about the Gcc-cvs mailing list