Re: <ftream> errors under g++ 3.2.2

From: David Leimbach <leimy2k_at_mac.com>
Date: Sun, 29 Jun 2003 13:41:35 -0500
On Sunday, June 29, 2003, at 1:19PM, Allan Bowhill wrote:

> I recently updated one of my machines to -current to adapt some code to
> build under the new version of gcc (3.2.2). However, file IO using 
> <fstream>
> gives error messages about implicit typenames being deprecated, and I 
> can't
> for the life of me figure out what to do my code to make the compiler 
> happy.
> Has anyone encountered this?
>
> Below is a small example illustrating the problem. The source below 
> should
> compile fine on a previous version of g++, as in -stable.  However, it 
> will
> not compile on -current using g++ 3.3.2. Does anyone know what to do 
> to the
> simple source below to get it to compile happily under -current?
>
> (yes, I have checked gnu gcc's mailing list and FAQ/docs. I can't find 
> an
> adequate explanation for it. I suspect it has something to do with 
> stricter
> conformance to the finalized C++ standard, but since I am still a 
> novice any
> explanation by gcc developers would probably have slipped by me)
>

Your code below is fine... there is something wrong with the C++ 
headers used
in the FreeBSD tree.  I haven't seen this on other platforms.  I don't 
think that those with commit access generally do a lot with C++ 
[possibly a bad assumption, but I have
a hard time believing the problem would have lived so long if this 
weren't the case]

Dave



> ---------
>
> #include <fstream>
>
> int main()
> {
>     std::ofstream afile("test.txt");
>     afile << "some data";
> }
>
> ----------
>
>> gcc -v
> Using built-in specs.
> Configured with: FreeBSD/i386 system compiler
> Thread model: posix
> gcc version 3.2.2 [FreeBSD] 20030205 (release)
>
> ---------
>
>> g++ test.cc
> In file included from test.cc:1:
> /usr/include/g++/fstream:304: warning: `typename 
> std::basic_filebuf<_CharT,
>    _Traits>::int_type' is implicitly a typename
> /usr/include/g++/fstream:304: warning: implicit typename is deprecated,
> please
>    see the documentation for details
> /usr/include/g++/fstream:309: warning: `typename 
> std::basic_filebuf<_CharT,
>    _Traits>::int_type' is implicitly a typename
> /usr/include/g++/fstream:309: warning: implicit typename is deprecated,
> please
>    see the documentation for details
>
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to 
> "freebsd-current-unsubscribe_at_freebsd.org"
Received on Sun Jun 29 2003 - 09:41:41 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:13 UTC