changeset 1620:0333945a915e

Merge DMD r310: bugzilla 3645 manifest constant (enum) crashes dmd --- dmd/interpret.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
author Leandro Lucarella <llucax@gmail.com>
date Wed, 06 Jan 2010 15:18:22 -0300
parents c61782a76dff
children fb2e6707ad17
files dmd/interpret.c
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/dmd/interpret.c	Wed Jan 06 15:18:22 2010 -0300
+++ b/dmd/interpret.c	Wed Jan 06 15:18:22 2010 -0300
@@ -228,7 +228,8 @@
 	}
     }
     // Don't restore the value of 'this' upon function return
-    if (needThis() && thisarg->op==TOKvar) {
+    if (needThis() && thisarg->op == TOKvar && istate)
+    {
 	VarDeclaration *thisvar = ((VarExp *)(thisarg))->var->isVarDeclaration();
     	for (size_t i = 0; i < istate->vars.dim; i++)
 	{   VarDeclaration *v = (VarDeclaration *)istate->vars.data[i];