type B = record x: Int end D = record(B) y: Int end proc f() var b: ^B d: ^const D begin b := d (* @Error Expected type '\^B', but got '\^const D' *) return end.