[jira] Commented: (STDCXX-333) std::wfilebuf extracts more than 1 character from a 1 byte file

2007-02-19 Thread Mark Brown (JIRA)

[ 
https://issues.apache.org/jira/browse/STDCXX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12474266
 ] 

Mark Brown commented on STDCXX-333:
---

I tried to see if I could reproduce this problem on Cygwin. My version of 
Cygwin doesn't have any locales so I tried to generate the en_US.UTF-8 locale 
using the stdcxx localedef program. I got this error:

nls$ ../bin/localedef -c -f /home/mbrown/stdcxx/etc/nls/charmaps/UTF-8 -i 
/home/mbrown/stdcxx/etc/nls/src/en_US en_US.UTF-8
call to system LC_ALL=C /usr/bin/locale -a /tmp/tdf4.0 2/dev/null: No such 
file or directory
Hangup


 std::wfilebuf extracts more than 1 character from a 1 byte file
 ---

 Key: STDCXX-333
 URL: https://issues.apache.org/jira/browse/STDCXX-333
 Project: C++ Standard Library
  Issue Type: Bug
  Components: 27. Input/Output
Affects Versions: 4.1.3
 Environment: gcc 3.2.3 on Linux
Reporter: Mark Brown

 I get an an abort when I run the following program on Linux.
 #include cassert
 #include fstream
 #include iostream
 int main ()
 {
 {
 std::filebuf fb;
 fb.open (file, std::ios::out);
 fb.sputc ('a');
 }
 std::wfilebuf fb;
 fb.pubimbue (std::locale (en_US.UTF-8));
 fb.open (file, std::ios::in);
 const int c[] = { fb.sbumpc (), fb.sgetc () };
 std::cout  c [0]  ' '  c [1]  std::endl;
 assert (L'a' == c [0]);
 assert (std::wfilebuf::traits_type::eof () == c [1]);
 }
 test: test.cpp:21: int main(): Assertion `std::wfilebuf::traits_type::eof () 
 == c [1]' failed.
 Aborted

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more than 1 character from a 1 byte file

2007-02-19 Thread Martin Sebor

Mark Brown (JIRA) wrote:
[ https://issues.apache.org/jira/browse/STDCXX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12474266 ] 


Mark Brown commented on STDCXX-333:
---

I tried to see if I could reproduce this problem on Cygwin. My version of 
Cygwin doesn't have any locales so I tried to generate the en_US.UTF-8 locale 
using the stdcxx localedef program. I got this error:

nls$ ../bin/localedef -c -f /home/mbrown/stdcxx/etc/nls/charmaps/UTF-8 -i 
/home/mbrown/stdcxx/etc/nls/src/en_US en_US.UTF-8
call to system LC_ALL=C /usr/bin/locale -a /tmp/tdf4.0 2/dev/null: No such 
file or directory
Hangup


This looks like an unrelated problem. Could you open a new issue for it?

Thanks
Martin





std::wfilebuf extracts more than 1 character from a 1 byte file
---

Key: STDCXX-333
URL: https://issues.apache.org/jira/browse/STDCXX-333
Project: C++ Standard Library
 Issue Type: Bug
 Components: 27. Input/Output
   Affects Versions: 4.1.3
Environment: gcc 3.2.3 on Linux
   Reporter: Mark Brown

I get an an abort when I run the following program on Linux.
#include cassert
#include fstream
#include iostream
int main ()
{
{
std::filebuf fb;
fb.open (file, std::ios::out);
fb.sputc ('a');
}
std::wfilebuf fb;
fb.pubimbue (std::locale (en_US.UTF-8));
fb.open (file, std::ios::in);
const int c[] = { fb.sbumpc (), fb.sgetc () };
std::cout  c [0]  ' '  c [1]  std::endl;
assert (L'a' == c [0]);
assert (std::wfilebuf::traits_type::eof () == c [1]);
}
test: test.cpp:21: int main(): Assertion `std::wfilebuf::traits_type::eof () == 
c [1]' failed.
Aborted







Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more than 1 character from a 1 byte file

2007-02-19 Thread Mark Brown
 -Original Message-
 From: [EMAIL PROTECTED]
 Sent: Mon, 19 Feb 2007 13:35:19 -0700
 To: stdcxx-dev@incubator.apache.org
 Subject: Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more
 than 1 character from a 1 byte file
 
 Mark Brown (JIRA) wrote:
 [
https://issues.apache.org/jira/browse/STDCXX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12474266
 ]
 
 Mark Brown commented on STDCXX-333:
 ---
 
 I tried to see if I could reproduce this problem on Cygwin. My version
 of Cygwin doesn't have any locales so I tried to generate the
 en_US.UTF-8 locale using the stdcxx localedef program. I got this error:
 
 nls$ ../bin/localedef -c -f /home/mbrown/stdcxx/etc/nls/charmaps/UTF-8
 -i /home/mbrown/stdcxx/etc/nls/src/en_US en_US.UTF-8
 call to system LC_ALL=C /usr/bin/locale -a /tmp/tdf4.0 2/dev/null: No
 such file or directory
 Hangup
 
 This looks like an unrelated problem. Could you open a new issue for it?

