[C++-SIG] CXX3.tgz available, compiles with EGCS snapshot

Marc POINOT poinot at onera.fr
Mon Jul 19 16:44:39 CEST 1999


"Paul F. Dubois" wrote:

> CXX is a package for extending Python with C++.
>
> David Ascher and I are working on making Numerical use ExtensionClass and plan
> to release a beta of it for community testing. Since we are doing this rather
> than making a normal release 12, in the meantime I wanted to make available my
> version of CXX that compiles with EGCS as of the snapshot of June 16. Compile
> times are slow but not utterly unbearable. So, if lack of a commercial license
> for a better compiler has prevented you from trying CXX, you can try it now.

I tryed it on my DEC cxx compiler, and it's ok with these two tiny modifications:

1- change the LD command in Makefile.pre.in with

LDSHARED= cxx -shared -expect_unresolved "*"

(but I guess it's one of our local config problem here, as
the Makefile.pre.in takes it from the config).

2- change all uses of STD::cout, STD::endl, STD::ostream, etc...
with ::cout, ::endl, etc...

This means our cxx iostream lib has a global scope. This is (certainly)
temporary, but I add a STDIOSTREAM macro that makes more
detailled the use of the STD macro.

Here's the diff below with original (CXX3) and the DEC (CXX3.dec).
The host version/compiler was:

OSF1 xxx V4.0 878 alpha
DIGITAL C++ V6.1-027 on DIGITAL UNIX V4.0 (Rev. 878)

Marcvs [alias Aaaaah, now I'm going to work with this nice C++ toolkit extension
!]

-----------------------------------------------------------------

65c65
<         STD::cout << "|" << c6 << "|" << STD::endl;
---
>         STDIOSTREAM::cout << "|" << c6 << "|" << STDIOSTREAM::endl;

diff -r CXX3/CXX/Demo/r.h CXX3.dec/CXX/Demo/r.h
6c6
< USING(STD::ostrstream)
---
> USING(STDIOSTREAM::ostrstream)
23c23
<         std::cout << "r created " << this << std::endl;
---
>         STDIOSTREAM::cout << "r created " << this << STDIOSTREAM::endl;
28c28
<         std::cout << "r destroyed " << this << std::endl;
---
>         STDIOSTREAM::cout << "r destroyed " << this << STDIOSTREAM::endl;
52c52
<         s << "r(" << start << ", " << stop << ", " << step << ")" << STD::ends;

---
>         s << "r(" << start << ", " << stop << ", " << step << ")" <<
STDIOSTREAM::ends;

diff -r CXX3/CXX/Demo/rtest.cxx CXX3.dec/CXX/Demo/rtest.cxx
7c7
<             STD::cout << "r::check failed (1).";
---
>             STDIOSTREAM::cout << "r::check failed (1).";

diff -r CXX3/CXX/Include/CXX_Config.h CXX3.dec/CXX/Include/CXX_Config.h
10a11,12
> #define STDIOSTREAM
>

diff -r CXX3/CXX/Include/CXX_Objects.h CXX3.dec/CXX/Include/CXX_Objects.h
363c363
<      STD::ostream& operator<< (STD::ostream& os, const Object& ob);
---
>      STDIOSTREAM::ostream& operator<< (STDIOSTREAM::ostream& os, const Object&
ob);

diff -r CXX3/CXX/Src/cxxsupport.cxx CXX3.dec/CXX/Src/cxxsupport.cxx
35c35
<     STD::ostream& operator<< (STD::ostream& os, const Object& ob) {
---
>     STDIOSTREAM::ostream& operator<< (STDIOSTREAM::ostream& os, const Object&
ob) {


--------------------------------------------------------------------------------





More information about the Cplusplus-sig mailing list