C# Error
CS8333 – Cannot return {0} ‘{1}’ by writable reference because it is a readonly variable
Reason for the Error & Solution
Cannot return by writable reference because it is a readonly variable
Example
The following sample generates CS8333:
// CS8333.cs (3,36)
class Program
{
static ref T F4<T>(in T t) => ref t;
}
To correct this error
To return a reference to a readonly variable, refactoring to return ref readonly
will correct this error:
class Program
{
static ref readonly T F4<T>(in T t) => ref t;
}