Jump to page: 1 2
Thread overview
can't get past first header
Jun 05, 2001
Mark D. ANderson
Jun 05, 2001
Damian Dixon
Jun 05, 2001
Mark D. ANderson
Jun 05, 2001
Jan Knepper
Jun 05, 2001
Damian Dixon
Jun 06, 2001
Mark D. ANderson
Jun 06, 2001
Mark D. ANderson
Jun 06, 2001
Jan Knepper
Limitations of STLport SGI SLT and compiler
Jun 08, 2001
Damian Dixon
Jun 06, 2001
Jan Knepper
Jun 06, 2001
Mark D. ANderson
Jun 06, 2001
Jan Knepper
Jun 06, 2001
Mark D. ANderson
Jun 06, 2001
Jan Knepper
Jun 06, 2001
Mark D. ANderson
Jun 06, 2001
Jan Knepper
Jun 06, 2001
Jan Knepper
Jun 09, 2001
Walter
Jun 06, 2001
Damian Dixon
June 05, 2001
this is my first day using DMC++, so this is probably something basic (which is why i'm not posting this in the stlport group).

i downloaded dm815c.zip and the "release" stl port (no version number, but readme says "19th March 2001").
anyhow, it barfs on the first occurence of the keyword "template" (verbose output below).
this code compiles fine using g++.
also, i can compile plain C code ok with SC.

the first line in mda1.C is
#include <iostream>
and it seems to just follow the chain of includes then crap out on the first compilation unit.

any ideas?
thanks....

-mda

d:/devtools/C/dm-815c/bin/SC -cpp -Id:/devtools/C/dm-stlport-4.0/stlport -o -v -w    mda1.C   -o mda1
scppn -cpp -Id:/devtools/C/dm-stlport-4.0/stlport -o -v -w -o mda1.C
Digital Mars C/C++ Compiler Version 8.1B5n
Copyright (C) Digital Mars 2000-2001.  All Rights Reserved.
Written by Walter Bright
www.digitalmars.com
 'mda1.C'
class __nt_context
class __eh_cv
  'd:/devtools/C/dm-stlport-4.0/stlport\iostream'
   'd:/devtools/C/dm-stlport-4.0/stlport\stl/_prolog.h'
    'd:/devtools/C/dm-stlport-4.0/stlport\stl/_config.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\stl_user_config.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\stl/_site_config.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\config/stlcomp.h'
      'd:/devtools/C/dm-stlport-4.0/stlport\config/stl_digital_mars.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\config/stl_confix.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\stl/_check_config.h'
   'd:/devtools/C/dm-stlport-4.0/stlport\wrap_std/iostream'
    'd:/devtools/C/dm-stlport-4.0/stlport\wrap_std/h/iostream.h'
     'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/iostream.h'
      'd:/devtools/C/dm-stlport-4.0/stlport\string.h'
       'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/string.h'
class ios
ios::rdbuf
ios::tie
ios::fill
ios::precision
ios::rdstate
ios::eof
ios::fail
ios::bad
ios::good
ios::flags
ios::width
ios::width
ios::fill
ios::precision
ios::operator ?BPAX
ios::operator !
class streambuf
streambuf::base
streambuf::pbase
streambuf::pptr
streambuf::epptr
streambuf::gptr
streambuf::egptr
streambuf::eback
streambuf::ebuf
streambuf::unbuffered
streambuf::blen
streambuf::pbump
streambuf::gbump
streambuf::unbuffered
streambuf::in_avail
streambuf::out_waiting
streambuf::allocate
streambuf::sgetc
streambuf::snextc
streambuf::sbumpc
streambuf::stossc
streambuf::sputbackc
streambuf::sputc
streambuf::sputn
streambuf::sgetn
class istream
istream::isfx
istream::getline
istream::getline
istream::gcount
istream::ipfx
istream::ipfx0
istream::ipfx1
istream::operator >>
istream::operator >>
istream::operator >>
istream::sync
istream::operator >>
istream::get
istream::get
istream::get
istream::peek
class ostream
ostream::opfx
ostream::osfx
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::put
ostream::write
class iostream
class istream_withassign
class ostream_withassign
class iostream_withassign
class Iostream_init
   'd:/devtools/C/dm-stlport-4.0/stlport\stl/_epilog.h'
  'd:/devtools/C/dm-stlport-4.0/stlport\map'
   'd:/devtools/C/dm-stlport-4.0/stlport\stl/_prolog.h'
   'd:/devtools/C/dm-stlport-4.0/stlport\stl/_tree.h'
    'd:/devtools/C/dm-stlport-4.0/stlport\stl/_algobase.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\cstddef'
      'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/stddef.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\cstring'
     'd:/devtools/C/dm-stlport-4.0/stlport\climits'
      'd:\devtools\C\dm-815c\bin\..\include\limits.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\cstdlib'
      'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/stdlib.h'
class _DIV
class _LDIV
       'd:\devtools\C\dm-815c\bin\..\include\heapstat.h'
     'd:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h'
d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(38) : Error: function expected
template <class _Tp>
       ^
d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(42) : Error: not an overloadable operator token
}
^
d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(45) : Error: identifier or '( declarator )' expected
d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(48) : Error: function expected
template <class _Tp>
       ^
