Bug 52899

Summary: mprof-report missing filenames in coverage xml output when using portable pdbs
Product: [Mono] Runtime Reporter: Alexander Köplinger [MSFT] <alkpli>
Component: DebuggerAssignee: Zoltan Varga <vargaz>
Status: RESOLVED FIXED    
Severity: normal CC: mono-bugs+mono, mono-bugs+runtime
Priority: ---    
Version: master   
Target Milestone: ---   
Hardware: PC   
OS: Mac OS   
Tags: Is this bug a regression?: ---
Last known good build:

Description Alexander Köplinger [MSFT] 2017-02-28 13:58:48 UTC
Repro:

> using System;
>
> namespace Test {
>     class Program {
>         static void Main() {
>             Console.WriteLine("Hello World!");
>         }
>     }
> }

1. csc /debug:portable test.cs
2. mono --debug --profile=log:output=report.mlpd,coverage,onlycoverage test.exe
3. mprof-report --coverage-out=report.xml report.mlpd

The resulting report.xml has empty filename attributes for the Main() method.

If I do the same with mcs (i.e. generating .mdbs), then it works fine and the filename is in the XML.

@ian/@alexrp told me they just use the Mono APIs for getting the info so it doesn't seem to be a problem in mprof-report.

Mono version:

Mono JIT compiler version 4.9.2 (2017-02/9bd5459 Fri Feb 24 11:38:23 CET 2017)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
	TLS:           normal
	SIGSEGV:       altstack
	Notification:  kqueue
	Architecture:  amd64
	Disabled:      none
	Misc:          softdebug
	LLVM:          supported, not enabled.
	GC:            sgen (concurrent by default)
Comment 1 Zoltan Varga 2017-03-01 19:53:26 UTC
https://github.com/mono/mono/pull/4457
Comment 2 Zoltan Varga 2017-03-01 23:12:55 UTC
Fixed.