com php-langspec: Merge postfix-expression into postfix-expression: spec/00-specification-for-php.md spec/10-expressions.md spec/19-grammar.md
[email protected] (Nikita Popov) Tue, 19 Sep 2017 08:01:20 +0000
| Newsgroups | php.standards.cvs |
|---|---|
| Message-ID | <[email protected]> |
Commit: def41da2f80e8e66c136334ea6b7fc86db89e1f0=0AAuthor: Nikita Pop= ov <[email protected]> Tue, 19 Sep 2017 10:01:20 +0200=0AParents: 458= 1ccd4a9d4909b9983675a41613dd388a01733=0ABranches: master=0A=0ALink: = http://git.php.net/?p=3Dphp-langspec.git;a=3Dcommitdiff;h=3Ddef41da2f80e8e6= 6c136334ea6b7fc86db89e1f0=0A=0ALog:=0AMerge postfix-expression into postfix= -expression=0A=0AThe distinction is not meaningful, these are also primary= =0Aexpressions.=0A=0AChanged paths:=0A M spec/00-specification-for-php.md= =0A M spec/10-expressions.md=0A M spec/19-grammar.md=0A=0A=0ADiff:=0Adi= ff --git a/spec/00-specification-for-php.md b/spec/00-specification-for-php= .md=0Aindex 64df695..5646214 100644=0A--- a/spec/00-specification-for-php.m= d=0A+++ b/spec/00-specification-for-php.md=0A@@ -114,8 +114,6 @@ is distrib= uted without any warranty.=0A - [print](10-expressions.md#print)=0A = - [unset](10-expressions.md#unset)=0A - [Anonymous Function Creati= on](10-expressions.md#anonymous-function-creation)=0A- - [Postfix Operator= s](10-expressions.md#postfix-operators)=0A- - [General](10-expressions.m= d#general-3)=0A - [The `new` Operator](10-expressions.md#the-new-operat= or)=0A - [Array Creation Operator](10-expressions.md#array-creation-ope= rator)=0A - [Subscript Operator](10-expressions.md#subscript-operator)= =0A@@ -127,7 +125,7 @@ is distributed without any warranty.=0A - [The `cl= one` Operator](10-expressions.md#the-clone-operator)=0A - [Exponentiation= Operator](10-expressions.md#exponentiation-operator)=0A - [Unary Operato= rs](10-expressions.md#unary-operators)=0A- - [General](10-expressions.md= #general-4)=0A+ - [General](10-expressions.md#general-3)=0A - [Prefi= x Increment and Decrement Operators](10-expressions.md#prefix-increment-and= -decrement-operators)=0A - [Unary Arithmetic Operators](10-expressions.= md#unary-arithmetic-operators)=0A - [Error Control Operator](10-express= ions.md#error-control-operator)=0A@@ -148,7 +146,7 @@ is distributed withou= t any warranty.=0A - [Coalesce Operator](10-expressions.md#coalesce-opera= tor)=0A - [Conditional Operator](10-expressions.md#conditional-operator)= =0A - [Assignment Operators](10-expressions.md#assignment-operators)=0A- = - [General](10-expressions.md#general-5)=0A+ - [General](10-expressio= ns.md#general-4)=0A - [Simple Assignment](10-expressions.md#simple-assi= gnment)=0A - [byRef Assignment](10-expressions.md#byref-assignment)=0A = - [Compound Assignment](10-expressions.md#compound-assignment)=0A@@ -157,= 7 +155,7 @@ is distributed without any warranty.=0A - [Logical Inclusive = OR Operator (form 2)](10-expressions.md#logical-inclusive-or-operator-form-= 2)=0A - [`yield` Operator](10-expressions.md#yield-operator)=0A - [Scri= pt Inclusion Operators](10-expressions.md#script-inclusion-operators)=0A- = - [General](10-expressions.md#general-6)=0A+ - [General](10-expression= s.md#general-5)=0A - [The `include` Operator](10-expressions.md#the-inc= lude-operator)=0A - [The `include_once` Operator](10-expressions.md#the= -include_once-operator)=0A - [The `require` Operator](10-expressions.md= #the-require-operator)=0Adiff --git a/spec/10-expressions.md b/spec/10-expr= essions.md=0Aindex 7431eaf..5f22dc7 100644=0A--- a/spec/10-expressions.md= =0A+++ b/spec/10-expressions.md=0A@@ -98,6 +98,9 @@ primary-expression:=0A = array-creation-expression=0A intrinsic=0A anonymous-function-creation= -expression=0A+ object-creation-expression=0A+ postfix-increment-expressi= on=0A+ postfix-decrement-expression=0A '(' expression ')'=0A -->=0A =0A@= @ -110,6 +113,9 @@ primary-expression:=0A <i><a href=3D"#grammar-array-c= reation-expression">array-creation-expression</a></i>=0A <i><a href=3D"#= grammar-intrinsic">intrinsic</a></i>=0A <i><a href=3D"#grammar-anonymous= -function-creation-expression">anonymous-function-creation-expression</a></= i>=0A+ <i><a href=3D"#grammar-object-creation-expression">object-creation= -expression</a></i>=0A+ <i><a href=3D"#grammar-postfix-increment-expressi= on">postfix-increment-expression</a></i>=0A+ <i><a href=3D"#grammar-postf= ix-decrement-expression">postfix-decrement-expression</a></i>=0A ( <i>= <a href=3D"#grammar-expression">expression</a></i> )=0A </pre>=0A =0A@@ -= 893,32 +899,6 @@ class C=0A }=0A ```=0A =0A-## Postfix Operators=0A-=0A-###= General=0A-=0A-**Syntax**=0A-=0A-<!-- GRAMMAR=0A-postfix-expression:=0A- = primary-expression=0A- object-creation-expression=0A- postfix-increment-e= xpression=0A- postfix-decrement-expression=0A--->=0A-=0A-<pre>=0A-<i id=3D= "grammar-postfix-expression">postfix-expression:</i>=0A- <i><a href=3D"#g= rammar-primary-expression">primary-expression</a></i>=0A- <i><a href=3D"#= grammar-object-creation-expression">object-creation-expression</a></i>=0A- = <i><a href=3D"#grammar-postfix-increment-expression">postfix-increment-ex= pression</a></i>=0A- <i><a href=3D"#grammar-postfix-decrement-expression"= >postfix-decrement-expression</a></i>=0A-</pre>=0A-=0A-**Semantics**=0A-=0A= -These operators associate left-to-right.=0A-=0A ### The `new` Operator=0A = =0A **Syntax**=0A@@ -1750,25 +1730,25 @@ class Point=0A =0A <!-- GRAMMAR=0A= clone-expression:=0A- postfix-expression=0A- 'clone' postfix-expression= =0A+ primary-expression=0A+ 'clone' primary-expression=0A -->=0A =0A <pre= >=0A <i id=3D"grammar-clone-expression">clone-expression:</i>=0A- <i><a h= ref=3D"#grammar-postfix-expression">postfix-expression</a></i>=0A- clone = <i><a href=3D"#grammar-postfix-expression">postfix-expression</a></i>=0A+= <i><a href=3D"#grammar-primary-expression">primary-expression</a></i>=0A= + clone <i><a href=3D"#grammar-primary-expression">primary-expression</= a></i>=0A </pre>=0A =0A **Constraints**=0A =0A-*postfix-expression* must de= signate an object.=0A+*primary-expression* must designate an object.=0A =0A= **Semantics**=0A =0A The `clone` operator creates a new object that is a s= hallow copy of the object designated=0A-by *postfix-expression*.=0A-Then, i= f the class type of *postfix-expression* has a method called=0A+by *primary= -expression*.=0A+Then, if the class type of *primary-expression* has a meth= od called=0A [`__clone`](14-classes.md#method-__clone), it is called to per= form a deep copy.=0A The result is the new object.=0A =0Adiff --git a/spec/= 19-grammar.md b/spec/19-grammar.md=0Aindex 584e39e..ceb9677 100644=0A--- a/= spec/19-grammar.md=0A+++ b/spec/19-grammar.md=0A@@ -338,6 +338,9 @@ The gra= mmar notation is described in [Grammars section](09-lexical-structure.md#= =0A <i><a href=3D"#grammar-array-creation-expression">array-creation-exp= ression</a></i>=0A <i><a href=3D"#grammar-intrinsic">intrinsic</a></i>= =0A <i><a href=3D"#grammar-anonymous-function-creation-expression">anony= mous-function-creation-expression</a></i>=0A+ <i><a href=3D"#grammar-obje= ct-creation-expression">object-creation-expression</a></i>=0A+ <i><a href= =3D"#grammar-postfix-increment-expression">postfix-increment-expression</a>= </i>=0A+ <i><a href=3D"#grammar-postfix-decrement-expression">postfix-dec= rement-expression</a></i>=0A ( <i><a href=3D"#grammar-expression">expr= ession</a></i> )=0A =0A <i id=3D"grammar-simple-variable">simple-variable= :</i>=0A@@ -455,12 +458,6 @@ The grammar notation is described in [Grammars= section](09-lexical-structure.md#=0A &<sub>opt</sub> <i><a href= =3D"#grammar-variable-name">variable-name</a></i>=0A <i><a href=3D"#gram= mar-use-variable-name-list">use-variable-name-list</a></i> , &<sub>= opt</sub> <i><a href=3D"#grammar-variable-name">variable-name</a></i>=0A = =0A-<i id=3D"grammar-postfix-expression">postfix-expression:</i>=0A- <i><= a href=3D"#grammar-primary-expression">primary-expression</a></i>=0A- <i>= <a href=3D"#grammar-object-creation-expression">object-creation-expression<= /a></i>=0A- <i><a href=3D"#grammar-postfix-increment-expression">postfix-= increment-expression</a></i>=0A- <i><a href=3D"#grammar-postfix-decrement= -expression">postfix-decrement-expression</a></i>=0A-=0A <i id=3D"grammar-o= bject-creation-expression">object-creation-expression:</i>=0A new <i><= a href=3D"#grammar-class-type-designator">class-type-designator</a></i> (= <i><a href=3D"#grammar-argument-expression-list">argument-expression-lis= t</a></i><sub>opt</sub> )=0A new <i><a href=3D"#grammar-class-type-d= esignator">class-type-designator</a></i>=0A@@ -557,8 +554,8 @@ The grammar = notation is described in [Grammars section](09-lexical-structure.md#=0A = static=0A =0A <i id=3D"grammar-clone-expression">clone-expression:</i>=0A- = <i><a href=3D"#grammar-postfix-expression">postfix-expression</a></i>=0A-= clone <i><a href=3D"#grammar-postfix-expression">postfix-expression</a= ></i>=0A+ <i><a href=3D"#grammar-primary-expression">primary-expression</= a></i>=0A+ clone <i><a href=3D"#grammar-primary-expression">primary-exp= ression</a></i>=0A =0A <i id=3D"grammar-exponentiation-expression">exponent= iation-expression:</i>=0A <i><a href=3D"#grammar-clone-expression">clone= -expression</a></i>=0A