d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(52) : Error: not an overloadable operator token
Fatal error: too many errors



June 05, 2001
Hi,

The following code compiles and runs on my machine:-

-------start of mda1.C
#include <iostream>

int main()
{
  cout << "Hello" << endl;
  return 1;
}
-------end of mda1.C

Using the following command line:

D:\Dm815c>d:/Dm815c/bin/SC -cpp -Id:\SC\stltemp\STL\port\stlport -o -v -w mda1.C -o mda1

(This is using the last release version of STLport)

The output was.......

scppn -cpp -Id:\SC\stltemp\STL\port\stlport -o -v -w -o mda1.C
Digital Mars C/C++ Compiler Version 8.1B5n
Copyright (C) Digital Mars 2000-2001.  All Rights Reserved.
Written by Walter Bright
www.digitalmars.com
 'mda1.C'
class __nt_context
class __eh_cv
  'd:\SC\stltemp\STL\port\stlport\iostream'
   'd:\SC\stltemp\STL\port\stlport\stl/_prolog.h'
    'd:\SC\stltemp\STL\port\stlport\stl/_config.h'
     'd:\SC\stltemp\STL\port\stlport\stl_user_config.h'
     'd:\SC\stltemp\STL\port\stlport\stl/_site_config.h'
     'd:\SC\stltemp\STL\port\stlport\config/stlcomp.h'
      'd:\SC\stltemp\STL\port\stlport\config/stl_digital_mars.h'
     'd:\SC\stltemp\STL\port\stlport\config/stl_confix.h'
     'd:\SC\stltemp\STL\port\stlport\stl/_check_config.h'
   'd:\SC\stltemp\STL\port\stlport\wrap_std/iostream'
    'd:\SC\stltemp\STL\port\stlport\wrap_std/h/iostream.h'
     'd:\Dm815c\bin\..\mfc\include\../../include/iostream.h'
      'd:\SC\stltemp\STL\port\stlport\string.h'
       'd:\Dm815c\bin\..\mfc\include\../../include/string.h'
class ios
ios::rdbuf
ios::tie
ios::fill
ios::precision
ios::rdstate
ios::eof
ios::fail
ios::bad
ios::good
ios::flags
ios::width
ios::width
ios::fill
ios::precision
ios::operator ?BPAX
ios::operator !
class streambuf
streambuf::base
streambuf::pbase
streambuf::pptr
streambuf::epptr
streambuf::gptr
streambuf::egptr
streambuf::eback
streambuf::ebuf
streambuf::unbuffered
streambuf::blen
streambuf::pbump
streambuf::gbump
streambuf::unbuffered
streambuf::in_avail
streambuf::out_waiting
streambuf::allocate
streambuf::sgetc
streambuf::snextc
streambuf::sbumpc
streambuf::stossc
streambuf::sputbackc
streambuf::sputc
streambuf::sputn
streambuf::sgetn
class istream
istream::isfx
istream::getline
istream::getline
istream::gcount
istream::ipfx
istream::ipfx0
istream::ipfx1
istream::operator >>
istream::operator >>
istream::operator >>
istream::sync
istream::operator >>
istream::get
istream::get
istream::get
istream::peek
class ostream
ostream::opfx
ostream::osfx
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::put
ostream::write
class iostream
class istream_withassign
class ostream_withassign
class iostream_withassign
class Iostream_init
   'd:\SC\stltemp\STL\port\stlport\stl/_epilog.h'
main
C/C++ Compiler complete. Code: 0x0025 (37) Data: 0x0006 (6) Time: 2.00 seconds

scppn -cpp -Id:\SC\stltemp\STL\port\stlport -o -v -w -o mda1.c
Digital Mars C/C++ Compiler Version 8.1B5n
Copyright (C) Digital Mars 2000-2001.  All Rights Reserved.
Written by Walter Bright
www.digitalmars.com
 'mda1.c'
class __nt_context
class __eh_cv
  'd:\SC\stltemp\STL\port\stlport\iostream'
   'd:\SC\stltemp\STL\port\stlport\stl/_prolog.h'
    'd:\SC\stltemp\STL\port\stlport\stl/_config.h'
     'd:\SC\stltemp\STL\port\stlport\stl_user_config.h'
     'd:\SC\stltemp\STL\port\stlport\stl/_site_config.h'
     'd:\SC\stltemp\STL\port\stlport\config/stlcomp.h'
      'd:\SC\stltemp\STL\port\stlport\config/stl_digital_mars.h'
     'd:\SC\stltemp\STL\port\stlport\config/stl_confix.h'
     'd:\SC\stltemp\STL\port\stlport\stl/_check_config.h'
   'd:\SC\stltemp\STL\port\stlport\wrap_std/iostream'
    'd:\SC\stltemp\STL\port\stlport\wrap_std/h/iostream.h'
     'd:\Dm815c\bin\..\mfc\include\../../include/iostream.h'
      'd:\SC\stltemp\STL\port\stlport\string.h'
       'd:\Dm815c\bin\..\mfc\include\../../include/string.h'
class ios
ios::rdbuf
ios::tie
ios::fill
ios::precision
ios::rdstate
ios::eof
ios::fail
ios::bad
ios::good
ios::flags
ios::width
ios::width
ios::fill
ios::precision
ios::operator ?BPAX
ios::operator !
class streambuf
streambuf::base
streambuf::pbase
streambuf::pptr
streambuf::epptr
streambuf::gptr
streambuf::egptr
streambuf::eback
streambuf::ebuf
streambuf::unbuffered
streambuf::blen
streambuf::pbump
streambuf::gbump
streambuf::unbuffered
streambuf::in_avail
streambuf::out_waiting
streambuf::allocate
streambuf::sgetc
streambuf::snextc
streambuf::sbumpc
streambuf::stossc
streambuf::sputbackc
streambuf::sputc
streambuf::sputn
streambuf::sgetn
class istream
istream::isfx
istream::getline
istream::getline
istream::gcount
istream::ipfx
istream::ipfx0
istream::ipfx1
istream::operator >>
istream::operator >>
istream::operator >>
istream::sync
istream::operator >>
istream::get
istream::get
istream::get
istream::peek
class ostream
ostream::opfx
ostream::osfx
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::put
ostream::write
class iostream
class istream_withassign
class ostream_withassign
class iostream_withassign
class Iostream_init
   'd:\SC\stltemp\STL\port\stlport\stl/_epilog.h'
main
C/C++ Compiler complete. Code: 0x0025 (37) Data: 0x0006 (6) Time: 2.01 seconds

link mda1+mda1,,,user32+kernel32/noi;

D:\Dm815c>



As you can see the above program compiles and links. If you compare the outputs
carfully you will see that the problem is not to do with including iostream but including
something else (something todo with including __relops.h, but I can't see how it
is being included with out see more then the first line of your code).

Could you provide a cut down compile-able code section that generates the problem please.


Regards
Damian



