# HG changeset patch # User Tomas Lindquist Olsen # Date 1242068065 -7200 # Node ID 712662f45ee4e5b1200b6094a405a2f7401058ad # Parent 3297edb697eb8d348a71c7bc8c3cf3977f9ec905 Added error instead of assertion failure when trying to get !TypeInfo for a forward declared struct. diff -r 3297edb697eb -r 712662f45ee4 gen/typinf.cpp --- a/gen/typinf.cpp Mon May 11 15:48:33 2009 +0200 +++ b/gen/typinf.cpp Mon May 11 20:54:25 2009 +0200 @@ -652,6 +652,14 @@ assert(tinfo->ty == Tstruct); TypeStruct *tc = (TypeStruct *)tinfo; StructDeclaration *sd = tc->sym; + + // can't emit typeinfo for forward declarations + if (sd->sizeok != 1) + { + sd->error("cannot emit TypeInfo for forward declaration"); + fatal(); + } + sd->codegen(Type::sir); ClassDeclaration* base = Type::typeinfostruct;