code: JCVariableDecl variableDeclaratorRest(int pos, JCModifiers mods, JCExpression type, Name name,
                                    boolean reqInit, Comment dc) {
          type = bracketsOpt(type);
          JCExpression init = null;
          if (token.kind == EQ) {
              nextToken();
              init = variableInitializer();
          }
          else if (reqInit) syntaxError(token.pos, "expected", EQ);
          JCVariableDecl result =
              toP(F.at(pos).VarDef(mods, name, type, init));
          attach(result, dc);
          return result;
      }
docs: VariableDeclaratorRest = BracketsOpt ["=" VariableInitializer]
  ConstantDeclaratorRest = BracketsOpt "=" VariableInitializer
  
  @param reqInit  Is an initializer always required?
  @param dc       The documentation comment for the variable declarations, or null.