Bug 60848

Summary: Incorrect unicode custom attribute decoding
Product: [Mono] Runtime Reporter: Marek Safar <masafa>
Component: ReflectionAssignee: Katelyn Gadd <kg>
Status: RESOLVED FIXED    
Severity: normal CC: aleksey, kg, ludovic, mono-bugs+mono, mono-bugs+runtime
Priority: Normal    
Version: 5.8 (2017-10)   
Target Milestone: Future Cycle (TBD)   
Hardware: PC   
OS: Mac OS   
Tags: bugpool-archive Is this bug a regression?: ---
Last known good build:

Description Marek Safar 2017-11-24 09:49:48 UTC
using System;
 
[Obsolete(UnicodeHighSurrogate)]
class C
{
    public const string UnicodeHighSurrogate = "\uD800";
    public const string UnicodeReplacementCharacter = "\uFFFD";
 
    static void Main()
    {
        string message = ((ObsoleteAttribute)typeof(C).GetCustomAttributes(false)[0]).Message;
 
        Console.WriteLine(message == UnicodeReplacementCharacter + UnicodeReplacementCharacter);
    }
}

Print True on .net and False on Mono
Comment 1 Ludovic Henry 2017-11-27 16:39:08 UTC
I can reproduce with Mono 5.8.0.70 (2017-10/efce3b256a5)
Comment 2 Marek Safar 2018-01-15 15:34:56 UTC
https://github.com/mono/mono/pull/6481