• Josh Bleecher Snyder's avatar
    cmd/compile: add Type.Elem · 8640b51d
    Josh Bleecher Snyder authored
    This removes almost all direct access to
    Type’s heavily overloaded Type field.
    
    Mostly generated by eg, manually checked.
    
    Significant manual changes:
    
    * reflect.go's typPkg used Type indiscriminately.
      Use it only for specific etypes.
    * gen.go's visitComponents contained a usage of Type
      with structs. Using Type for structs no longer
      occurs, and the Fatal contained therein has not triggered,
      so it has been axed.
    * Scary code in cgen.go's cgen_slice is now explicitly scary.
    
    Passes toolstash -cmp.
    
    Change-Id: I2dbfb3c959da7ae239f964d83898c204affcabc6
    Reviewed-on: https://go-review.googlesource.com/21331Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
    Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
    Reviewed-by: 's avatarMatthew Dempsky <mdempsky@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    8640b51d
reflect.go 40.3 KB