Index: /trunk/FACT++/gui/fact.cc
===================================================================
--- /trunk/FACT++/gui/fact.cc	(revision 11229)
+++ /trunk/FACT++/gui/fact.cc	(revision 11230)
@@ -54,26 +54,19 @@
         vm = conf.Parse(argc, argv);
     }
-    catch (std::exception &e)
+#if BOOST_VERSION > 104000
+    catch (po::multiple_occurrences &e)
     {
-#if BOOST_VERSION > 104000
-        po::multiple_occurrences *MO = dynamic_cast<po::multiple_occurrences*>(&e);
-        if (MO)
-            cout << "Error: " << e.what() << " of '" << MO->get_option_name() << "' option." << endl;
-        else
+        cerr << "Program options invalid due to: " << e.what() << " of '" << e.get_option_name() << "'." << endl;
+        return -1;
+    }
 #endif
-            cout << "Error: " << e.what() << endl;
-        cout << endl;
-
+    catch (exception& e)
+    {
+        cerr << "Program options invalid due to: " << e.what() << endl;
         return -1;
     }
 
-    if (conf.HasPrint())
+    if (conf.HasVersion() || conf.HasPrint())
         return -1;
-
-    if (conf.HasVersion())
-    {
-        FACT::PrintVersion(argv[0]);
-        return -1;
-    }
 
     if (conf.HasHelp())
