[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: problem building kdesupport/soprano against Qt4.5
From:       Brad Hards <bradh () frogmouth ! net>
Date:       2008-08-22 10:46:25
Message-ID: 200808222046.25988.bradh () frogmouth ! net
[Download RAW message or body]

On Friday 22 August 2008 04:44:23 pm Thiago Macieira wrote:
> Yes. We've seen that problem. It happens because:
> 
> * Soprano uses a namespace
> * Soprano defined qHash(Soprano::Node) before qhash.h was defined
> * qvariant.h has changed in 4.5, including qhash.h now
> 
> That means the definition for QHash jumped above the definition of the
> qHash function. You have to put the function inside the Soprano namespace
> for this to work.
OK, that works for me.

> According to our expert, this is the way the C++ name lookup rules say it
> should be.
Sebastian,

Proposed patch (compile test only):

===================================================================
--- soprano/inference/inferencemodel.cpp        (revision 850712)
+++ soprano/inference/inferencemodel.cpp        (working copy)
@@ -65,7 +65,7 @@
 // -----------------------------------------------------------------------------------------------------------------------
  #include <QSet>
 #include "statementiterator.h"
-uint qHash( const Soprano::Node& node )
+uint Soprano::qHash( const Soprano::Node& node )
 {
     return qHash( node.toString() );
 }
Index: soprano/inference/inferencemodel.h
===================================================================
--- soprano/inference/inferencemodel.h  (revision 850712)
+++ soprano/inference/inferencemodel.h  (working copy)
@@ -196,8 +196,8 @@
             Private* const d;
         };
     }
-}

 uint qHash( const Soprano::Node& node );

+}
 #endif

Brad
 
> > Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic