Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript |
c++ - can't get past first header
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 Jun 04 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 Jun 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 Jun 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 Jun 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 Jun 05 2001
I should have noticed....... The missing command line option is '-Ab'. This instructs the compiler to define the keyword bool. The line causing the problem shows that bool is not defined (if you look at the source code). There are two configuration files (in stlport directory): stl_user_config.h This file is used by the user to tweak the library. config/stl_digital_mars.h This file contains the Compiler setup. Digital Mars only suports the STL part of STLport due to some limitations with templates. If you have any problems or fixes for STLport please let us know as the official STLport site has not yet been informed of the changes made to support this compiler. Damian. On Tue, 5 Jun 2001 21:56:04 +0100, "Damian Dixon" <damian.dixon virgin.net> wrote: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 Jun 06 2001
|