diff --git a/org.eclipse.photran.core/model/org/eclipse/photran/internal/core/f95modelparser/FortranProcessor.java b/org.eclipse.photran.core/model/org/eclipse/photran/internal/core/f95modelparser/FortranProcessor.java
index 6c2adc7..d1a9c95 100644
--- a/org.eclipse.photran.core/model/org/eclipse/photran/internal/core/f95modelparser/FortranProcessor.java
+++ b/org.eclipse.photran.core/model/org/eclipse/photran/internal/core/f95modelparser/FortranProcessor.java
@@ -48,11 +48,11 @@
     public Map parseForModel(InputStream inputStream, String filename, Boolean isFixedForm, TranslationUnit tu) throws Exception
     {
         boolean isFixedFormB = isFixedForm == null ? hasFixedFormFileExtension(filename) : isFixedForm.booleanValue();
-        long startTime = System.currentTimeMillis();
+        //long startTime = System.currentTimeMillis();
         Parser parser = new Parser();
         Map/*<FortranElement, FortranElementInfo>*/ newElements = (Map)parse(inputStream, filename, isFixedFormB, parser, BuildModelParserAction.getInstance());
-        long endTime = System.currentTimeMillis();
-        System.out.println("Parse time for " + filename + ": " + (endTime - startTime) + " ms");
+        //long endTime = System.currentTimeMillis();
+        //System.out.println("Parse time for " + filename + ": " + (endTime - startTime) + " ms");
         return newElements;
     }
 
