This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ISO C++ forbids declaration of `result_type' with no type


Hi,

I am get compilation error when using gcc 3.4 on i386 platform related to
template :

ERROR MESSAGE:
include/template:168: error: ISO C++ forbids declaration of `result_type'
with no type
include/template:168: error: expected `;' before "operator"
/include/template:171: error: expected `;' before "protected"


SOURCE FILE:

template<class _Bfn>
        class binder1st
        : public unary_function<typename _Bfn::second_argument_type,
typename _Bfn::result_type> {

        public:
            binder1st(const _Bfn& _X,
                const typename _Bfn::first_argument_type& _Y) : op(_X),
value(_Y) {}
            result_type operator()(const argument_type& _X) const // Error
here ! Line 168
                {return (op(value, _X)); }

        protected:
            _Bfn op;
            typename _Bfn::first_argument_type value;

        };



Everything use to run fine on gcc 3.3.x. Any suggestion to fix this issue ?
Thanks



Best Regards
Kelvin Lim

Notice
The information in this message is confidential and may be legally
privileged.  It is intended solely for the addressee.  Access to this
message by anyone else is unauthorized.  If you are not the intended
recipient,  any disclosure,  copying or distribution of the message,  or
any action taken by you in reliance on it,  is prohibited and may be
unlawful.  If you have received this message in error,  please delete it
and contact the sender immediately.  Thank you.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]