- Was losing typedObject destType when processing instance
if(list.first)
{
struct Expression * e = list.first;
+struct Type * destType = exp->destType;
-FreeType(exp->destType);
*exp = *e;
__ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(&list, e);
((e ? __extension__ ({
__ecereClass_Expression->Destructor ? __ecereClass_Expression->Destructor((void *)__ecerePtrToDelete) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(__ecerePtrToDelete);
}) : 0), e = 0);
+if(!exp->destType)
+exp->destType = destType;
+else
+FreeType(destType);
exp->expType = expType;
exp->prev = prev;
exp->next = next;
if(list.first)
{
Expression e = list.first;
- FreeType(exp.destType);
+ Type destType = exp.destType;
*exp = *e;
list.Remove(e);
delete e;
+
+ // Fixes PrintLn(Degrees { 1 })
+ if(!exp.destType)
+ exp.destType = destType;
+ else
+ FreeType(destType);
exp.expType = expType;
exp.prev = prev;
exp.next = next;