On Mon, 4 Jun 2001 21:39:31 -0700, "Mark D. ANderson" <mda@discerning.com> wrote:
> this is my first day using DMC++, so this is probably something basic (which is why i'm not posting this in the stlport group).
> 
> i downloaded dm815c.zip and the "release" stl port (no version number, but readme says "19th March 2001").
> anyhow, it barfs on the first occurence of the keyword "template" (verbose output below).
> this code compiles fine using g++.
> also, i can compile plain C code ok with SC.
> 
> the first line in mda1.C is
> #include <iostream>
> and it seems to just follow the chain of includes then crap out on the first compilation unit.
> 
> any ideas?
> thanks....
> 
> -mda
> 
> d:/devtools/C/dm-815c/bin/SC -cpp -Id:/devtools/C/dm-stlport-4.0/stlport -o -v -w    mda1.C   -o mda1
> scppn -cpp -Id:/devtools/C/dm-stlport-4.0/stlport -o -v -w -o mda1.C
> Digital Mars C/C++ Compiler Version 8.1B5n
> Copyright (C) Digital Mars 2000-2001.  All Rights Reserved.
> Written by Walter Bright
> www.digitalmars.com
>  'mda1.C'
> class __nt_context
> class __eh_cv
>   'd:/devtools/C/dm-stlport-4.0/stlport\iostream'
>    'd:/devtools/C/dm-stlport-4.0/stlport\stl/_prolog.h'
>     'd:/devtools/C/dm-stlport-4.0/stlport\stl/_config.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\stl_user_config.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\stl/_site_config.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\config/stlcomp.h'
>       'd:/devtools/C/dm-stlport-4.0/stlport\config/stl_digital_mars.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\config/stl_confix.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\stl/_check_config.h'
>    'd:/devtools/C/dm-stlport-4.0/stlport\wrap_std/iostream'
>     'd:/devtools/C/dm-stlport-4.0/stlport\wrap_std/h/iostream.h'
>      'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/iostream.h'
>       'd:/devtools/C/dm-stlport-4.0/stlport\string.h'
>        'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/string.h'
> class ios
> ios::rdbuf
> ios::tie
> ios::fill
> ios::precision
> ios::rdstate
> ios::eof
> ios::fail
> ios::bad
> ios::good
> ios::flags
> ios::width
> ios::width
> ios::fill
> ios::precision
> ios::operator ?BPAX
> ios::operator !
> class streambuf
> streambuf::base
> streambuf::pbase
> streambuf::pptr
> streambuf::epptr
> streambuf::gptr
> streambuf::egptr
> streambuf::eback
> streambuf::ebuf
> streambuf::unbuffered
> streambuf::blen
> streambuf::pbump
> streambuf::gbump
> streambuf::unbuffered
> streambuf::in_avail
> streambuf::out_waiting
> streambuf::allocate
> streambuf::sgetc
> streambuf::snextc
> streambuf::sbumpc
> streambuf::stossc
> streambuf::sputbackc
> streambuf::sputc
> streambuf::sputn
> streambuf::sgetn
> class istream
> istream::isfx
> istream::getline
> istream::getline
> istream::gcount
> istream::ipfx
> istream::ipfx0
> istream::ipfx1
> istream::operator >>
> istream::operator >>
> istream::operator >>
> istream::sync
> istream::operator >>
> istream::get
> istream::get
> istream::get
> istream::peek
> class ostream
> ostream::opfx
> ostream::osfx
> ostream::operator <<
> ostream::operator <<
> ostream::operator <<
> ostream::operator <<
> ostream::operator <<
> ostream::operator <<
> ostream::operator <<
> ostream::operator <<
> ostream::operator <<
> ostream::put
> ostream::write
> class iostream
> class istream_withassign
> class ostream_withassign
> class iostream_withassign
> class Iostream_init
>    'd:/devtools/C/dm-stlport-4.0/stlport\stl/_epilog.h'
>   'd:/devtools/C/dm-stlport-4.0/stlport\map'
>    'd:/devtools/C/dm-stlport-4.0/stlport\stl/_prolog.h'
>    'd:/devtools/C/dm-stlport-4.0/stlport\stl/_tree.h'
>     'd:/devtools/C/dm-stlport-4.0/stlport\stl/_algobase.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\cstddef'
>       'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/stddef.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\cstring'
>      'd:/devtools/C/dm-stlport-4.0/stlport\climits'
>       'd:\devtools\C\dm-815c\bin\..\include\limits.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\cstdlib'
>       'd:\devtools\C\dm-815c\bin\..\mfc\include\../../include/stdlib.h'
> class _DIV
> class _LDIV
>        'd:\devtools\C\dm-815c\bin\..\include\heapstat.h'
>      'd:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h'
> d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(38) : Error: function expected
> template <class _Tp>
>        ^
> d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(42) : Error: not an overloadable operator token
> }
> ^
> d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(45) : Error: identifier or '( declarator )' expected
> d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(48) : Error: function expected
> template <class _Tp>
>        ^
> d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(52) : Error: not an overloadable operator token
> Fatal error: too many errors
> 
> 
> 


