On Mon, Oct 08, 2007 at 10:26:21PM +0300, Tommi Raulahti wrote:
> Decided to make a test drive with 3.6 .. but... as usual, everything
> doesn't go as planned...
>
> cxx: Error: FileSet.cc, line 279: no operator "->*" matches these
> operands
>
> OS: OSF/1 5.1
> Compiler: cc & cxx

Please try this patch.

> This is something gcc compiles just fine?

Yes.

--
   Alexander.
Index: FileSet.cc
===================================================================
RCS file: /home/lav/cvsroot/lftp/src/FileSet.cc,v
retrieving revision 1.60
diff -u -p -r1.60 FileSet.cc
--- FileSet.cc  10 Sep 2007 10:00:05 -0000      1.60
+++ FileSet.cc  9 Oct 2007 10:13:53 -0000
@@ -276,7 +276,7 @@ void FileSet::SubtractTimeCmp(bool (File
       if(files[i]->defined&FileInfo::TYPE
       && files[i]->filetype!=FileInfo::NORMAL)
         continue;
-      if((files[i]->*cmp)(t))
+      if((files[i].get()->*cmp)(t))
       {
         Sub(i);
         i--;
Index: Ref.h
===================================================================
RCS file: /home/lav/cvsroot/lftp/src/Ref.h,v
retrieving revision 1.6
diff -u -p -r1.6 Ref.h
--- Ref.h       10 Sep 2007 10:32:51 -0000      1.6
+++ Ref.h       9 Oct 2007 10:14:42 -0000
@@ -39,6 +39,7 @@ public:
    operator const T*() const { return ptr; }
    T *operator->() const { return ptr; }
    T *borrow() { return replace_value(ptr,(T*)0); }
+   const T *get() const { return ptr; }
    T *get_non_const() const { return ptr; }
 
    template<class C> const Ref<C>& Cast() const

Reply via email to