This is the mail archive of the sourcenav@sources.redhat.com mailing list for the Source Navigator.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

thanks


I have been looking for a tool, cheap or free, that just gives the call tree in a proper manner.
Thank you to have done it in a marvelous package full of easy to use features.

Let me suggest one little thing. Suppose you have the two functions :

void dumfunc2()
{
  dumclass *doubleinst; // should appear with another class in ref
  doubleinst=new dumclass;
  doubleinst->doit();
  delete doubleinst;
}
void dumfunc3(dumclass *doubleinst)
{
  doubleinst->doit();
}

Your analyse forget to tell that new and delete are called from the first one

(dump main.to)

# dumfunc2 fu # dumclass cl r 000064 D:/Devel/LIB_TOOL/CallGraf.2/main.cxx {} {}
# dumfunc2 fu # dumclass cl r 000065 D:/Devel/LIB_TOOL/CallGraf.2/main.cxx {} {}
# dumfunc2 fu dumclass doit mi r 000066 D:/Devel/LIB_TOOL/CallGraf.2/main.cxx {} {}
# dumfunc3 fu # dumclass cl r 000069 D:/Devel/LIB_TOOL/CallGraf.2/main.cxx {dumclass *} {}
# dumfunc3 fu dumclass doit mi r 000071 D:/Devel/LIB_TOOL/CallGraf.2/main.cxx {dumclass *} {}


so the two functions seems to be the same from the caller/called point of view.


There is also another point you may work on : sourcenavigator forgets base methods :

class a
{
public:
  doit();
};
class b:class a
{
public:
  call() {doit();}
}

dump try.to :

b call mi # doit ud r 000009 C:/zdrop/try.cxx {} {}

doit() is not undefined but a method of the base class "a".






Thanks anyway and please continue to support it !


-- 
Riccardo Cohen

Articque
Les Roches
37230 Fondettes
France
email = rcohen@dial.oleane.com
web = http://www.articque.com
tel: +33 02 47 49 90 49
fax: +33 02 47 49 91 49


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]