- track depth so we know whether to consider higher-level elsifs - error on unmatched endif/elsif/else