VC2008 でコンパイルした時のエラー

[戻る]
あべ 2009/08/06(木) 14:08:16
オープンソースの Avesta を VC2008 でコンパイルした時のエラーがどうしてもわかり
ません。
対処方法を教えてください。

    template
    <
        template < typename > class T0 = meta::Void1, template < 
typename > class T1 = meta::Void1,
        template < typename > class T2 = meta::Void1, template < 
typename > class T3 = meta::Void1,
        template < typename > class T4 = meta::Void1, template < 
typename > class T5 = meta::Void1,
        template < typename > class T6 = meta::Void1, template < 
typename > class T7 = meta::Void1,
        template < typename > class T8 = meta::Void1, template < 
typename > class T9 = meta::Void1
    > 
    struct mixin
    {
        template < typename TBase > struct Result1
        {
            typedef T0< typename mixin<T1, T2, T3, T4, T5, T6, 
T7, T8, T9>::Result1<TBase>::Result > Result;
        };
    };

    template <> struct mixin < PP_CSV0(10, meta::Void1) >
    {
        template < typename TBase > struct Result1
        {
            typedef TBase Result;
        };
    };

エラー    9    error 
C2039: 'Result' : 'mew::mixin<T0,T1,T2,T3,T4,T5,T6,T7,T8>::Result1<TBase>' のメ
ンバではありません。    d:\Avesta\src\include\object.hpp    43
エラー    7    error C2059: 構文エラー : '<'
    x:\Avesta\src\include\object.hpp    43
エラー    11    error C2065: 'Result' : 定義されていない識別子です。
    x:\Avesta\src\include\object.hpp    43
エラー    10    error C2146: 構文エラー : ',' が、識別子 'Result' の前に必要
です。    x:\Avesta\src\include\object.hpp    43
エラー    8    error C2238: ';' の前に無効なトークンがあります。
    x:\Avesta\src\include\object.hpp    43

仲澤@失業者 2009/08/06(木) 19:31:07
よくわかりませんが(読む気がしないコードなので)、
不要と思われる「typename」を削除してみたら
どうでしょう。
なんか変な場所にありますよねぇ。

PATIO 2009/08/07(金) 18:18:35
元の開発環境がVC2008でないのであれば、うまくいかない可能性もあると思います。
元の開発環境では許されていたけれど、VC2008では許されない記述だった
なんて事もありますし。

元の記述の意味を理解してVC2008で通るようにしないといけないと思いますが、
これを見ただけでは何とも分かりません。

ITO 2009/08/09(日) 15:02:31
いつも書くのですが
 まず、「 errorC2039,error C2059,error C2065,error C2146,error C2238」を
MSDNで調べて見たらどうでしょうか。

 Cからの番号で検索すればいいです。
まず、エラー意味を理解してから質問しましょう。
ヘルプの内容が分からないのであれば、
 エラー番号 CXXXXのヘルプのここの部分が分からないという感じで質問しましょう。

ITO 2009/08/09(日) 15:14:17
 ダウンロードしたソース環境をそのままコンパイルしてエラーが出るなら
作者に聞いてみるのもいいと思います。
 ただ聞き方に注意ですね。
作者は、.NET 2003 OSはXPの環境で開発を行なっているので、苦情は言わないように
したほうがいいですね。
苦情というよりお願いですね。

古いスレッドには追加発言できません。