• Austin Clements's avatar
    Implement labels, goto, labeled break, and labeled continue. · 36ca5fde
    Austin Clements authored
    Return checking is now done as a general flow check at the end
    of function compilation, since break and goto complicated the
    way I was doing return checking before.  Goto-over-declaration
    checking is also done as a final flow check.
    
    Temporary variables used for effect extraction are now
    actually temporary.  Otherwise "op=", "++", and "--" appear as
    declarations that cannot be jumped over.
    
    R=rsc
    APPROVED=rsc
    DELTA=421  (344 added, 38 deleted, 39 changed)
    OCL=32527
    CL=32535
    36ca5fde
decls.go 4.56 KB