CallerMemberName en .NET 4.0 no funciona

Estoy tratando de usarCallerMemberName atributo en .NET 4.0 a través del paquete de portabilidad BCL. Siempre está devolviendo una cadena vacía en lugar del nombre del miembro. ¿Qué estoy haciendo mal?

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        MessageBox.Show(new class2().CallMe);
    }
}

public class class2
{
    public string CallMe 
    {
        get
        {
            return HelpMe();
        }
    }

    private string HelpMe([CallerMemberName] string param = "")
    {
        return param;
    }
}

Respuestas a la pregunta(3)

Su respuesta a la pregunta