[#5887] bfin-uclinux-libstdc++-4.3 ext/headers.cc regress

Document created by Aaronwu Employee on Oct 17, 2013
Version 1Show Document
  • View in full screen mode

[#5887] bfin-uclinux-libstdc++-4.3 ext/headers.cc regress

Submitted By: Mingquan Pan

Open Date

2010-02-08 01:39:42     Close Date

2010-08-24 04:49:53

Priority:

Medium High     Assignee:

Vivi Li

Stuart Henderson

Board:

N/A     Silicon Revision:

Resolution:

Fixed     Fixed In Release:

N/A

Processor:

BF527     

Host Operating System:

toolchain rev.:

trunk head 4.3     kernel rev.:

State:

Closed     Found In Release:

2010R1

Is this bug repeatable?:

N/A     

Summary: bfin-uclinux-libstdc++-4.3 ext/headers.cc regress

Details:

 

bfin-uclinux-libstdc++-4.3 ext/headers.cc fails while in 4.1 testing it passed.

 

#########################################

#

# Comparing bfin-uclinux-libstdc++-4.3.sum

#

########################################

Tests that now fail, but worked before:

 

bfin-uclinux: ext/headers.cc (test for excess errors)

 

 

The log is:Executing on host: bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0  -DLOCALEDIR="." -I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util /home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/ext/headers.cc     -S  -o headers.s    (timeout = 600)

spawn bfin-uclinux-g++ -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0 -DLOCALEDIR="." -I/home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/util /home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/ext/headers.cc -S -o headers.s^M

In file included from /home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/ext/headers.cc:31:^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:46:19: error: iconv.h: No such file or directory^M

In file included from /home/test/work/cruise/checkouts/toolchain/gcc-4.3/libstdc++-v3/testsuite/ext/headers.cc:31:^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:60: error: 'iconv_t' does not name a type^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:70: error: 'descriptor_type' does not name a type^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:73: error: 'descriptor_type' does not name a type^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:150: error: expected ';' before '&' token^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:154: error: expected `;' before 'const'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:154: error: expected ';' before '&' token^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:158: error: expected `;' before 'protected'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In constructor '__gnu_cxx::encoding_state::encoding_state()':^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:89: error: class '__gnu_cxx::encoding_state' does not have any field named '_M_in_desc'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:89: error: class '__gnu_cxx::encoding_state' does not have any field named '_M_out_desc'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In constructor '__gnu_cxx::encoding_state::encoding_state(const char*, const char*, int, int, int)':^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:95: error: class '__gnu_cxx::encoding_state' does not have any field named '_M_in_desc'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:95: error: class '__gnu_cxx::encoding_state' does not have any field named '_M_out_desc'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In copy constructor '__gnu_cxx::encoding_state::encoding_state(const __gnu_cxx::encoding_state&)':^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:107: error: class '__gnu_cxx::encoding_state' does not have any field named '_M_in_desc'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:107: error: class '__gnu_cxx::encoding_state' does not have any field named '_M_out_desc'^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In member function 'bool __gnu_cxx::encoding_state::good() const':^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:124: error: 'descriptor_type' does not name a type^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:125: error: '_M_in_desc' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:125: error: '__err' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:126: error: '_M_out_desc' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In member function 'void __gnu_cxx::encoding_state::init()':^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:162: error: 'descriptor_type' does not name a type^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:164: error: '_M_in_desc' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:166: error: 'iconv_open' was not declared in this scope^M

                                                                                                        ..../home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:301: error: expected primary-expression before '*' token^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:301: error: '__outbytes' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In member function 'virtual std::codecvt_base::result std::codecvt<_InternT, _ExternT, __gnu_cxx::encoding_state>::do_out(__gnu_cxx::encoding_state&, const _InternT*, const _InternT*, const _InternT*

&, _ExternT*, _ExternT*, _ExternT*&) const':^M                                                                                                             /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:315: error: expected initializer before '&' t

oken^M                                                                                                                                                     /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:341: error: 'iconv' was not declared in this

scope^M                                                                                                                                                    /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:341: error: '__desc' was not declared in this

scope^M                                                                                                                                                   /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:342: error: there are no arguments to '__icon

v_adaptor' that depend on a template parameter, so a declaration of '__iconv_adaptor' must be available^M                                                  /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:342: error: (if you use '-fpermissive', G++ w

ill accept your code, but allowing the use of an undeclared name is deprecated)^M                                                                          /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:348: error: 'iconv' was not declared in this

scope^M                                                                                                                                                    /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:348: error: '__desc' was not declared in this

scope^M                                                                                                                                                   /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:349: error: there are no arguments to '__icon

