diff --git a/1.2/ArmnnDriverImpl.cpp b/1.2/ArmnnDriverImpl.cpp
index 6ea9bc4..d369aa2 100644
--- a/1.2/ArmnnDriverImpl.cpp
+++ b/1.2/ArmnnDriverImpl.cpp
@@ -138,10 +138,10 @@
                                  OptOptions,
                                  errMessages);
     }
-    catch (armnn::Exception &e)
+    catch (std::exception &e)
     {
         std::stringstream message;
-        message << "armnn::Exception (" << e.what() << ") caught from optimize.";
+        message << "Exception (" << e.what() << ") caught from optimize.";
         FailPrepareModel(ErrorStatus::GENERAL_FAILURE, message.str(), cb);
         return ErrorStatus::NONE;
     }
@@ -173,10 +173,10 @@
             return FailPrepareModel(ErrorStatus::GENERAL_FAILURE, "Network could not be loaded", cb);
         }
     }
-    catch (armnn::Exception& e)
+    catch (std::exception& e)
     {
         std::stringstream message;
-        message << "armnn::Exception (" << e.what()<< ") caught from LoadNetwork.";
+        message << "Exception (" << e.what()<< ") caught from LoadNetwork.";
         FailPrepareModel(ErrorStatus::GENERAL_FAILURE, message.str(), cb);
         return ErrorStatus::NONE;
     }
@@ -204,7 +204,7 @@
         {
             clTunedParameters->Save(options.GetClTunedParametersFile().c_str());
         }
-        catch (const armnn::Exception& error)
+        catch (std::exception& error)
         {
             ALOGE("ArmnnDriverImpl::prepareModel: Failed to save CL tuned parameters file '%s': %s",
                   options.GetClTunedParametersFile().c_str(), error.what());
