mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-02-21 19:21:47 +00:00
Work around some clang parsing issues
clang has no problem with labels crossing declarations, but it can't cope with a declaration (or end of block) just after a label.
This commit is contained in:
parent
5b3cd93fa3
commit
2f9df0f05b
3 changed files with 7 additions and 1 deletions
|
@ -1797,6 +1797,7 @@ op_call:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
exit_program:
|
exit_program:
|
||||||
|
(void)0;//FIXME for clang
|
||||||
}
|
}
|
||||||
|
|
||||||
#define MM(type) (*((pr_##type##_t *) (mm)))
|
#define MM(type) (*((pr_##type##_t *) (mm)))
|
||||||
|
@ -1816,6 +1817,7 @@ pr_address_mode (progs_t *pr, const dstatement_t *st, int mm_ind)
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
// entity.field (equivalent to OP_LOAD_t_v6p)
|
// entity.field (equivalent to OP_LOAD_t_v6p)
|
||||||
|
(void)0;//FIXME for clang
|
||||||
pr_ptr_t edict_area = pr->pr_edict_area - pr->pr_globals;
|
pr_ptr_t edict_area = pr->pr_edict_area - pr->pr_globals;
|
||||||
mm_offs = edict_area + OPA(entity) + OPB(field);
|
mm_offs = edict_area + OPA(entity) + OPB(field);
|
||||||
break;
|
break;
|
||||||
|
@ -1853,6 +1855,7 @@ pr_call_mode (progs_t *pr, const dstatement_t *st, int mm_ind)
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
// entity.field (equivalent to OP_LOAD_t_v6p)
|
// entity.field (equivalent to OP_LOAD_t_v6p)
|
||||||
|
(void)0;//FIXME for clang
|
||||||
pr_ptr_t edict_area = pr->pr_edict_area - pr->pr_globals;
|
pr_ptr_t edict_area = pr->pr_edict_area - pr->pr_globals;
|
||||||
mm_offs = edict_area + OPA(entity) + OPB(field);
|
mm_offs = edict_area + OPA(entity) + OPB(field);
|
||||||
break;
|
break;
|
||||||
|
@ -2547,6 +2550,7 @@ pr_exec_ruamoko (progs_t *pr, int exitdepth)
|
||||||
break;
|
break;
|
||||||
OP_cmp_T (LT, U, long, lvec2, lvec4, <, ulong, ulvec2, ulvec4);
|
OP_cmp_T (LT, U, long, lvec2, lvec4, <, ulong, ulvec2, ulvec4);
|
||||||
case OP_RETURN:
|
case OP_RETURN:
|
||||||
|
(void)0;//FIXME for clang
|
||||||
int ret_size = (st->c & 0x1f) + 1; // up to 32 words
|
int ret_size = (st->c & 0x1f) + 1; // up to 32 words
|
||||||
if (st->c != 0xffff) {
|
if (st->c != 0xffff) {
|
||||||
mm = pr_address_mode (pr, st, st->c >> 5);
|
mm = pr_address_mode (pr, st, st->c >> 5);
|
||||||
|
@ -2872,6 +2876,7 @@ pr_exec_ruamoko (progs_t *pr, int exitdepth)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
exit_program:
|
exit_program:
|
||||||
|
(void)0;//FIXME for clang
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
PR_ExecuteProgram
|
PR_ExecuteProgram
|
||||||
|
|
|
@ -42,6 +42,7 @@ test_debug_handler (prdebug_t event, void *param, void *data)
|
||||||
case prd_subexit:
|
case prd_subexit:
|
||||||
break;
|
break;
|
||||||
case prd_trace:
|
case prd_trace:
|
||||||
|
(void)0;//FIXME for clang
|
||||||
dstatement_t *st = test_pr.pr_statements + test_pr.pr_xstatement;
|
dstatement_t *st = test_pr.pr_statements + test_pr.pr_xstatement;
|
||||||
if (verbose > 1) {
|
if (verbose > 1) {
|
||||||
printf ("---\n");
|
printf ("---\n");
|
||||||
|
|
|
@ -237,8 +237,8 @@ R_StoreEfrags (const efrag_t *efrag)
|
||||||
case mod_iqm:
|
case mod_iqm:
|
||||||
EntQueue_AddEntity (r_ent_queue, ent, model->type);
|
EntQueue_AddEntity (r_ent_queue, ent, model->type);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
(void)0;//FIXME for clang
|
||||||
}
|
}
|
||||||
efrag = efrag->leafnext;
|
efrag = efrag->leafnext;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue