parse.y: move common code

* parse.y (arg, primary): move common code shared with ripper.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
parse.y: dynamic const assign_error in ripper

* parse.y (mlhs_node): dynamic constant assignment in massign
  should cause assign_error, like as single assign and backref
  assignment in massign.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* 2014-07-25

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e