The theory says that new releases of RootIO libraries shoud be able to read back old files. Well, sometimes the theory is not true, and I would like we try to list here the non-backwards compatible changes which were made from time to time, and the known bugs.

std::vector<Double32_t>

Prior to ROOT 5.12, the std::vector<Double32_t> were wrongly stored as std::vector<double>. In later release, when reading back std::vector<Double32_t>, ROOT issue a warning because it detects a problem in the size of data, and actually it is reading back wrong values.

The typical runtimes message are :

  • Error in <TBuffer>: object of class vector<Double32_t> read too few bytes: 26 instead of 46

See also http://root.cern.ch/phpBB2/viewtopic.php?t=4406.

  • No labels