fix valdef codegen