June 05, 2001
"Damian Dixon" <damian.dixon@tenetdefence.com> wrote in message news:1103_991727358@dilbert...
> The following code compiles and runs on my machine:-
>
> -------start of mda1.C
> #include <iostream>
>
> int main()
> {
>   cout << "Hello" << endl;
>   return 1;
> }
> -------end of mda1.C

that works for me too.
however, amazingly, if I change it to this:
-----
#include <hash_map>

int main()
{
  return 1;
}
-----

i get obscure compiler errors again:
...
      'd:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h'
d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(38) : Error: function expected
template <class _Tp>
       ^
...
i thought it first it might be because of using unix line endings in mda1.C (does dm support those?)
but i changed to dos line endings and had the same result.

this has got to be something basic.
note that all i did was unzip the dm compiler, and unzip the stlport, and go.
i didn't edit any config files, either ini or config.h. but that should work, right?

-mda


June 05, 2001
"Mark D. ANderson" wrote:

CC:ed to c++.stl.port

> "Damian Dixon" <damian.dixon@tenetdefence.com> wrote in message news:1103_991727358@dilbert...
> > The following code compiles and runs on my machine:-
> >
> > -------start of mda1.C
> > #include <iostream>
> >
> > int main()
> > {
> >   cout << "Hello" << endl;
> >   return 1;
> > }
> > -------end of mda1.C
>
> that works for me too.
> however, amazingly, if I change it to this:
> -----
> #include <hash_map>
>
> int main()
> {
>   return 1;
> }
> -----
>
> i get obscure compiler errors again:
> ...
>       'd:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h'
> d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(38) : Error: function expected
> template <class _Tp>
>        ^
> ...
> i thought it first it might be because of using unix line endings in mda1.C (does dm support those?)

Never had a problem with those... Move my files around all the time...

> this has got to be something basic.
> note that all i did was unzip the dm compiler, and unzip the stlport, and go.
> i didn't edit any config files, either ini or config.h. but that should work, right?

I think you might need certain 'defines' for STLport to work.
Damian: Is there any #define that you require for your patches
to go active during compilation???
The best person to talk to is Damian Dixon.

I myself use the HP STL and SGI STL that are also available on the site.

HTH
Jan
June 05, 2001
Jan Knepper <jan@smartsoft.cc> wrote in message news:3B1D41A1.F61EB1A7@smartsoft.cc...
> "Mark D. ANderson" wrote:
>
> CC:ed to c++.stl.port
>
> > "Damian Dixon" <damian.dixon@tenetdefence.com> wrote in message
news:1103_991727358@dilbert...
> > > The following code compiles and runs on my machine:-
> > >
> > > -------start of mda1.C
> > > #include <iostream>
> > >
> > > int main()
> > > {
> > >   cout << "Hello" << endl;
> > >   return 1;
> > > }
> > > -------end of mda1.C
> >
> > that works for me too.

As I expected :>

> > however, amazingly, if I change it to this:
> > -----
> > #include <hash_map>
> >
> > int main()
> > {
> >   return 1;
> > }
> > -----
> >
> > i get obscure compiler errors again:
> > ...
> >       'd:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h'
> > d:/devtools/C/dm-stlport-4.0/stlport\stl/_relops.h(38) : Error: function
expected
> > template <class _Tp>
> >        ^
> > ...
> > i thought it first it might be because of using unix line endings in
mda1.C (does dm support those?)
>
> Never had a problem with those... Move my files around all the time...

I will have a look when I get into work on Wednesday. I will reserve comment until then :>

>
> > this has got to be something basic.
> > note that all i did was unzip the dm compiler, and unzip the stlport,
and go.
> > i didn't edit any config files, either ini or config.h. but that should
work, right?
>
> I think you might need certain 'defines' for STLport to work. Damian: Is there any #define that you require for your patches to go active during compilation???