Sure. Here it is: https://issues.apache.org/jira/browse/STDCXX-340.

Mark

 
 Thanks
 Martin
 
 
 
 std::wfilebuf extracts more than 1 character from a 1 byte file
 ---
 
 Key: STDCXX-333
 URL: https://issues.apache.org/jira/browse/STDCXX-333
 Project: C++ Standard Library
  Issue Type: Bug
  Components: 27. Input/Output
Affects Versions: 4.1.3
 Environment: gcc 3.2.3 on Linux
Reporter: Mark Brown
 
 I get an an abort when I run the following program on Linux.
 #include cassert
 #include fstream
 #include iostream
 int main ()
 {
 {
 std::filebuf fb;
 fb.open (file, std::ios::out);
 fb.sputc ('a');
 }
 std::wfilebuf fb;
 fb.pubimbue (std::locale (en_US.UTF-8));
 fb.open (file, std::ios::in);
 const int c[] = { fb.sbumpc (), fb.sgetc () };
 std::cout  c [0]  ' '  c [1]  std::endl;
 assert (L'a' == c [0]);
 assert (std::wfilebuf::traits_type::eof () == c [1]);
 }
 test: test.cpp:21: int main(): Assertion
 `std::wfilebuf::traits_type::eof () == c [1]' failed.
 Aborted
 


Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more than 1 character from a 1 byte file

2007-02-19 Thread Mark Brown
I decided to look into this as an exercise in stdcxx debugging and
managed to figure out how to get around the error and generate the
en_US.UTF-8 locale. The change I made to make it work is in the
attached patch file. Let me know if this is the correct format
for patches or if you prefer something else.

Incidentally, the original test program for stdcxx-333 runs fine
on Cygwin with the en_US.UTF-8 locale so the error must be unique
to Linux.

-- Mark


 -Original Message-
 From: [EMAIL PROTECTED]
 Sent: Mon, 19 Feb 2007 12:51:24 -0800
 To: stdcxx-dev@incubator.apache.org, stdcxx-dev@incubator.apache.org
 Subject: Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more
 than 1 character from a 1 byte file
 
 -Original Message-
 From: [EMAIL PROTECTED]
 Sent: Mon, 19 Feb 2007 13:35:19 -0700
 To: stdcxx-dev@incubator.apache.org
 Subject: Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more
 than 1 character from a 1 byte file
 
 Mark Brown (JIRA) wrote:
 [
 https://issues.apache.org/jira/browse/STDCXX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12474266
 ]
 
 Mark Brown commented on STDCXX-333:
 ---
 
 I tried to see if I could reproduce this problem on Cygwin. My version
 of Cygwin doesn't have any locales so I tried to generate the
 en_US.UTF-8 locale using the stdcxx localedef program. I got this
 error:
 
 nls$ ../bin/localedef -c -f /home/mbrown/stdcxx/etc/nls/charmaps/UTF-8
 -i /home/mbrown/stdcxx/etc/nls/src/en_US en_US.UTF-8
 call to system LC_ALL=C /usr/bin/locale -a /tmp/tdf4.0 2/dev/null: No
 such file or directory
 Hangup
 
 This looks like an unrelated problem. Could you open a new issue for it?
 
 Sure. Here it is: https://issues.apache.org/jira/browse/STDCXX-340.
 
 Mark
 
 
 Thanks
 Martin
 
 
 
 std::wfilebuf extracts more than 1 character from a 1 byte file
 ---
 
 Key: STDCXX-333
 URL: https://issues.apache.org/jira/browse/STDCXX-333
 Project: C++ Standard Library
  Issue Type: Bug
  Components: 27. Input/Output
Affects Versions: 4.1.3
 Environment: gcc 3.2.3 on Linux
Reporter: Mark Brown
 
 I get an an abort when I run the following program on Linux.
 #include cassert
 #include fstream
 #include iostream
 int main ()
 {
 {
 std::filebuf fb;
 fb.open (file, std::ios::out);
 fb.sputc ('a');
 }
 std::wfilebuf fb;
 fb.pubimbue (std::locale (en_US.UTF-8));
 fb.open (file, std::ios::in);
 const int c[] = { fb.sbumpc (), fb.sgetc () };
 std::cout  c [0]  ' '  c [1]  std::endl;
 assert (L'a' == c [0]);
 assert (std::wfilebuf::traits_type::eof () == c [1]);
 }
 test: test.cpp:21: int main(): Assertion
 `std::wfilebuf::traits_type::eof () == c [1]' failed.
 Aborted
 


Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more than 1 character from a 1 byte file

