summaryrefslogtreecommitdiff
path: root/src/lj_crecord.c
diff options
context:
space:
mode:
authorMike Pall <mike>2012-10-08 17:14:18 +0200
committerMike Pall <mike>2012-10-08 17:15:28 +0200
commitda682b0e9184d4db7e8e477c682947d106790240 (patch)
treeea38a32325107a9cb8047880712d13e6dd12fa5d /src/lj_crecord.c
parentc681e009c0c5cba5622b863b914c19cfbf6cc147 (diff)
downloadluajit-da682b0e9184d4db7e8e477c682947d106790240.tar.gz
luajit-da682b0e9184d4db7e8e477c682947d106790240.tar.bz2
luajit-da682b0e9184d4db7e8e477c682947d106790240.zip
FFI: Add support for copy constructors.
Diffstat (limited to 'src/lj_crecord.c')
-rw-r--r--src/lj_crecord.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lj_crecord.c b/src/lj_crecord.c
index 99303310..fbb5d79a 100644
--- a/src/lj_crecord.c
+++ b/src/lj_crecord.c
@@ -654,7 +654,8 @@ static void crec_alloc(jit_State *J, RecordFFData *rd, CTypeID id)
654 TRef trcd = emitir(IRTG(IR_CNEW, IRT_CDATA), trid, TREF_NIL); 654 TRef trcd = emitir(IRTG(IR_CNEW, IRT_CDATA), trid, TREF_NIL);
655 cTValue *fin; 655 cTValue *fin;
656 J->base[0] = trcd; 656 J->base[0] = trcd;
657 if (J->base[1] && !J->base[2] && !lj_cconv_multi_init(d, &rd->argv[1])) { 657 if (J->base[1] && !J->base[2] &&
658 !lj_cconv_multi_init(cts, d, &rd->argv[1])) {
658 goto single_init; 659 goto single_init;
659 } else if (ctype_isarray(d->info)) { 660 } else if (ctype_isarray(d->info)) {
660 CType *dc = ctype_rawchild(cts, d); /* Array element type. */ 661 CType *dc = ctype_rawchild(cts, d); /* Array element type. */