Your over thinking it. RC is a wrapper struct around a bit of memory. It won't require compiler changes and it could be backed by GC for allocation (I use RC for system sensitive handles like windows even though it is GC still).