<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi Ruslan,<div><br></div><div>I'm trying reproduce the V4RB Table_Create (class way) example with V4CC, but no luck :-(</div><div><br></div><div>First problem, if I override the init of VTable like this:</div><div><br></div><div><div>@implementation tblPerson</div><div><br></div><div>-(id)init</div><div>{</div><div><span class="Apple-tab-span" style="white-space: pre; ">        </span>self = [super initWithName:@"Person"];</div><br></div><div>I get caught in an infinite recursive loop:</div><div><br></div><div><div>#0<span class="Apple-tab-span" style="white-space:pre">        </span>0x0009fbda in -[VTable initWithName:]</div><div>#1<span class="Apple-tab-span" style="white-space:pre">        </span>0x000041f5 in -[tblPerson init] at tblPerson.m:16</div><div>#2<span class="Apple-tab-span" style="white-space:pre">        </span>0x0009fbec in -[VTable initWithName:]</div><div>#3<span class="Apple-tab-span" style="white-space:pre">        </span>0x000041f5 in -[tblPerson init] at tblPerson.m:16</div><br></div><div>It seems that [super initWithName:] calls [self init] but should call [super init]...</div><div><br></div><div>Ok, I try to workaround this and use non standard initializer name:</div><div> <div><br></div> <div>@implementation tblPerson</div> <div><br></div> <div>-(id)initTable</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre">        </span>self = [super initWithName:@"Person"];</div> <div><span class="Apple-tab-span" style="white-space:pre">        </span></div> <div><span class="Apple-tab-span" style="white-space:pre">        </span>if (self) {</div> <div><span class="Apple-tab-span" style="white-space:pre">        </span>mfFirstName = [[VString alloc] initWithName:@"fldFirstName" length:40 flags:0 method:nil];</div> <div><span class="Apple-tab-span" style="white-space:pre">        </span>mfLastName = [[VVarChar alloc] initWithName:@"fldLastName" length:2000 flags:0 method:nil];</div> <div><span class="Apple-tab-span" style="white-space:pre">        </span>mfBornDate =[[VDate alloc] initWithName:@"fldBornDate" flags:0 method:nil];</div> <div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre">        </span></div> <div><span class="Apple-tab-span" style="white-space:pre">        </span>return self;</div> <div>}</div> <div><br></div> <div>@end</div> <br></div><div>this seems to work, but when I try to access the Table properties I find myself in a dead end:</div><div><br></div><div><div><div>#0<span class="Apple-tab-span" style="white-space:pre">        </span>??</div><div>#1<span class="Apple-tab-span" style="white-space:pre">        </span>0x0009d964 in -[VTable name]</div><div>#2<span class="Apple-tab-span" style="white-space:pre">        </span>0x00004380 in -[tblPerson initWithName:] at tblPerson.m:28</div><div>#3<span class="Apple-tab-span" style="white-space:pre">        </span>0x00004201 in -[tblPerson initTable] at tblPerson.m:16</div><div>#4<span class="Apple-tab-span" style="white-space:pre">        </span>0x0000415e in -[DbContacts init] at DbContacts.m:18</div><div><br></div><div>The line executed in the [VTable name] call is here in red:</div><div><br></div><div>0x0009d913 <+0005> call 0x9d918 <-[VTable name]+10></div> <div>0x0009d918 <+0010> pop %ebx</div> <div>0x0009d919 <+0011> sub $0x20,%esp</div> <div>0x0009d91c <+0014> mov 0x8(%ebp),%esi</div> <div>0x0009d91f <+0017> movl $0x0,0x4(%esp)</div> <div>0x0009d927 <+0025> lea 0xff22(%ebx),%eax</div> <div>0x0009d92d <+0031> mov %eax,(%esp)</div> <div>0x0009d930 <+0034> call 0x95ffa <_ZN3fbl9log_startEPKci></div> <div>0x0009d935 <+0039> lea 0xb644(%ebx),%eax</div> <div>0x0009d93b <+0045> mov %eax,0x4(%esp)</div> <div>0x0009d93f <+0049> lea 0xdfb4(%ebx),%eax</div> <div>0x0009d945 <+0055> mov %esi,0x8(%esp)</div> <div>0x0009d949 <+0059> mov %eax,(%esp)</div> <div>0x0009d94c <+0062> call 0x95c08 <_ZN3fbl9log_paramEPKcS1_PKv></div> <div>0x0009d951 <+0067> mov 0x4(%esi),%eax</div> <div>0x0009d954 <+0070> xor %esi,%esi</div> <div>0x0009d956 <+0072> mov (%eax),%edx</div> <div>0x0009d958 <+0074> test %edx,%edx</div> <div>0x0009d95a <+0076> je 0x9d986 <-[VTable name]+120></div> <div>0x0009d95c <+0078> mov (%edx),%eax</div> <div>0x0009d95e <+0080> mov %edx,(%esp)</div> <div>0x0009d961 <+0083> call *0x18(%eax)</div> <div><font class="Apple-style-span" color="#FE0000">0x0009d964 <+0086> mov %eax,(%esp)</font></div> <div>0x0009d967 <+0089> call 0xcd338 <dyld_stub__ZNK3fbl6String5c_strEv></div> <div>0x0009d96c <+0094> movl $0xffffffff,0x8(%esp)</div> <br></div><div>after that only dark...</div></div><br><br><div><div><div><div>Cool Runnings,</div><div>Erne.</div></div></div> </div><br></body></html>