Bug 14600 - __gnu_cxx::stdio_sync_filebuf should expose internal FILE*
Summary: __gnu_cxx::stdio_sync_filebuf should expose internal FILE*
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: libstdc++ (show other bugs)
Version: 3.4.0
: P2 enhancement
Target Milestone: 3.4.1
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-03-16 09:45 UTC by Richard B. Kreckel
Modified: 2004-05-31 21:54 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed: 2004-04-07 03:06:59


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Richard B. Kreckel 2004-03-16 09:45:12 UTC
Similar to the __gnu_cxx::stdio_filebuf<>::fd() member function, there should be
a __gnu_cxx::stdio_sync_filebuf::c_file() member function which returns the
underlying FILE*.

With the advent of __gnu_cxx::stdio_sync_filebuf<> that feature becomes needed
for interfacing to good ol' Unix machinery.  A patch was proposed on
<http://gcc.gnu.org/ml/libstdc++/2004-02/msg00379.html>.  It even appears that
consensus had been reached:
<http://gcc.gnu.org/ml/libstdc++/2004-02/msg00189.html>. Due to the trivial
nature of the patch, it should also be considered a candidate for 3.4.x.
Comment 1 Andrew Pinski 2004-04-07 03:06:59 UTC
Confirmed.
Comment 2 Mark Mitchell 2004-05-23 22:13:10 UTC
This is not a regresssion and therefore not a show-stopper for 3.4.1 -- or any
other release.
Comment 3 GCC Commits 2004-05-29 14:41:05 UTC
Subject: Bug 14600

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	bkoz@gcc.gnu.org	2004-05-29 14:40:59

Modified files:
	libstdc++-v3   : ChangeLog 
	libstdc++-v3/config/io: basic_file_stdio.cc basic_file_stdio.h 
	libstdc++-v3/include/ext: stdio_filebuf.h stdio_sync_filebuf.h 

Log message:
	2004-05-29  Richard B. Kreckel  <Richard.Kreckel@Framatome-ANP.com>
	Benjamin Kosnik  <bkoz@redhat.com>
	
	PR libstdc++/14600
	* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
	* include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
	* config/io/basic_file_stdio.cc (__basic_file::file): New.
	* config/io/basic_file_stdio.h: Define.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/ChangeLog.diff?cvsroot=gcc&r1=1.2498&r2=1.2499
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/config/io/basic_file_stdio.cc.diff?cvsroot=gcc&r1=1.31&r2=1.32
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/config/io/basic_file_stdio.h.diff?cvsroot=gcc&r1=1.19&r2=1.20
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/include/ext/stdio_filebuf.h.diff?cvsroot=gcc&r1=1.17&r2=1.18
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/include/ext/stdio_sync_filebuf.h.diff?cvsroot=gcc&r1=1.8&r2=1.9

Comment 4 Andrew Pinski 2004-05-30 13:58:21 UTC
Fixed.
Comment 5 GCC Commits 2004-05-31 21:19:04 UTC
Subject: Bug 14600

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	bkoz@gcc.gnu.org	2004-05-31 21:18:55

Modified files:
	libstdc++-v3   : ChangeLog configure configure.ac 
	libstdc++-v3/config: linker-map.gnu 
	libstdc++-v3/config/io: basic_file_stdio.cc basic_file_stdio.h 
	libstdc++-v3/include/ext: stdio_filebuf.h stdio_sync_filebuf.h 
	libstdc++-v3/testsuite: testsuite_abi.cc 

Log message:
	2004-05-31  Benjamin Kosnik  <bkoz@redhat.com>
	
	* config/linker-map.gnu (GLIBCXX_3.4.1): Add.
	* testsuite/testsuite_abi.cc: Same.
	* configure.ac (libtool_VERSION): Bump to 6:1:0.
	* configure: Regenerate.
	* aclocal.m4: Regenerate.
	
	2004-05-31  Richard B. Kreckel  <Richard.Kreckel@Framatome-ANP.com>
	Benjamin Kosnik  <bkoz@redhat.com>
	
	PR libstdc++/14600
	* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
	* include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
	* config/io/basic_file_stdio.cc (__basic_file::file): New.
	* config/io/basic_file_stdio.h: Define.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.2224.2.120&r2=1.2224.2.121
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/configure.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.373.4.10&r2=1.373.4.11
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/configure.ac.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.14.4.1&r2=1.14.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/config/linker-map.gnu.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.52.4.4&r2=1.52.4.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/config/io/basic_file_stdio.cc.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.25.4.5&r2=1.25.4.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/config/io/basic_file_stdio.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.16.4.1&r2=1.16.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/include/ext/stdio_filebuf.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.16.4.1&r2=1.16.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/include/ext/stdio_sync_filebuf.h.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.7.4.1&r2=1.7.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libstdc++-v3/testsuite/testsuite_abi.cc.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.2.2.2&r2=1.2.2.3