Listing 6: Macro for types that can't be signed/unsigned.

#define DEFINE_FUNDAMENTAL_WITHOUT_SIGN_958DEC24_DCB9_
                                            4EEC_9FA4_86B73473EFFE(TYPE)  \
    template<> struct is_fundamental<TYPE>                    \
        { enum { value = true  }; };                                      \
    template<> struct is_fundamental<const TYPE>              \
        { enum { value = true  }; };                                      \
    template<> struct is_fundamental<volatile TYPE>           \
        { enum { value = true  }; };                                      \
    template<> struct is_fundamental<const volatile TYPE>     \
        { enum { value = true  }; };