You should not need to do anything to get it all to compile. It has all been
preconfigured
(see the digital mars README for additional information, for my test
configuration).

All you need to do is point the compiler to where STLport has been installed.

> The best person to talk to is Damian Dixon.
>
> I myself use the HP STL and SGI STL that are also available on the site.
>
> HTH
> Jan

Damian (Home)


June 06, 2001
(following up just on stl.port)

(i just know i'm going to feel like an idiot when this is figured out, though i'm tempted to give up at this point.)

ok, i downloaded the sgi stl from the web site.

same behavior as with stlport -- a program without STL works ok, such as:
#include <iostream.h>
int main()
{
  return 1;
}

however, the following program including stl (now the sgi stl) results in the output attached.

#include <hash_map>
int main()
{
  return 1;
}

so what this means is both of those external stl implementation are failling to compile for me,
out of the box.
i don't know if the root causes of the two compilation failures are the same or not.

btw Jan -- why are you using HP and SGI STL instead of stlport?

-mda

d:/devtools/C/dm-815c/bin/SC -cpp -Id:/devtools/C/sgistl-3.20 -o -v -w    nothing.C   -o nothing
scppn -cpp -Id:/devtools/C/sgistl-3.20 -o -v -w -o nothing.C
Digital Mars C/C++ Compiler Version 8.1B5n
Copyright (C) Digital Mars 2000-2001.  All Rights Reserved.
Written by Walter Bright
www.digitalmars.com
 'nothing.C'
class __nt_context
class __eh_cv
  'd:/devtools/C/sgistl-3.20\hash_map'
   'd:/devtools/C/sgistl-3.20\stl_hashtable.h'
    'd:/devtools/C/sgistl-3.20\stl_algobase.h'
     'd:/devtools/C/sgistl-3.20\stl_config.h'
     'd:/devtools/C/sgistl-3.20\stl_relops.h'
     'd:/devtools/C/sgistl-3.20\stl_pair.h'
     'd:/devtools/C/sgistl-3.20\type_traits.h'
class __true_type
class __false_type
class __type_traits<char >
class __type_traits<signed char >
class __type_traits<unsigned char >
class __type_traits<short >
class __type_traits<unsigned short >
class __type_traits<int >
class __type_traits<unsigned >
class __type_traits<long >
class __type_traits<unsigned long >
class __type_traits<float >
class __type_traits<double >
class __type_traits<long double >
class __type_traits<char *>
class __type_traits<signed char *>
class __type_traits<unsigned char *>
class __type_traits<char const *>
class __type_traits<signed char const *>
class __type_traits<unsigned char const *>
class _Is_integer<char >
class _Is_integer<signed char >
class _Is_integer<unsigned char >
class _Is_integer<short >
class _Is_integer<unsigned short >
class _Is_integer<int >
class _Is_integer<unsigned >
class _Is_integer<long >
class _Is_integer<unsigned long >
     'd:\devtools\C\dm-815c\bin\..\include\string.h'
     'd:\devtools\C\dm-815c\bin\..\include\limits.h'
     'd:\devtools\C\dm-815c\bin\..\include\stdlib.h'
class _DIV
class _LDIV
      'd:\devtools\C\dm-815c\bin\..\include\heapstat.h'
     'd:\devtools\C\dm-815c\bin\..\include\stddef.h'
     'd:\devtools\C\dm-815c\bin\..\include\new.h'
     'd:\devtools\C\dm-815c\bin\..\include\iostream.h'
