Hi. On Mon, Sep 20, 2004 at 03:19:59PM -0700, Ashish Lakhani wrote: > void ALCload(FILE * infile) > { > istream *iptr; > ifstream * ifptr; > int fd = fileno(infile); > ifptr = new ifstream(fd); > iptr = ifptr; > ALCload(iptr); > return; > } > > it used to compile fine with gcc version 2.96 but in new gcc 3.2.3 it > generates following errors [...] You can't create an ifstream from a file descriptor or FILE pointer. This feature has been removed because the C++ standard does not define it since it is inherently system dependent and non-portable. The only constructor ifstream provides is this explicit ifstream ( const char * filename, openmode mode = in ); However, there is a GCC extension available you could use. Just have a look at the ext/stdio_filebuf.h header. Here is an example: http://gcc.gnu.org/ml/gcc-help/2004-02/msg00230.html -- Claudio