Hi Rene, > I am sorry, but your question "Is this a bug or a feature"? > is inappropriate. What you observe is the right behaviour > and it must be so. Even if your class is empty, we have to write > to the file at least the version number of the class. I don't get the point... because there are two things I don't understand: a) What I expect in both cases to be written to a file is: - the contents of C (nothing else) From this you calculate a checksum, because everything else doesn't have any meaning for I/O. So in a first step I don't understand why I get this warning at all... b) A warning is a nice feature, but to suggest to increase the version number from 0 to 1 is somehow nonsense, isn't it? 0 has a special meaning (no I/O) so switching on the I/O cannot be a solution at all. So I don't get the point. What does this warning mean? Is it a real warning? Or is it no warning at all. Should I follow the suggestion which I don't want? This is somehow confusing isn't it? Let me summurize: I would expect that the Checksum is only calculated from the parts of the classes which are streamed to the file. And I don't expect root to give 'strange' suggestions - which don't make sense, do they? Thomas. >>Dear all, >> >>I had a construction like this: >> >>class A : public TObject { ClassDef(A, 0) } >>class B : public A { ClassDef(B, 0) } >>class C : public B { ClassDef(C, 1) } >> >>Now I have changed it to >>class A : public TObject { ClassDef(A, 0) } >>class B { ClassDef(B, 0) } >>class C : public A, public B { ClassDef(C, 1) } >> >>In both cases I call A::Class()->IgnoreTObjectStreamer(); >> >>When loading old files storing C I get told, that class B has changed - >>which is correct but should not matter, because it was not stored >>anyhow, but than I get asked to increase the version number from 0 to 1 >>- which seems to be nonsense. >> >>Is this a bug or a feature? >> >>Thanks, >>Thomas. >> > >
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:05 MET