[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2009-05-21 Thread billingd at gcc dot gnu dot org


-- 

billingd at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2009-05-21 Thread billingd at gcc dot gnu dot org


--- Comment #13 from billingd at gcc dot gnu dot org  2009-05-21 11:32 
---
Fixed in 4.4 and trunk.


-- 

billingd at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2009-05-21 Thread billingd at gcc dot gnu dot org


--- Comment #12 from billingd at gcc dot gnu dot org  2009-05-21 11:31 
---
Subject: Bug 36211

Author: billingd
Date: Thu May 21 11:30:55 2009
New Revision: 147762

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=147762
Log:
2009-05-21  David Billinghurst 

Backport from mainline:
PR libstdc++/36211
* testsuite/lib/libstdc++.exp(v3_target_compile):  Add
cxxldflags to additional_flags rather than cxx_final.

Modified:
branches/gcc-4_4-branch/libstdc++-v3/ChangeLog
branches/gcc-4_4-branch/libstdc++-v3/testsuite/lib/libstdc++.exp


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2009-05-15 Thread billingd at gcc dot gnu dot org


--- Comment #11 from billingd at gcc dot gnu dot org  2009-05-15 09:24 
---
Subject: Bug 36211

Author: billingd
Date: Fri May 15 09:23:58 2009
New Revision: 147565

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=147565
Log:
2009-05-15  David Billinghurst 

PR libstdc++/36211
* testsuite/lib/libstdc++.exp(v3_target_compile):  Add
cxxldflags to additional_flags rather than cxx_final.

Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/testsuite/lib/libstdc++.exp


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2009-05-14 Thread billingd at gcc dot gnu dot org


--- Comment #10 from billingd at gcc dot gnu dot org  2009-05-14 21:51 
---
Patch is approved - http://gcc.gnu.org/ml/libstdc++/2009-05/msg00098.html


-- 

billingd at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |billingd at gcc dot gnu dot
   |dot org |org
 Status|WAITING |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-05-14 21:51:26
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2009-05-13 Thread billingd at gcc dot gnu dot org


--- Comment #9 from billingd at gcc dot gnu dot org  2009-05-14 03:24 
---
Draft patch http://gcc.gnu.org/ml/libstdc++/2009-05/msg00090.html


-- 

billingd at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||billingd at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread tprince at computer dot org


--- Comment #8 from tprince at computer dot org  2008-05-12 01:58 ---
Yes, -liconv precedes the source file, where it must follow:
Executing on host: /cygdrive/c/gnu/gcc-4.4-20080509/xp/./gcc/g++ -shared-libgcc
-B/cygdrive/c/gnu/gcc-4.4-20080509/xp/./gcc -nostdinc++
-L/cygdrive/c/gnu/gcc-4.
4-20080509/xp/i686-pc-cygwin/libstdc++-v3/src
-L/cygdrive/c/gnu/gcc-4.4-20080509
/xp/i686-pc-cygwin/libstdc++-v3/src/.libs
-B/usr/local/gcc44/i686-pc-cygwin/bin/
 -B/usr/local/gcc44/i686-pc-cygwin/lib/ -isystem
/usr/local/gcc44/i686-pc-cygwin
/include -isystem /usr/local/gcc44/i686-pc-cygwin/sys-include -g -O2
-D_GLIBCXX_
ASSERT -fmessage-length=0 -ffunction-sections -fdata-sections -g -O2 -g -O2  
-D
LOCALEDIR="." -nostdinc++
-I/cygdrive/c/gnu/gcc-4.4-20080509/xp/i686-pc-cygwin/l
ibstdc++-v3/include/i686-pc-cygwin
-I/cygdrive/c/gnu/gcc-4.4-20080509/xp/i686-pc
-cygwin/libstdc++-v3/include
-I/cygdrive/c/gnu/gcc-4.4-20080509/libstdc++-v3/lib
supc++ -I/cygdrive/c/gnu/gcc-4.4-20080509/libstdc++-v3/include/backward
-I/cygdr
ive/c/gnu/gcc-4.4-20080509/libstdc++-v3/testsuite/util -Wl,--gc-sections
-liconv

/cygdrive/c/gnu/gcc-4.4-20080509/libstdc++-v3/testsuite/22_locale/locale/cons/u
nicode.cc-include bits/stdc++.h ./libtestc++.a -o ./unicode.exe   
(time


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread dannysmith at users dot sourceforge dot net


--- Comment #7 from dannysmith at users dot sourceforge dot net  2008-05-11 
22:46 ---
Following is with mingw but it applies to cygwin as well 

This is the command line from log for FAILing 22_locale/locale/cons/unicode.cc

Executing on host: /develop/svn/trunk/build/./gcc/g++ -shared-libgcc
-B/develop/svn/trunk/build/./gcc -nostdinc++
-L/develop/svn/trunk/build/mingw32/libstdc++-v3/src
-L/develop/svn/trunk/build/mingw32/libstdc++-v3/src/.libs
-L/develop/svn/trunk/build/mingw32/winsup/mingw
-L/develop/svn/trunk/build/mingw32/winsup/w32api/lib -isystem
/develop/svn/trunk/src/winsup/mingw/include -isystem
/develop/svn/trunk/src/winsup/w32api/include -B/mingw/mingw32/bin/
-B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem
/mingw/mingw32/sys-include -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0
-ffunction-sections -fdata-sections -g -O2 -g -O2   -DLOCALEDIR="." -nostdinc++
-I/develop/svn/trunk/build/mingw32/libstdc++-v3/include/mingw32
-I/develop/svn/trunk/build/mingw32/libstdc++-v3/include
-I/develop/svn/trunk/src/libstdc++-v3/libsupc++
-I/develop/svn/trunk/src/libstdc++-v3/include/backward
-I/develop/svn/trunk/src/libstdc++-v3/testsuite/util -Wl,--gc-sections
/mingw/lib/libiconv.a
/develop/svn/trunk/src/libstdc++-v3/testsuite/22_locale/locale/cons/unicode.cc 
  -include bits/stdc++.h ./libtestc++.a  -lm   -o ./unicode.exe(timeout =
600)


Note that although the correct libiconv "/mingw/lib/libiconv.a" is passed to
linker, it is  passed  *before*  the objects and libraries that reference
libiconv symbols.
With PE-COFF, the order of objects really does  matter and  since the libiconv
symbols have not yet been referenced when the linker looks at the lib, the
symbols are not resolved. They are not resolved lazily as is possible in ELF


Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread paolo dot carlini at oracle dot com


--- Comment #6 from paolo dot carlini at oracle dot com  2008-05-11 18:13 
---
Frankly, we badly need more details and/or the help of a cygwin maintainer,
because by looking statically at the code I don't see how possibly
__iconv_adaptor can be wrong and most (all?) the active libstdc++ maintainers
do not have a cygwin machine available.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread tprince at computer dot org


--- Comment #5 from tprince at computer dot org  2008-05-11 18:04 ---
Only the gcc-testresults reports where others report the same thing are clearly
relevant:
http://gcc.gnu.org/ml/gcc-testresults/2008-03/msg01444.html
http://gcc.gnu.org/ml/gcc-testresults/2007-05/msg01528.html


In other cases, the poster did not provide sufficient information to establish
conclusively it was the same problem.
It is generally not reported in testresults whether libstdc++ tests were run
with libiconv installed.  If libiconv is not installed, none of these tests are
attempted.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread paolo dot carlini at oracle dot com


--- Comment #4 from paolo dot carlini at oracle dot com  2008-05-11 17:31 
---
Please add pointers to the discussions on those mailing lists.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread tprince at computer dot org


--- Comment #3 from tprince at computer dot org  2008-05-11 17:26 ---
I see that the failing case is looking for a libiconv in the library to match
the char ** prototype, and failing to find one, while the one in the actual
library is set up for the const char ** version.  The comment in
codecvt_specializations.h indicates this should be taken care of by 
__iconv_adaptor, yet the link failure shows this is not working.
I don't understand the usage well enough to know what to conclude, why some
cases (do they also exercise __iconv_adaptor ?) work, while the unicode.cc
cases fail to link at that point.
This problem has been brought up by others in mail lists, but as far as I know
no one wrote up a PR.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread pcarlini at suse dot de


-- 

pcarlini at suse dot de changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread paolo dot carlini at oracle dot com


--- Comment #2 from paolo dot carlini at oracle dot com  2008-05-11 17:13 
---
Why, exactly, do you believe the problem is with the const? The code and the
comment in codecvt_specializations.h appear to indicate that we are already
dealing correctly with the issue and indeed you are reporting that other tests
link fine...


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread tprince at computer dot org


--- Comment #1 from tprince at computer dot org  2008-05-11 15:57 ---
2 unicode.cc tests fail.  Several other tests with -liconv pass.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211