Valeri,
I have only the <fstream> include. When I replace this with
#include "Riostream.h", I do not get errors (3.05/3 or 3.05/2)
but I get a bunch of warnings (shown at end of this file) Here
is a little sample program
//#include <fstream.h> // <-- compiled in 3.05/2, not 3.05/3
#include "Riostream.h" // <-- compiled in 3.05/2 and 3.05/3
#include <stdlib.h>
#include "TString.h"
class Example
{
public:
Example() {fFileName=fStr=0;}
Example(const char *fname);
~Example();
private:
TString *fFileName;
TString *fStr;
};
Example::Example(const char *fname)
{
fFileName = new TString(fname);
fstream fin(fFileName->Data(),ios::in);
if(fin.good())
{
char *fs= new char[655360];
cout << fFileName << " is open for reading" << endl;
fin.read(fs,655360);
fStr=new TString(fs);
delete [] fs;
fin.close();
}
else
cout << "Cannot open " << fFileName << " for reading" << endl;
}
Example::~Example()
{
if (fFileName) delete fFileName;
if (fStr) delete fStr;
}
c:\program files\microsoft visual studio\vc98\include\istream(547) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\ostream(197) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\ostream(193) :
while compiling class-template member function 'class
std::basic_ostream<char,struct std::char_traits<char> > &__thiscall
std::basic_ostream<char,struct std::char_traits<ch
ar> >::operator <<(const void *)'
c:\program files\microsoft visual studio\vc98\include\ostream(234) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\ostream(229) :
while compiling class-template member function 'class
std::basic_ostream<char,struct std::char_traits<char> > &__thiscall
std::basic_ostream<char,struct std::char_traits<ch
ar> >::put(char)'
c:\program files\microsoft visual studio\vc98\include\ostream(234) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\ostream(229) :
while compiling class-template member function 'class
std::basic_ostream<unsigned short,struct std::char_traits<unsigned short> >
&__thiscall std::basic_ostream<unsigned sh
ort,struct std::char_traits<unsigned short> >::put(unsigned short)'
c:\program files\microsoft visual studio\vc98\include\istream(336) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\istream(332) :
while compiling class-template member function 'class
std::basic_istream<char,struct std::char_traits<char> > &__thiscall
std::basic_istream<char,struct std::char_traits<ch
ar> >::read(char *,int)'
c:\program files\microsoft visual studio\vc98\include\istream(46) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\istream(41) :
while compiling class-template member function 'bool __thiscall
std::basic_istream<char,struct std::char_traits<char> >::ipfx(bool)'
c:\program files\microsoft visual studio\vc98\include\istream(46) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\istream(41) :
while compiling class-template member function 'bool __thiscall
std::basic_istream<unsigned short,struct std::char_traits<unsigned short>
>::ipfx(bool)'
c:\program files\microsoft visual studio\vc98\include\xstring(525) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\xstring(521) :
while compiling class-template member function 'void __thiscall
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::_Copy(unsigned int)'
c:\program files\microsoft visual studio\vc98\include\xstring(525) : warning
C4530: C++ exception handler used, but unwind semantics are not enabled.
Specify -GX
c:\program files\microsoft visual studio\vc98\include\xstring(521) :
while compiling class-template member function 'void __thiscall
std::basic_string<unsigned short,struct std::char_traits<unsigned
short>,class std::allocator<unsigned short
> >::_Copy(unsigned int)'
temporary.obj - 0 error(s), 9 warning(s)
> -----Original Message-----
> From: Faine, Valeri [mailto:fine@bnl.gov]
> Sent: Wednesday, March 12, 2003 12:28 PM
> To: 'Ed Oltman'; 'Roottalk@Pcroot. Cern. Ch'
> Subject: RE: [ROOT] Compile errors using root 3.05/3 with VC++
>
>
> He Ed,
> Can you check whether you have any <iostream> include files in your
> code?
> That should be replaced with #include "Riostream.h" from the
> $ROOTSYS/include
>
> Hope this helps,
> Valeri
>
>
> > -----Original Message-----
> > From: owner-roottalk@pcroot.cern.ch
> [mailto:owner-roottalk@pcroot.cern.ch]
> > On Behalf Of Ed Oltman
> > Sent: Wednesday, March 12, 2003 1:01 PM
> > To: Roottalk@Pcroot. Cern. Ch
> > Subject: [ROOT] Compile errors using root 3.05/3 with VC++
> >
> > Hello,
> >
> >
> > I have code that uses #include <fstream.h> that compiled and ran fine
> with
> > version 3.03/9 and 3.05/2 but produced compile errors with 3.05/3
> under
> > visual c++ version 6 (win2K):
> >
> > c:\root\include\riosfwd.h(25) : error C2874: using-declaration causes
> a
> > multiple declaration of 'istream'
> > c:\program files\microsoft visual
> studio\vc98\include\iosfwd(256)
> > :
> > see declaration of 'istream'
> > c:\root\include\riosfwd.h(26) : error C2874: using-declaration causes
> a
> > multiple declaration of 'ostream'
> > c:\program files\microsoft visual
> studio\vc98\include\iosfwd(257)
> > :
> > see declaration of 'ostream'
> > c:\root\include\riosfwd.h(27) : error C2874: using-declaration causes
> a
> > multiple declaration of 'fstream'
> > c:\program files\microsoft visual
> studio\vc98\include\iosfwd(270)
> > :
> > see declaration of 'fstream'
> > c:\root\include\riosfwd.h(28) : error C2874: using-declaration causes
> a
> > multiple declaration of 'ifstream'
> > c:\program files\microsoft visual
> studio\vc98\include\iosfwd(268)
> > :
> > see declaration of 'ifstream'
> > c:\root\include\riosfwd.h(29) : error C2874: using-declaration causes
> a
> > multiple declaration of 'ofstream'
> > c:\program files\microsoft visual
> studio\vc98\include\iosfwd(269)
> > :
> > see declaration of 'ofstream'
> >
> > The include section of the file is:
> >
> > #pragma warning (disable : 4800)
> > #include <fstream.h>
> > #include <stdlib.h>
> >
> > // ROOT includes
> > #include "TString.h"
> > #include "TSystem.h"
> >
> > //project include files
> > #include "CIniFile.h"
> >
> > and CIniFile.h does not have any included. Any idea of a solution?
> > Thanks,
> >
> > Ed Oltman
>
>
>
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:10 MET