TODO: fix argument passing via-stack