Florian Weimer writes: > * David Gressett: > > > It does work with the GNAT GPL 2005 that I have on my XP box at home. A > > search of the gcc mailing list archive didn't turn up much, but there > > was one message which indicated that there was a license problem with > > the addr2line source code that the Ada Core people were using. > > > > If a working libaddr2line isn't going to show up anytime soon, the > > comments in g-trasym.ads should be modified appropriately. > > libaddr2line used to be a proprietary library distributed by AdaCore > only. (I'm not sure if it was intentionally proprietary.) > > IIRC, libaddr2line never was suitable for tasking. If you can get a > copy of the ALT packages of GNAT, you'll find an implementation of the > client code in the GNAT run-time library which bypasses these problems > by invoking /usr/bin/addr2line. > > Java implementations needs to solve pretty much the same problem. How > is it done in GCJ?
Every Java class has full reflection data for all of its methods. Given the address of a method, therefore, it's a straightforward reverse lookup to get the name. Andrew.