anchor.diff:              Generic(t.GetGenericTypeDefinition(), t.GetGenericArguments())
           else
               Basic t
  +
  +    [<EditorBrowsable(EditorBrowsableState.Never)>]
  +    static member val internal Instance = new TypeShape<'T>()
           
       override __.Type = typeof<'T>
       override __.ShapeInfo = shapeInfo
  
positive.code: 
  open System
  open System.Collections.Generic
  open System.Runtime.Serialization
  open System.Reflection
  
  
negative.code: /// Encapsulates a type variable that can be accessed using type shape visitors
  [<AbstractClass>]
  type TypeShape =
      [<CompilerMessage("TypeShape constructor should not be consumed.", 4224); EditorBrowsable(EditorBrowsableState.Never)>]
      internal new () = { }
      abstract Type : Type
      abstract ShapeInfo : TypeShapeInfo
      abstract Accept : ITypeVisitor<'R> -> 'R
  
  /// Encapsulates a type variable that can be accessed using type shape visitors
  [<Sealed>]
  type TypeShape<'T> private () =
      inherit TypeShape()
  
      static let shapeInfo =
          let t = typeof<'T>
          if t.IsEnum then
  