]> Cypherpunks repositories - gostls13.git/commit
Implement multi-valued functions, multi-valued return, and
authorAustin Clements <aclements@csail.mit.edu>
Tue, 28 Jul 2009 00:32:35 +0000 (17:32 -0700)
committerAustin Clements <aclements@csail.mit.edu>
Tue, 28 Jul 2009 00:32:35 +0000 (17:32 -0700)
commit75760a4b5d340be2bcd78e03380b4c62f689a85b
treedb50a9cbb6d538f2949388fbec09b77ba5fb0e3f
parenteece85c9a72aa48d5522c07630abb07d2a0f0f16
Implement multi-valued functions, multi-valued return, and
unpacking for assignments, call arguments, and returns.  This
change revamps the whole assignment compilation system to be
multi-valued, using the new MultiType type and multiV value.
Function calls, returns, and assignments now share a lot of
code and produce very consistent error messages.

R=rsc
APPROVED=rsc
DELTA=510  (335 added, 74 deleted, 101 changed)
OCL=32248
CL=32258
usr/austin/eval/compiler.go
usr/austin/eval/expr.go
usr/austin/eval/stmt.go
usr/austin/eval/type.go
usr/austin/eval/value.go