check that function return types match
check for unreachable code (after return, break, continue)
check for unused arguments