• Alan Donovan's avatar
    exp/ssa: a number of bug fixes. · 1c5e0796
    Alan Donovan authored
    ssadump:
    - permit naming a package (not just *.go files) on command line.
    - set BuildSerially flag when setting Log* flags
      (Q. should instead the logging functions take a lock?)
    
    Builder:
    - fixed bug when calling variadic function with zero '...'-params.
      Added regression test.
    
    interp:
    - more external functions:
       the 'error' interface
       bytes.{Equal,IndexByte}
       reflect.(Value).{Bool,NumOut,Out}
       syscall.{Close,Fstat,Read,Open,Stat,Lstat,Fstat,
         Getdents,ParseDirents,Getwd}
    - permit comparisons between *Function and *closure.
    
    With this CL, ssadump can now interpret ssadump itself (!),
    loading, parsing, typing, SSA-building, and running
    println("Hello, World!").  While a fmt-based equivalent still
    lacks some external routines, e.g. math/big, I think there are
    diminishing returns in expanding the interpreter (and
    debugging it is starting to feel like "Inception").
    
    I'm pretty confident this package is now good enough for wider use.
    
    R=gri
    CC=golang-dev
    https://golang.org/cl/7392053
    1c5e0796
reflect.go 11.7 KB