Bug 35980 - CSharpCodeCompiler.CompileXYZ false positive error when warning is 'X hides inherited member'
Summary: CSharpCodeCompiler.CompileXYZ false positive error when warning is 'X hides i...
Status: RESOLVED FIXED
Alias: None
Product: Class Libraries
Classification: Mono
Component: System (show other bugs)
Version: 4.0.0
Hardware: PC Linux
: --- normal
Target Milestone: Untriaged
Assignee: Bugzilla
URL:
Depends on:
Blocks:
 
Reported: 2015-11-18 05:07 UTC by Kalyanov.Dmitry
Modified: 2015-11-24 09:28 UTC (History)
2 users (show)

See Also:
Tags:
Is this bug a regression?: ---
Last known good build:


Attachments
Code to reproduce the bug (1.43 KB, text/x-csharp)
2015-11-18 05:07 UTC, Kalyanov.Dmitry
Details

Description Kalyanov.Dmitry 2015-11-18 05:07:57 UTC
Created attachment 13857 [details]
Code to reproduce the bug

The following code, when compiled via CSharpCodeCompiler, produces false error:

public class A
{
    public virtual void F() {}
}
    
public class B: A
{
    public virtual void F() {}
}

This code generates 1 warning and 1 error:
  
/tmp/fa35333/69a87839.0.cs(22,29) : warning CS0114: `NS.B.F()' hides inherited member `NS.A.F()'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword

(0,0) : error : /tmp/fa35333/69a87839.0.cs(16,29): (Location of the symbol related to previous warning)

Mono.CSharp.CSharpCodeCompiler.CreateErrorFromString incorrectly treats the additional line "(Location of the symbol related to previous warning)" in stderr output of mcs as an error since it doesn't match the ErrorRegexPattern regex.
Comment 1 Alexander Köplinger [MSFT] 2015-11-24 09:28:17 UTC
Fixed in master via https://github.com/mono/mono/pull/2248.

Note You need to log in before you can comment on or make changes to this bug.