CS1686 de erro do compilador
Mensagem de erro
Variável' local' ou seus membros não podem ter seus endereços obtidos nem serem usados dentro de um método anônimo ou lambda expressão
Este erro é gerado quando você usa uma variável e tenta obter seu endereço e uma destas ações é feita dentro de um método anônimo.
Exemplo
O exemplo a seguir gera CS1686.
// CS1686.cs
// compile with: /unsafe /target:library
class MyClass
{
public unsafe delegate int * MyDelegate();
public unsafe int * Test()
{
int j = 0;
MyDelegate d = delegate { return &j; }; // CS1686
return &j; // OK
}
}