2007-02-19 Thread Martin Sebor

Mark Brown wrote:

I decided to look into this as an exercise in stdcxx debugging and
managed to figure out how to get around the error and generate the
en_US.UTF-8 locale.


Great! Thanks for the detective work!


The change I made to make it work is in the
attached patch file. Let me know if this is the correct format
for patches or if you prefer something else.


I don't see the patch. Did you forget to attach it? (Sometimes the
attachments end up getting stripped by ezmlm even though they
shouldn't). If it's small, you might want to paste it directly into
your mail. Otherwise you might need to post it somewhere (e.g., on
your web page or in the issue itself).



Incidentally, the original test program for stdcxx-333 runs fine
on Cygwin with the en_US.UTF-8 locale so the error must be unique
to Linux.


Hmm. Very odd.

Martin



-- Mark



-Original Message-
From: [EMAIL PROTECTED]
Sent: Mon, 19 Feb 2007 12:51:24 -0800
To: stdcxx-dev@incubator.apache.org, stdcxx-dev@incubator.apache.org
Subject: Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more
than 1 character from a 1 byte file


-Original Message-
From: [EMAIL PROTECTED]
Sent: Mon, 19 Feb 2007 13:35:19 -0700
To: stdcxx-dev@incubator.apache.org
Subject: Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more
than 1 character from a 1 byte file

Mark Brown (JIRA) wrote:

[

https://issues.apache.org/jira/browse/STDCXX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12474266

]

Mark Brown commented on STDCXX-333:
---

I tried to see if I could reproduce this problem on Cygwin. My version
of Cygwin doesn't have any locales so I tried to generate the
en_US.UTF-8 locale using the stdcxx localedef program. I got this
error:

nls$ ../bin/localedef -c -f /home/mbrown/stdcxx/etc/nls/charmaps/UTF-8
-i /home/mbrown/stdcxx/etc/nls/src/en_US en_US.UTF-8
call to system LC_ALL=C /usr/bin/locale -a /tmp/tdf4.0 2/dev/null: No
such file or directory
Hangup

This looks like an unrelated problem. Could you open a new issue for it?

Sure. Here it is: https://issues.apache.org/jira/browse/STDCXX-340.

Mark


Thanks
Martin




std::wfilebuf extracts more than 1 character from a 1 byte file
---

Key: STDCXX-333
URL: https://issues.apache.org/jira/browse/STDCXX-333
Project: C++ Standard Library
 Issue Type: Bug
 Components: 27. Input/Output
   Affects Versions: 4.1.3
Environment: gcc 3.2.3 on Linux
   Reporter: Mark Brown