v_adaptor' that depend on a template parameter, so a declaration of '__iconv_adaptor' must be available^M                                                  /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In member function 'virtual std::codecvt_bas

e::result std::codecvt<_InternT, _ExternT, __gnu_cxx::encoding_state>::do_unshift(__gnu_cxx::encoding_state&, _ExternT*, _ExternT*, _ExternT*&) const':^M  /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:382: error: expected initializer before '&' t

oken^M                                                                                                                                                     /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:389: error: 'iconv' was not declared in this

scope^M                                                                                                                                                    /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:389: error: '__desc' was not declared in this

scope^M                                                                                                                                                   /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:390: error: there are no arguments to '__icon

v_adaptor' that depend on a template parameter, so a declaration of '__iconv_adaptor' must be available^M                                                  /home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h: In member function 'virtual std::codecvt_bas

e::result std::codecvt<_InternT, _ExternT, __gnu_cxx::encoding_state>::do_in(__gnu_cxx::encoding_state&, const _ExternT*, const _ExternT*, const _ExternT*&, _InternT*, _InternT*, _InternT*&) const':^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:419: error: expected initializer before '&' token^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:445: error: 'iconv' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:445: error: '__desc' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:446: error: there are no arguments to '__iconv_adaptor' that depend on a template parameter, so a declaration of '__iconv_adaptor' must be available^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:452: error: 'iconv' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:452: error: '__desc' was not declared in this scope^M

/home/test/work/cruise/temp/bfin-uclinux/lib/gcc/bfin-uclinux/4.3.4/include/c++/ext/codecvt_specializations.h:453: error: there are no arguments to '__iconv_adaptor' that depend on a template parameter, so a declaration of '__iconv_adaptor' must be available^M

 

FAIL: ext/headers.cc (test for excess errors)

 

 

failed toolchain versio************** Tested toolchain svn info ***************

U    buildscript/BuildToolChain

Updated to revision 3876.

Path: .

URL: svn://10.99.29.20/toolchain/trunk

Repository Root: svn://10.99.29.20/toolchain

Repository UUID: 2adf4935-75e9-4407-93b2-34b21a1880a4

Revision: 3876

Node Kind: directory

Schedule: normal

Last Changed Author: vapier

Last Changed Rev: 3876

Last Changed Date: 2010-02-07 14:01:08 +0800 (Sun, 07 Feb 2010)

n:

 

 

 

 

Follow-ups

 

--- Robin Getz                                               2010-06-05 19:56:13

With the upgrade to 4.3.5 - I now get:

 

libstdc++-4.3.sum:PASS: ext/headers.cc (test for excess errors)

 

Can you confirm?

 

 

--- Vivi Li                                                  2010-07-01 03:02:19

For the latest toolchain test, I still see the same bug with bfin-uclinux and

bfin-linux-uclibc. No such problem on bfin-elf.

 

--- Vivi Li                                                  2010-07-08 04:24:45

I can see following tests fail with similar error info. These three tests don't

exist in gcc4.1 test. They all pass with bfin-elf and fail with

bfin-linux-uclibc/bfin-uclinux.

 

--

FAIL: 17_intro/headers/all.cc (test for excess errors)

FAIL: 17_intro/headers/all_c++200x_compatibility.cc (test for excess errors)

FAIL: 17_intro/headers/all_pedantic_errors.cc (test for excess errors)

--

 

--- Vivi Li                                                  2010-07-08 04:52:02

As iconv.h can't be found, is it related to the locale option?

See

http://blackfin.uclinux.org/gf/project/toolchain/forum/?_forum_action=ForumMessageBrowse&thread_id=33867&action=ForumBrowse

 

ext/headers.cc is different in gcc4.1 and gcc4.3 test.

In 4.1 test, ext/codecvt_specializations.h is not included.

 

--- Stuart Henderson                                         2010-07-15 11:35:50

the test includes the various headers in the ext/ directory, including

codecvt_specializations.h.  This particular header includes iconv.h, which we

delete entirely from the uclinux/linux-uclibc builds, which causes this error.

 

It seems the solution would be to guard codecvt_specializations.h's inclusion

in the test with _GLIBCXX_HAVE_ICONV, however i'm not sure if there's any point

in including this header in these builds at all.

 

fyi:

ext/codecvt_specializations.h includes iconv.h

ext/enc_filebuf.h includes ext/codecvt_specializations.h

 

so can we remove these two headers for these builds?

 

--- Steve Kilbane                                            2010-08-12 08:21:38

Tests have been modified to only include these headers when _GLIBCXX_HAVE_ICONV

is true.

 

--- Vivi Li                                                  2010-08-24 04:49:53

OK now. Close it.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes