X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-bounces using -f From: "Randy Maddox" To: Cc: "Randy Maddox" Subject: Is this a bug? Date: Wed, 12 Dec 2001 11:47:33 -0500 Message-ID: <000b01c1832c$b2777f20$3502a8c0@nancy> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_000C_01C18302.C9A17720" X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Importance: Normal X-MS-TNEF-Correlator: 000000009C48F545F726D442AB16EBB632D02A0DC42F2000 Reply-To: djgpp AT delorie DOT com This is a multi-part message in MIME format. ------=_NextPart_000_000C_01C18302.C9A17720 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hello, I am using the DJGPP 3.02 version for Windows 2000 and seem to be experiencing a problem that I hope you can help with. The problem is that when I declare a function parameter of type std::basic_string::iterator the compiler does not seem to recognize that std::string::begin() returns a value of that type and complains that it cannot find a match for std::__normal_iterator, std::allocator > >, which is in fact what std::basic_string::iterator is a typedef for. If I modify my parameter declaration to use the long std::__normal_iterator<> declaration directly, then it works just fine. Is this a bug? The following code demonstrates the problem: // test driver for iterator problem #include #include template std::basic_string::iterator ShowChars(std::basic_string::iterator startPos, std::basic_string::iterator endPos) { for( ; !(startPos == endPos); ++startPos) { std::cout << *startPos; } std::cout << std::endl; } int main() { std::cout << "Start of test program" << std::endl << std::endl; std::string str("Hello, World!"); ShowChars(str.begin(), str.end()); std::cout << std::endl << "End of test program" << std::endl; return 0; } // end of this file Compiling this file with the -v option generates the following output: >gxx -v -o test4.exe test4.cpp Reading specs from C:/djgpp/bin/../lib/gcc-lib/djgpp/3.02/specs Configured with: ../configure i586-pc-msdosdjgpp --prefix=/dev/env/DJDIR --disable-nls Thread model: single gcc version 3.0.2 C:/djgpp/bin/../lib/gcc-lib/djgpp/3.02/cc1plus.exe -v -iprefix C:\djgpp\bin/../lib/gcc-lib/djg pp/3.02/ -D__GNUC__=3 -D__GNUC_MINOR__=0 -D__GNUC_PATCHLEVEL__=2 -D__MSDOS__ -D__GO32__ -D__uni x__ -D__MSDOS__ -D__GO32__ -D__unix__ -Asystem=msdos -Asystem=unix -D__NO_INLINE__ -D__STDC_HOS TED__=1 -remap -imacros C:/djgpp/bin/../lib/gcc-lib/djgpp/3.02/djgpp.ver -Acpu=i386 -Amachine=i 386 -Di386 -D__i386 -D__i386__ -D__tune_i586__ -D__tune_pentium__ -DMSDOS -DGO32 -Dunix test4.c pp -D__GNUG__=3 -D__GXX_DEPRECATED -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -quiet -dumpbase test 4.cpp -version -o c:/djgpp/tmp\ccZVVDK2.s GNU CPP version 3.0.2 (cpplib) (80386, BSD syntax) GNU C++ version 3.0.2 (djgpp) compiled by GNU C version 3.0.2. ignoring nonexistent directory "C:/djgpp/djgpp/include" ignoring nonexistent directory "c:/djgpp/djgpp/include" #include "..." search starts here: #include <...> search starts here: C:/djgpp/lang/cxx-v3 C:/djgpp/lang/cxx-v3/djgpp C:/djgpp/lang/cxx-v3/backward C:/djgpp/lib/gcc-lib/djgpp/3.02/include c:/djgpp/lang/cxx-v3 c:/djgpp/lang/cxx-v3/djgpp c:/djgpp/lang/cxx-v3/backward c:/djgpp/lib/gcc-lib/djgpp/3.02/include c:/djgpp/include End of search list. test4.cpp: In function `int main()': test4.cpp:25: no matching function for call to `ShowChars(std::__normal_iterator, std::allocator > >, std::__normal_iterator, std::allocator > >)' Looking through the header files I can see that bits\basic_string.h provides the following typedef: typedef __normal_iterator iterator; So it looks to me, IMHO, as if the code should work as is. Randy Maddox C++ Author, Architect, Developer 703-883-8088 ext. 119 (8 am to 4:30 pm Eastern USA time) rmaddox AT isicns DOT com ------=_NextPart_000_000C_01C18302.C9A17720 Content-Type: application/ms-tnef; name="winmail.dat" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="winmail.dat" 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 AAAYhQAAAAAAAAIB+A8BAAAAEAAAAJxI9UX3JtRCqxbrtjLQKg0CAfoPAQAAABAAAACcSPVF9ybU QqsW67Yy0CoNAgH7DwEAAACjAAAAAAAAADihuxAF5RAaobsIACsqVsIAAFBTVFBSWC5ETEwAAAAA AAAAAE5JVEH5v7gBAKoAN9luAAAAQzpcRG9jdW1lbnRzIGFuZCBTZXR0aW5nc1xSYW5keU0uTkFW SUdBVElPTlxMb2NhbCBTZXR0aW5nc1xBcHBsaWNhdGlvbiBEYXRhXE1pY3Jvc29mdFxPdXRsb29r XG1haWxib3gucHN0AAADAP4PBQAAAAMADTT9NwAAAgF/AAEAAAAxAAAAMDAwMDAwMDA5QzQ4RjU0 NUY3MjZENDQyQUIxNkVCQjYzMkQwMkEwREM0MkYyMDAwAAAAAAMABhBQC561AwAHECELAAADABAQ AAAAAAMAERAAAAAAHgAIEAEAAABlAAAASEVMTE8sSUFNVVNJTkdUSEVESkdQUDMwMlZFUlNJT05G T1JXSU5ET1dTMjAwMEFORFNFRU1UT0JFRVhQRVJJRU5DSU5HQVBST0JMRU1USEFUSUhPUEVZT1VD QU5IRUxQV0lUSAAAAAA+uA== ------=_NextPart_000_000C_01C18302.C9A17720--