SE-0366: Move Function + "Use After Move" Diagnostic

If this feature is to be an advance feature I think having a contextual short keyword should not be a goal. what if instead of a keyword we had a block?

I haven’t seen it discussed in this thread but I thought that having a block where the semantics change from implicit copy to always move would be nice

movedefault {

var a = b // b moved to a

var c = b // // b moved to c

// after this block variables are dropped unless they were passed to other functions. 
}