I get an an abort when I run the following program on Linux.
#include cassert
#include fstream
#include iostream
int main ()
{
{
std::filebuf fb;
fb.open (file, std::ios::out);
fb.sputc ('a');
}
std::wfilebuf fb;
fb.pubimbue (std::locale (en_US.UTF-8));
fb.open (file, std::ios::in);
const int c[] = { fb.sbumpc (), fb.sgetc () };
std::cout  c [0]  ' '  c [1]  std::endl;
assert (L'a' == c [0]);
assert (std::wfilebuf::traits_type::eof () == c [1]);
}
test: test.cpp:21: int main(): Assertion
`std::wfilebuf::traits_type::eof () == c [1]' failed.
Aborted





Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more than 1 character from a 1 byte file

2007-02-19 Thread Martin Sebor

Martin Sebor wrote:

Mark Brown wrote:

I decided to look into this as an exercise in stdcxx debugging and
managed to figure out how to get around the error and generate the
en_US.UTF-8 locale.


Great! Thanks for the detective work!


The change I made to make it work is in the
attached patch file. Let me know if this is the correct format
for patches or if you prefer something else.


I should have mentioned: when posting patches to the list please
start the subject line with the string [PATCH] to make it stand
out. It's also good to give the email a descriptive title, or
change it to one when following up on an unrelated topic (as in
this case :)

Read the section below for more on how to submit patches:
http://incubator.apache.org/stdcxx/bugs.html#patches

Martin



I don't see the patch. Did you forget to attach it? (Sometimes the
attachments end up getting stripped by ezmlm even though they
shouldn't). If it's small, you might want to paste it directly into
your mail. Otherwise you might need to post it somewhere (e.g., on
your web page or in the issue itself).



Incidentally, the original test program for stdcxx-333 runs fine
on Cygwin with the en_US.UTF-8 locale so the error must be unique
to Linux.


Hmm. Very odd.

Martin



-- Mark



-Original Message-
From: [EMAIL PROTECTED]
Sent: Mon, 19 Feb 2007 12:51:24 -0800
To: stdcxx-dev@incubator.apache.org, stdcxx-dev@incubator.apache.org
Subject: Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more
than 1 character from a 1 byte file


-Original Message-
From: [EMAIL PROTECTED]
Sent: Mon, 19 Feb 2007 13:35:19 -0700
To: stdcxx-dev@incubator.apache.org
Subject: Re: [jira] Commented: (STDCXX-333) std::wfilebuf extracts more
than 1 character from a 1 byte file

Mark Brown (JIRA) wrote:

[
https://issues.apache.org/jira/browse/STDCXX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12474266 


]

Mark Brown commented on STDCXX-333:
---

I tried to see if I could reproduce this problem on Cygwin. My version
of Cygwin doesn't have any locales so I tried to generate the
en_US.UTF-8 locale using the stdcxx localedef program. I got this
error:

nls$ ../bin/localedef -c -f /home/mbrown/stdcxx/etc/nls/charmaps/UTF-8
-i /home/mbrown/stdcxx/etc/nls/src/en_US en_US.UTF-8
call to system LC_ALL=C /usr/bin/locale -a /tmp/tdf4.0 
2/dev/null: No

such file or directory
Hangup
This looks like an unrelated problem. Could you open a new issue for 
it?

Sure. Here it is: https://issues.apache.org/jira/browse/STDCXX-340.

Mark


Thanks
Martin




std::wfilebuf extracts more than 1 character from a 1 byte file
---

Key: STDCXX-333
URL: https://issues.apache.org/jira/browse/STDCXX-333
Project: C++ Standard Library
 Issue Type: Bug
 Components: 27. Input/Output
   Affects Versions: 4.1.3
Environment: gcc 3.2.3 on Linux
   Reporter: Mark Brown

I get an an abort when I run the following program on Linux.
#include cassert
#include fstream
#include iostream
int main ()
{
{
std::filebuf fb;
fb.open (file, std::ios::out);
fb.sputc ('a');
}
std::wfilebuf fb;
fb.pubimbue (std::locale (en_US.UTF-8));
fb.open (file, std::ios::in);
const int c[] = { fb.sbumpc (), fb.sgetc () };
std::cout  c [0]  ' '  c [1]  std::endl;
assert (L'a' == c [0]);
assert (std::wfilebuf::traits_type::eof () == c [1]);
}
test: test.cpp:21: int main(): Assertion
`std::wfilebuf::traits_type::eof () == c [1]' failed.
Aborted










[jira] Commented: (STDCXX-333) std::wfilebuf extracts more than 1 character from a 1 byte file

2007-02-02 Thread Martin Sebor (JIRA)

[ 
https://issues.apache.org/jira/browse/STDCXX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12469901
 ] 

Martin Sebor commented on STDCXX-333:
-

How odd. I can reproduce this but only intermittently and with different 
results:

$ while [ $? -eq 0 ]; do ./t; done; true; while [ $? -eq 0 ]; do ./t; done
97 -1
97 -1
97 -1
97 -1
97 8
t: t.cpp:21: int main(): Assertion `std::wfilebuf::traits_type::eof () == c 
[1]' failed.
Aborted
97 -1
97 -1
97 -1
97 -1
97 -1
97 -1
97 104
: t.cpp:21: int main(): Assertion `std::wfilebuf::traits_type::eof () == c [1]' 
failed.
Aborted


 std::wfilebuf extracts more than 1 character from a 1 byte file
 ---

 Key: STDCXX-333
 URL: https://issues.apache.org/jira/browse/STDCXX-333
 Project: C++ Standard Library
  Issue Type: Bug
  Components: 27. Input/Output
Affects Versions: 4.1.3
 Environment: gcc 3.2.3 on Linux
Reporter: Mark Brown

 I get an an abort when I run the following program on Linux.
 #include cassert
 #include fstream
 #include iostream
 int main ()
 {
 {
 std::filebuf fb;
 fb.open (file, std::ios::out);
 fb.sputc ('a');
 }
 std::wfilebuf fb;
 fb.pubimbue (std::locale (en_US.UTF-8));
 fb.open (file, std::ios::in);
 const int c[] = { fb.sbumpc (), fb.sgetc () };
 std::cout  c [0]  ' '  c [1]  std::endl;
 assert (L'a' == c [0]);
 assert (std::wfilebuf::traits_type::eof () == c [1]);
 }
 test: test.cpp:21: int main(): Assertion `std::wfilebuf::traits_type::eof () 
 == c [1]' failed.
 Aborted

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.