class ios
ios::rdbuf
ios::tie
ios::fill
ios::precision
ios::rdstate
ios::eof
ios::fail
ios::bad
ios::good
ios::flags
ios::width
ios::width
ios::fill
ios::precision
ios::operator ?BPAX
ios::operator !
class streambuf
streambuf::base
streambuf::pbase
streambuf::pptr
streambuf::epptr
streambuf::gptr
streambuf::egptr
streambuf::eback
streambuf::ebuf
streambuf::unbuffered
streambuf::blen
streambuf::pbump
streambuf::gbump
streambuf::unbuffered
streambuf::in_avail
streambuf::out_waiting
streambuf::allocate
streambuf::sgetc
streambuf::snextc
streambuf::sbumpc
streambuf::stossc
streambuf::sputbackc
streambuf::sputc
streambuf::sputn
streambuf::sgetn
class istream
istream::isfx
istream::getline
istream::getline
istream::gcount
istream::ipfx
istream::ipfx0
istream::ipfx1
istream::operator >>
istream::operator >>
istream::operator >>
istream::sync
istream::operator >>
istream::get
istream::get
istream::get
istream::peek
class ostream
ostream::opfx
ostream::osfx
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::operator <<
ostream::put
ostream::write
class iostream
class istream_withassign
class ostream_withassign
class iostream_withassign
class Iostream_init
     'd:/devtools/C/sgistl-3.20\stl_iterator_base.h'
class input_iterator_tag
class output_iterator_tag
class forward_iterator_tag
class bidirectional_iterator_tag
class random_access_iterator_tag
class output_iterator
iterator_category
     'd:/devtools/C/sgistl-3.20\stl_iterator.h'
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
copy
__copy_trivial
lexicographical_compare
min
lexicographical_compare
lexicographical_compare
__lexicographical_compare_3way
min
__lexicographical_compare_3way
__lexicographical_compare_3way
    'd:/devtools/C/sgistl-3.20\stl_alloc.h'
     'd:\devtools\C\dm-815c\bin\..\include\stdio.h'
class _iobuf
getchar
putchar
getc
putc
ferror
feof
clearerr
rewind
     'd:\devtools\C\dm-815c\bin\..\include\assert.h'
class __malloc_alloc_template<0>
__malloc_alloc_template<0>::allocate
__malloc_alloc_template<0>::deallocate
__malloc_alloc_template<0>::reallocate
__malloc_alloc_template<0>::__set_malloc_handler
class __default_alloc_template<0,0>
class __default_alloc_template<0,0>::_Obj
class __default_alloc_template<0,0>::_Lock
__default_alloc_template<0,0>::_Lock::_Lock
__default_alloc_template<0,0>::_Lock::~_Lock
__default_alloc_template<0,0>::_S_round_up
__default_alloc_template<0,0>::_S_freelist_index
__default_alloc_template<0,0>::allocate
__default_alloc_template<0,0>::deallocate
    'd:/devtools/C/sgistl-3.20\stl_construct.h'
destroy
destroy
    'd:/devtools/C/sgistl-3.20\stl_tempbuf.h'
    'd:/devtools/C/sgistl-3.20\stl_algo.h'
     'd:/devtools/C/sgistl-3.20\stl_heap.h'
d:/devtools/C/sgistl-3.20\stl_algo.h(875) : Error: ')' expected
d:/devtools/C/sgistl-3.20\stl_algo.h(876) : Error: template-argument '_Distance' not used in function parameter types
d:/devtools/C/sgistl-3.20\stl_algo.h(897) : Error: ')' expected
d:/devtools/C/sgistl-3.20\stl_algo.h(899) : Error: template-argument '_Distance' not used in function parameter types
d:/devtools/C/sgistl-3.20\stl_algo.h(919) : Error: ')' expected
Fatal error: too many errors

--- errorlevel 1
make: *** [nothing] Error 1

Compilation exited abnormally with code 2 at Tue Jun 05 19:22:10




June 06, 2001
oh, and in case it wasn't clear before, the test file *does* compile just fine, using the stlport or the sgi stl, using g++.

-mda



June 06, 2001
Mark,

I have tried more or less what you did:

#include <hash_map>



int  main ()
{
   return (  0 );
}

Compiled with:

sc Test.cpp -cpp -Ae -Ar -mn -WA -S -5 -a8 -Nc -c -g -Ab -D_CONSOLE=1 -D_DEBUG=1 -I..\.. -I. -o.\Test.obj
link /NOI /DO /DE /E /PACKF /XN /NT /ENTRY:mainCRTStartup /VERS:1.0 /BAS:4194304 /A:512 @Test.LNK
ren .\$SCW$.EXE Test.EXE
.\Test.EXE built
Lines Processed: 4917  Errors: 0  Warnings: 0
Successful build

