diff --git a/bindings/pyroot/src/Converters.cxx b/bindings/pyroot/src/Converters.cxx
index 86cab2f18daa557fc8e4b56a9de07c144c3ac28f..00d84972e97c799d1703a3b829005410888c5629 100644
--- a/bindings/pyroot/src/Converters.cxx
+++ b/bindings/pyroot/src/Converters.cxx
@@ -22,6 +22,7 @@
 #include <limits.h>
 #include <string.h>
 #include <utility>
+#include <sstream>
 
 
 //- data ______________________________________________________________________
@@ -1044,9 +1045,12 @@ PyROOT::TConverter* PyROOT::CreateConverter( const std::string& fullType, Long_t
    // converter factory available, use it to create converter
       result = (h->second)( user );
    else if ( ! result ) {
-      if ( cpd != "" )
+      if ( cpd != "" ) {
+         std::stringstream s;
+         s << "creating converter for unknown type \"" << fullType << "\"" << std::ends;
+         PyErr_Warn( PyExc_RuntimeWarning, (char*)s.str().c_str() );
          result = new TVoidArrayConverter();       // "user knows best"
-      else
+      } else
          result = new TVoidConverter();            // fails on use
    }
 
diff --git a/bindings/pyroot/src/Executors.cxx b/bindings/pyroot/src/Executors.cxx
index ec3c8357a2d57f9270531dd5365a0032cb7a9a0f..c19424e31bc3a7bd3ecc1adc94c904a5c6d3653a 100644
--- a/bindings/pyroot/src/Executors.cxx
+++ b/bindings/pyroot/src/Executors.cxx
@@ -20,6 +20,7 @@
 
 // Standard
 #include <utility>
+#include <sstream>
 #include <Riostream.h>
 
 
@@ -330,7 +331,9 @@ PyROOT::TExecutor* PyROOT::CreateExecutor( const std::string& fullType )
       if ( ti.Property() & G__BIT_ISENUM )
          h = gExecFactories.find( "UInt_t" );
       else {
-         std::cerr << "return type not handled (using void): " << fullType << std::endl;
+         std::stringstream s;
+         s << "return type not handled (using void): " << fullType << std::ends;
+         PyErr_Warn( PyExc_RuntimeWarning, (char*)s.str().c_str() );
          h = gExecFactories.find( "void" );
       }
    }