BOOST_MPL_ASSERT problem mit GCC 4.3 und boost 1.35.0



  • Hallo

    ich habe folgenden Beispielcode aus der Dokumentation von boost::mpl entnommen und wollte sehen ob das funktioniert. (Eigentlich bin ich durch ein viel komplexeres Beispiel auf diesen Fall gestoßen).

    Folgender Code:

    #include <boost/mpl/assert.hpp>
    
    using namespace boost;
    using namespace boost::mpl;
    using namespace std;
    
    template< typename T, typename U > struct my
    {
        // ...
        BOOST_MPL_ASSERT(( is_same< T,U > ));
    };
    
    my<char*,char*> test;
    

    führt zu diesen Fehlermeldungen:

    g++     same.cpp   -o same
    same.cpp:10: error: expected primary-expression before ‘void’
    same.cpp:10: error: expected `)' before ‘void’
    same.cpp:10: error: expected `)' before ‘}’ token
    

    Ich habe einiges ausprobiert bin aber irgendwie am Ende meiner Ideen angekommen. Und die Boost-Header auseinander nehmen habe ich mich noch nicht getraut.

    Ich könnte mir vorstellen, dass ein wichtiger Header nicht includiert wird, aber die Fehlermeldung gibt mir irgendwie keinen Hinweis darauf was fehlen könnte.

    Ein entscheidender Hinweis, wäre echt cool 🙂

    Grüße
    Dieter



  • Juhu dieses Problem ist nun gelöst:
    Ein

    #include <boost/type_traits.hpp>
    

    hat geholfen.

    Leider hat diese Lösung auf mein generelleres Problem noch keine Auswirkung gehabt...

    Dieter



  • tadi schrieb:

    Juhu dieses Problem ist nun gelöst:
    Ein

    #include <boost/type_traits.hpp>
    

    hat geholfen.

    Leider hat diese Lösung auf mein generelleres Problem noch keine Auswirkung gehabt...

    Dieter

    Fein, daß Du die Lösung gefunden hast ;).

    Gruß

    Tommi


Anmelden zum Antworten