编译Nimrod程序的继承类型中未声明的字段

slo*_*oth 5 inheritance compiler-errors nimrod nim-lang

我尝试编译以下代码:

type
  TPerson = object of TObject
    name*: string 
    age: int

  TStudent = object of TPerson
    id: int

var
  student: TStudent
  person: TPerson

student = TStudent(name: "Anton", age: 5, id: 2)
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

错误:未声明的字段:'id'

怎么id没声明?代码示例直接来自教程.语言中的某些内容是否会在教程中反映出来?


另外,如果我尝试运行以下代码:

student = TStudent(name: "Anton")
echo student.name
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

SIGSEGV:非法存储访问.(尝试读取nil?)

为什么?