diff --git a/lib/modules/Calendar.pmod/Timezone.pmod b/lib/modules/Calendar.pmod/Timezone.pmod
index cc60cdcac164d65a0c789ef6f2a662026bfd74f6..a7c11de6b59031d47df88cbf7528fa57926b1b33 100644
--- a/lib/modules/Calendar.pmod/Timezone.pmod
+++ b/lib/modules/Calendar.pmod/Timezone.pmod
@@ -1186,6 +1186,7 @@ class Runtime_timezone_compiler
        float t1=time(t);
 #endif
 
+       rules = ({});
        foreach(lines, string line) add(line);
 
        string c=dump();
@@ -1206,7 +1207,7 @@ class Runtime_timezone_compiler
        {
 	 int i=0; 
 	 foreach (c/"\n",string line) write("%2d: %s\n",++i,line);
-	 error(err);
+	 throw(err);
        }
        object zo=p();
        if (zo->thezone) zo=zo->thezone;