"foo" + TString("bar") fails: can not call private or protected function TImage::TImage(char*)

From: Nick West <n.west1_at_physics.ox.ac.uk>
Date: Mon, 10 Aug 2009 14:48:15 +0100


Dear RootTalk,

First, forgive this multiple posting, but I sent this last Friday and have not yet seen it posted to
the list so I am sending this again.

We in MINOS have come across a CINT parsing problem that can be demonstrated with the following lines:-

  #include "TImage.h"
  "foo" + TString("bar")

which fails:-

  Error: can not call private or protected function (tmpfile):1:  

/data/minos/minos/software/OO/minos_packs_sl4/root_svn_1/root/lib/libGra
f.so -1 TImage TImage::TImage(const char*);   Calling : TImage::TImage(char*);
  Match rank: file line signature
    ffffffff
/data/minos/minos/software/OO/minos_packs_sl4/root_svn_1/root/lib/libGra
f.so -1 TImage TImage::TImage(UInt_t,UInt_t);

    ffffffff
/data/minos/minos/software/OO/minos_packs_sl4/root_svn_1/root/lib/libGra
f.so -1 TImage TImage::TImage(const TImage&);

    ffffffff
/data/minos/minos/software/OO/minos_packs_sl4/root_svn_1/root/lib/libGra
f.so -1 TImage TImage::TImage();

This is with the current ROOT head, gcc version 3.4.6 Scientific Linux SL release 4.8.

As recently as July 28 the code correctly produced:-

  (class TString)"foobar"

and I think the problem commit must have occurred within a day as my build on the 29th failed, but for a variety of reasons I did not follow it up until the last few days.

Cheers,

Nick West Received on Mon Aug 10 2009 - 15:48:19 CEST

This archive was generated by hypermail 2.2.0 : Mon Aug 10 2009 - 17:50:02 CEST