Actually - I tracked it down - a rogue memoryBlock datatype in a structure. Deleted it and it went away.
You may be wondering why on earth a memoryblock was appearing in a RB struct ( since it aint allowed ) . Its because I am writing an app which converts C++ headers ( including struct, typedef and union info ) into REALbasic projects. It was replacing pointers with memoryblocks. This works for RB methods but obviously not structs. I've already posted a feedback request on the RB site to ask for some new Integer datatype names that can indicate where integer Int32 etc values are actually pointers. For example since structs were designed partly to help RB inferface with external C++ libraries, And since C++ structs containing pointers ( and pointers to pointers etc etc ) are often used for C++ callbacks, it would make sense to be able to at least indicate such use. I realise one could merely rename the pointer elements in such a way that its clear an integer is acting as a pointer, but in my situation I'm trying to keep the names exactly equivalent to the C++ API where possible so cant use that approach. On 16/5/06 17:10, "Jonathan Johnson" <[EMAIL PROTECTED]> wrote: > > On May 16, 2006, at 11:06 AM, Dan Stenning wrote: > >> When building an app I got this : >> >> Runtime Error 4: Failed Assertion CGPPC.cpp 2051: >> Failure condition: not line.opA- >mtype.RefCounted() >> >> Any ideas? > > This would happen from a structure StringValue() method, where the > target endianness is not the endian specified (ie, requiring a swap). > The failure is that one type inside of the structure is a reference > counted type, not a type that belongs in a structure. This can > include classes or interfaces. > > Perhaps the compiler isn't catching one of the invalid types? > > HTH, > Jon > _______________________________________________ Unsubscribe or switch delivery mode: <http://www.realsoftware.com/support/listmanager/> Search the archives of this list here: <http://support.realsoftware.com/listarchives/lists.html>
