CINT dictionary wrong type

From: Margar Simonyan <margar.simonyan_at_gmail.com>
Date: Fri, 6 Jan 2012 12:18:26 +0100


Hello

I have a set of functions which compiled with ACLIC using ROOT 5.26 and before, but fails starting from 5.28 and above. Seems like CINT 5.17 to 5.18 migration issue.

The error looks like

func_cpp_ACLiC_dict.cxx:72: error: no matching function for call to ‘func(int**, Int_t, const TString&, Int_t)’

and indeed there is no such a function. The code structure is

#ifndef __CINT__
#include "XYZ.h"

void func(TH1 * histo, const TString fileName, const Int_t precision = 3);
void func(TGraph * graph, const TString fileName, const Int_t precision = 3);
void func(TGraphErrors * graph, const TString fileName, const Int_t
precision = 3);
void func(TH1 ** array, const Int_t n, const TString fileName, const Int_t precision = 3);
void func(TGraph ** array, const Int_t n, const TString fileName, const Int_t precision = 3);
void func(TGraphErrors ** array, const Int_t n, const TString fileName, const Int_t precision = 3);
#endif

void func(TH1 * histo, const TString fileName, const Int_t precision) { function definitions ....
}

I tried to replace **array by *array[] but it didn't help. Any suggestion?

Thanks,

     Margar



 Dr Margar Simonyan,  post-doctoral researcher  Niels Bohr Institute, Copenhagen University
Received on Fri Jan 06 2012 - 12:19:05 CET

This archive was generated by hypermail 2.2.0 : Fri Jan 06 2012 - 17:50:01 CET