Hah - looks like you've got a situation similar to the "I want LINQ syntax, but I'm in 2.0 land", where you could "turn on" LINQ syntax via:
namespace System.Runtime.CompilerServices
{
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public class ExtensionAttribute : Attribute
{
}
}
Only here, you're enabling use of the volatile
keyword.