aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lj_cparse.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lj_cparse.c b/src/lj_cparse.c
index 1ec32307..f212bd36 100644
--- a/src/lj_cparse.c
+++ b/src/lj_cparse.c
@@ -784,6 +784,10 @@ static void cp_push_type(CPDecl *decl, CTypeID id)
784 cp_push(decl, info & ~CTMASK_CID, size); /* Copy type. */ 784 cp_push(decl, info & ~CTMASK_CID, size); /* Copy type. */
785 break; 785 break;
786 case CT_ARRAY: 786 case CT_ARRAY:
787 if ((ct->info & (CTF_VECTOR|CTF_COMPLEX))) {
788 info |= (decl->attr & CTF_QUAL);
789 decl->attr &= ~CTF_QUAL;
790 }
787 cp_push_type(decl, ctype_cid(info)); /* Unroll. */ 791 cp_push_type(decl, ctype_cid(info)); /* Unroll. */
788 cp_push(decl, info & ~CTMASK_CID, size); /* Copy type. */ 792 cp_push(decl, info & ~CTMASK_CID, size); /* Copy type. */
789 decl->stack[decl->pos].sib = 1; /* Mark as already checked and sized. */ 793 decl->stack[decl->pos].sib = 1; /* Mark as already checked and sized. */