[Matrix-SIG] EGCS now compiles CXX

Joe Van Andel vanandel@ucar.edu
Fri, 18 Jun 1999 09:14:48 -0600


This is a multi-part message in MIME format.
--------------9ECE09EF751D959377350EC6
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit


Sometime ago, I said that EGCS (recent snapshots, not the official
release ) now compiles CXX.

EGCS no longer requires patches to compile CXX, but CXX_Objects.h does
need the attached patch.  EGCS compile speed for CXX is disappointing,
but I'm told that the EGCS maintainers will eventually speed up template
handling.


-- 
Joe VanAndel  	          
National Center for Atmospheric Research
http://www.atd.ucar.edu/~vanandel/
Internet: vanandel@ucar.edu
--------------9ECE09EF751D959377350EC6
Content-Type: text/plain; charset=us-ascii;
 name="cxx.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="cxx.patch"

Patch to CXX_Objects.h

*** 1.1	1999/04/20 13:52:05
--- 1.2	1999/04/23 20:39:46
***************
*** 920,926 ****
           }
           
           seqref<T> front() {
!              return seqref(this, 0);
           }
           
           const T back () const {
--- 920,926 ----
           }
           
           seqref<T> front() {
!              return seqref<T>(this, 0);
           }
           
           const T back () const {
***************
*** 928,934 ****
           }
           
           seqref<T> back() {
!              return seqref(this, size()-1);
           }
           
           void verify_length(size_type required_size) 
--- 928,934 ----
           }
           
           seqref<T> back() {
!              return seqref<T>(this, size()-1);
           }
           
           void verify_length(size_type required_size) 
***************
*** 945,951 ****
           }
           
           class iterator
!              : public STD::iterator<STD::random_access_iterator_tag, seqref<T>, int> {
           protected:
               friend class SeqBase<T>;
               SeqBase<T>* seq;
--- 945,951 ----
           }
           
           class iterator
!              : public random_access_iterator<seqref<T>, int> {
           protected:
               friend class SeqBase<T>;
               SeqBase<T>* seq;
***************
*** 1055,1061 ****
           }
           
           class const_iterator
!              : public STD::iterator<STD::random_access_iterator_tag, const Object,int> {
           protected:
               friend class SeqBase<T>;
               const SeqBase<T>* seq;
--- 1055,1061 ----
           }
           
           class const_iterator
!              : random_access_iterator<const Object,int> {
           protected:
               friend class SeqBase<T>;
               const SeqBase<T>* seq;



--------------9ECE09EF751D959377350EC6--