This documentation is archived and is not being maintained.

Compiler Error CS0677

Visual Studio 2008

'variable': a volatile field cannot be of the type 'type'

Fields declared with the volatile keyword must be one of the following types:

  • Any reference type

  • Any pointer type (in an unsafe context)

  • The types sbyte, byte, short, ushort, int, uint, char, float, bool

  • Enum types based on any of the above types

The following sample generates CS0677:

// CS0677.cs
class TestClass
   private volatile long i;   // CS0677

   public static void Main()