[Trilinos-Users] Compilation Problem on 64 bit on Windows 7

Kurtis Nusbaum klnusbaum at gmail.com
Fri Jun 17 09:16:22 MDT 2011


Faith,
Ok, so I know what's going on, let me see if I can explain it correctly.
Somewhere in Trilinos there is a use of the SerializationTraits class. In
this code the SerializationTraits class It is templated on some type T. Now,
in order to use the SerializationTraits class on type T, a "template
specialization" of the SerializationTraits class must be defined for that
type T (for more on template specialization please see:
http://www.cplusplus.com/doc/tutorial/templates/ ). We've written the
SerialiationTraits class in such a way that if no specialization for a
particular type is supplied, a compiler error occurs (this is the purpose of
the UndfinedSerializationTraits class). So for what ever reason the
SerializationTraits class is does not have a specialization defined for type
T...or at least that's what the compiler thinks. To pinpoint the exact
problem, we're going to need more information about type T. Was their any
other error output?

On Fri, Jun 17, 2011 at 7:46 AM, Fatih Arslan <fatih.arslan at inria.fr> wrote:

> Dear Trilinos contributors,
>
> I was trying to compile Trilions on Windows 7. It was compiled perfectly
> under 32 bit, whereas I have some compilation errors regarding to thyra and
> thyraepetra under 64 bit compilation.
>
> The error is coming from
> packages\teuchos\src\Teuchos_SerializationTraits.hpp...The error is as
> follows :
>
> error C2825: 'T': must be a class or namespace when followed by '::'
> error C2039: 'this_type_is_missing_a_specialization' : is not a member of
> '`global namespace''
> error C2146: syntax error : missing ')' before identifier
> 'this_type_is_missing_a_specialization'
> error C2059: syntax error : ')'
> error C3861: 'this_type_is_missing_a_specialization': identifier not found
>
> These errors are all coming from the same part of the code :
>
> template<typename T>
> struct UndefinedSerializationTraits {
>   //! This function should not compile if there is an attempt to
> instantiate!
>   static inline T notDefined()
> {return(T::this_type_is_missing_a_specialization());}
> };
>
> Do you have any idea on that?
>
> Thank you
>
> Fatih Arslan
>
> _______________________________________________
> Trilinos-Users mailing list
> Trilinos-Users at software.sandia.gov
> http://software.sandia.gov/mailman/listinfo/trilinos-users
>
>


-- 
Peace, Love, and Source Code
-Kurtis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://software.sandia.gov/pipermail/trilinos-users/attachments/20110617/99a313e7/attachment.html 


More information about the Trilinos-Users mailing list