walk_expression(expr->conditional.false_expression, callback, env);
return;
- case EXPR_BUILTIN_PREFETCH:
- walk_expression(expr->builtin_prefetch.adr, callback, env);
- walk_expression(expr->builtin_prefetch.rw, callback, env);
- walk_expression(expr->builtin_prefetch.locality, callback, env);
+ case EXPR_BUILTIN_PREFETCH: {
+ builtin_prefetch_expression_t const *const pf = &expr->builtin_prefetch;
+ walk_expression(pf->adr, callback, env);
+ if (pf->rw != NULL) {
+ walk_expression(pf->rw, callback, env);
+ if (pf->locality != NULL)
+ walk_expression(pf->locality, callback, env);
+ }
return;
+ }
case EXPR_BUILTIN_CONSTANT_P:
walk_expression(expr->builtin_constant.value, callback, env);
walk_statements(stmt->ms_try.final_statement, callback, env);
return;
- case STATEMENT_LOCAL_LABEL:
case STATEMENT_INVALID:
case STATEMENT_EMPTY:
case STATEMENT_CONTINUE: