(I'll reformat this to match the issue template next weekend, if not sooner.)
using System;
using System.Runtime.CompilerServices;
public class MAttribute : Attribute {
public MAttribute(
[CallerMemberName]string? name = null) {
}
}
class C {
void Fun1() {
void Fun2<[M]T>(){}
}
}
SharpLab shows this being lowered to void Fun2<[M("Fun2")]T>(){} but the draft seems to require void Fun2<[M("Fun1")]T>(){} because Fun2 as a local function is not a function member. Now is that a compiler bug or a spec bug?
Originally posted by @KalleOlaviNiemitalo in #1548 (comment)