Bugs item #2680727, was opened at 2009-03-10 16:56
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=103382&aid=2680727&group_id=3382
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Tools
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Brian Scearce (blscearce)
Assigned to: Nobody/Anonymous (nobody)
Summary: geninfo doesn't handle interior inlined functions nicely
Initial Comment:
Compiling the following source for coverage:
main()
{
inline void func() {
printf("howdy\n");
}
func();
foo();
}
foo(void)
{
inline void func() {
printf("in in\n");
}
func();
}
The compiler creates func.<number> and func.<another-number> to name the
inlined functions. Those interior functions have their names changed to
func_<number> and func_<another-number> in read_gcno_file, and then they show
up in the generated lcov file like:
FN:3,func_1278
FN:2,main
FN:13,func_1298
FN:12,foo
There's no way of telling from this what lines between 3 and 12 belong to main
and which belong to func_1278.
For determining function coverage, I'd be happy to throw away the FN: lines
that correspond to interior inlined functions, but it's difficult to
distinguish between a real function named func_1278 and an interior function
that has been mangled from func.1278 (can I use the non-monotonicity
of the line numbers? is geninfo guaranteed to emit FN lines for interior
functions prior to the FN lines for the enclosing function?). Is there a
reason for the name mangling? Would it be possible to leave the function name
as func.1278 in the lcov file?
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=103382&aid=2680727&group_id=3382
------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list