The following testcase produces strange error message on the line 'vv.s1...':
error: invalid use of member (did you forget the '&' ?)

--- testcase ---

struct CC {
  template<int mm> CC s1(int m) { return (CC()); }
};

template<class A>
struct S {
  static inline void exec1(A &vv) {
    vv.s1<1>(1);
  }
};

void f() {
  CC v;
  S<CC>::exec1(v);
}


-- 
           Summary: 'invalid use of member' error on correct code with
                    templates
           Product: gcc
           Version: 4.0.2
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: yuri at tsoft dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25610


Reply via email to