Nested blocks throwing error in diagnostics

I have a hcl spec that looks like below

var "variable1" {
  name = "test"
  var "nested_variable1" {
    name = "nested_test"
  }
}

I have Golang struct defined like below

type Variable struct {
  Label    string    `hcl:"x,label"`
  Name     string.   `hcl:"name"`
  Variable *Variable `hcl:"var,block"`
}

I am getting error when the hcl is parsed, what am I missing here ? Appreciate any help on this.

Unexpected "var" block; Blocks are not allowed here.'