Compiler Error C3290
Collapse the table of content
Expand the table of content
The document is archived and information here might be outdated

Compiler Error C3290

Error Message

'type' : a trivial property cannot have reference type

A property was declared incorrectly. When you declare a trivial property, the compiler creates a variable that the property will update, and it is not possible to have a tracking reference variable in a class.

See property and % (Tracking Reference) for more information.


The following sample generates C3290.

// C3290.cpp
// compile with: /clr /c
ref struct R {};

ref struct X {
   R^ mr;

   property R % y;   // C3290
   property R ^ x;   // OK

   // OK
   property R% prop {
      R% get() { 
         return *mr; 

      void set(R%) {}

int main() {
   X x;
   R% xp = x.prop;
© 2016 Microsoft