Where SGI\STL is "..\.."

And everything seems to work...

Compile without debug info:

sc Test.cpp -cpp -Ae -Ar -mn -WA -S -5 -a8 -Nc -c -Ab -D_CONSOLE=1 -I..\.. -I. -o.\Test.obj
link /NOI /DO /DE /E /PACKF /XN /NT /ENTRY:mainCRTStartup /VERS:1.0 /BAS:4194304 /A:512 @Test.LNK
ren .\$SCW$.EXE Test.EXE
.\Test.EXE built
Lines Processed: 4759  Errors: 0  Warnings: 0
Successful build

> btw Jan -- why are you using HP and SGI STL instead of stlport?

Personal preference I guess. I guess I was the first to use (port) SGI STL with Digital Mars C++. John Fletcher did some work on porting the string part.

HTH
Jan


June 06, 2001
"Mark D. ANderson" wrote:

> oh, and in case it wasn't clear before, the test file *does* compile just fine, using the stlport or the sgi stl, using g++.

Could very well be...

There are a *LOT* of things Digital Mars C++ does perfectly well were the compiled code out of g++ fails. (Believe me... I soon have to port TONS of code to a Unix platform and I already know that g++ will not compile it as is....) I am not saying it's better, just that what you are familiar with usually works better or easier. For me it's Digital Mars C++...

Jan


June 06, 2001
> Compiled with:
> sc Test.cpp -cpp -Ae -Ar -mn -WA -S -5 -a8 -Nc -c -g -Ab -D_CONSOLE=1 -D_DEBUG=1 -I..\.. -I. -o.\Test.obj
> link /NOI /DO /DE /E /PACKF /XN /NT /ENTRY:mainCRTStartup /VERS:1.0 /BAS:4194304 /A:512 @Test.LNK
> ren .\$SCW$.EXE Test.EXE
> .\Test.EXE built

ah. now we are making progress. that exact command line worked for me.
i did a binary search of options to figure out what the ingredient was, and discovered that the -Ab is necessary.
so i can now compile this program:
#include <hash_map>
int  main () {
   return (  0 );
}
using this command line:
d:/devtools/C/dm-815c/bin/SC -cpp -Ab -Id:/devtools/C/dm-stlport-4.0/stlport -o -w  nothing.C  -o nothing
that is, with stlport and just -cpp -Ab

[aside: if i'm compiling C++, it should presume the bool type. -Ab should be irrelevant]

however, the program fails with sgi stl (using any of the options):
d:/devtools/C/dm-815c/bin/SC -cpp -Ae -Ar -mn -WA -S -5 -a8 -Nc -c -g -Ab -D_CONSOLE=1 -D_DEBUG=1 -Id:/devtools/C/sgistl-3.20 -o -
w    nothing.C   -o nothing
d:/devtools/C/sgistl-3.20\stl_algo.h(875) : Error: ')' expected
[looking at that line in the file, i'm guessing it considers some parameter to be a macro? who knows.]

furthermore, if i'm feeling lucky and try to add to my program, stlport still fails too:
#include <hash_map>
#include <iostream>
using namespace std;
int main() {
  cout << "Hello" << endl;
  return (0);
}

d:/devtools/C/dm-815c/bin/SC -cpp -Ae -Ar -mn -WA -S -5 -a8 -Nc -c -g -Ab -D_CONSOLE=1 -D_DEBUG=1 -Id:/devtools/C/dm-stlport-4.0/s
tlport -o -w    nothing.C   -o nothing
using namespace std;
                   ^
nothing.C(3) : Error: identifier expected

but it works without the namespace statement. so is there yet another option that is supposed to enable namespaces?

btw, what is the origin of that command line above? is this what the symantec gui generates?
am i the only one in the world trying to use the win32 dm compiler armed with just emacs and gmake?

> > btw Jan -- why are you using HP and SGI STL instead of stlport?
>
> Personal preference I guess. I guess I was the first to use (port) SGI STL with Digital Mars C++. John Fletcher did some work on porting the string part.

my understanding is that the HP stl is older and crustier than just about everything.
how much different is stlport from sgi stl?
is there some benefit to using a patched sgi stl, rather than using stlport?

-mda




« First   ‹ Prev
1 2