diff --git a/src/main/org/codehaus/groovy/classgen/Verifier.java b/src/main/org/codehaus/groovy/classgen/Verifier.java
index 4336ef1..718e226 100644
--- a/src/main/org/codehaus/groovy/classgen/Verifier.java
+++ b/src/main/org/codehaus/groovy/classgen/Verifier.java
@@ -24,6 +24,7 @@ import org.codehaus.groovy.ast.stmt.*;
 import org.codehaus.groovy.classgen.asm.BytecodeHelper;
 import org.codehaus.groovy.classgen.asm.MopWriter;
 import org.codehaus.groovy.classgen.asm.OptimizingStatementWriter.ClassNodeSkip;
+import org.codehaus.groovy.control.CompilerConfiguration;
 import org.codehaus.groovy.runtime.MetaClassHelper;
 import org.codehaus.groovy.syntax.RuntimeParserException;
 import org.codehaus.groovy.syntax.Token;
@@ -427,25 +428,24 @@ public class Verifier implements GroovyClassVisitor, Opcodes {
 
     protected void addTimeStamp(ClassNode node) {
         if (node.getDeclaredField(Verifier.__TIMESTAMP) == null) { // in case if verifier visited the call already
+            long time = 0;
+            CompilerConfiguration config = node.getCompileUnit().getConfig();
+            if (!config.getCreateZeroTimestamp()) time = System.currentTimeMillis();
             FieldNode timeTagField = new FieldNode(
                     Verifier.__TIMESTAMP,
                     ACC_PUBLIC | ACC_STATIC | ACC_SYNTHETIC,
                     ClassHelper.long_TYPE,
-                    //"",
                     node,
-                    new ConstantExpression(System.currentTimeMillis()));
-            // alternatively, FieldNode timeTagField = SourceUnit.createFieldNode("public static final long __timeStamp = " + System.currentTimeMillis() + "L");
+                    new ConstantExpression(time));
             timeTagField.setSynthetic(true);
             node.addField(timeTagField);
 
             timeTagField = new FieldNode(
-                    Verifier.__TIMESTAMP__ + String.valueOf(System.currentTimeMillis()),
+                    Verifier.__TIMESTAMP__ + String.valueOf(time),
                     ACC_PUBLIC | ACC_STATIC | ACC_SYNTHETIC,
                     ClassHelper.long_TYPE,
-                    //"",
                     node,
                     new ConstantExpression((long) 0));
-            // alternatively, FieldNode timeTagField = SourceUnit.createFieldNode("public static final long __timeStamp = " + System.currentTimeMillis() + "L");
             timeTagField.setSynthetic(true);
             node.addField(timeTagField);
         }
diff --git a/src/main/org/codehaus/groovy/control/CompilerConfiguration.java b/src/main/org/codehaus/groovy/control/CompilerConfiguration.java
index 9398f35..0eff272 100644
--- a/src/main/org/codehaus/groovy/control/CompilerConfiguration.java
+++ b/src/main/org/codehaus/groovy/control/CompilerConfiguration.java
@@ -147,6 +147,11 @@ public class CompilerConfiguration {
      */
     private Map<String, Boolean> optimizationOptions;
 
+    /**
+     * if set to true timestamp fields will be always there
+     */
+    private boolean createZeroTimestamp;
+    
     private List<CompilationCustomizer> compilationCustomizers = new LinkedList<CompilationCustomizer>();
 
     /**
@@ -221,6 +226,7 @@ public class CompilerConfiguration {
         }
         
         setOptimizationOptions(new HashMap<String,Boolean>(2));
+        setCreateZeroTimestamp(false);
     }
 
     /**
@@ -261,6 +267,7 @@ public class CompilerConfiguration {
         setPluginFactory(configuration.getPluginFactory());
         setScriptExtensions(configuration.getScriptExtensions());
         setOptimizationOptions(new HashMap<String, Boolean>(configuration.getOptimizationOptions()));
+        setCreateZeroTimestamp(configuration.getCreateZeroTimestamp());
     }
 
     /**
@@ -743,4 +750,21 @@ public class CompilerConfiguration {
         return compilationCustomizers;
     }
 
+    /**
+     * Returns true if the classes created by this compiler should always have time
+     * stamp fields. 
+     * @return timestamp creation flag
+     */
+    public boolean getCreateZeroTimestamp() {
+        return createZeroTimestamp;
+    }
+    
+    /**
+     * Sets if the classes created by this compiler should always have
+     * timestamp fields.
+     */
+    public void setCreateZeroTimestamp(boolean b) {
+        createZeroTimestamp = b;
+    }
+
 }
diff --git a/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java b/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java
index aadfc95..8bcaed8 100644
--- a/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java
+++ b/src/main/org/codehaus/groovy/tools/FileSystemCompiler.java
@@ -219,7 +219,8 @@ public class FileSystemCompiler {
         // Setup the configuration data
 
         CompilerConfiguration configuration = new CompilerConfiguration();
-
+        configuration.setCreateZeroTimestamp(true);
+        
         if (cli.hasOption("classpath")) {
             configuration.setClasspath(cli.getOptionValue("classpath"));
         }
