ChuanqiXu added inline comments.

================
Comment at: clang/include/clang/Sema/Sema.h:2899-2909
+    /// C++ [dcl.fct.def.general]p1
+    /// function-body:
+    ///   = delete ;
+    ///   = default ;
+    Delete,
+    Default,
+
----------------
rZhBoYao wrote:
> ChuanqiXu wrote:
> > Agree to @erichkeane 
> With all due respect, this code suggestion doesn't make any sense to me. My 
> best guess is @ChuanqiXu was thinking the order specified by the grammar as 
> noted in [[ https://eel.is/c++draft/dcl.fct.def.general#nt:function-body | 
> dcl.fct.def.general p1 ]]. Even if that was the case, `CompoundStmt` is not 
> quite right either. Also, differentiating `ctor-initializer[opt] 
> compound-statement` and `function-try-block` is meaningless here, hence the 
> name `Other`.
> 
> I adopted the same order as to how `Parser::ParseFunctionDefinition` has 
> always been parsing `function-body`. The order is not significant in any 
> meaningful way as each of the 4 grammar productions of `function-body` is 
> VERY different and mutually exclusive. Putting `Delete` and `Default` upfront 
> not only emphasizes the "specialness" of them but also conveys how we handle 
> `function-body`.
> 
> What say you, @erichkeane ?
Yeah, the order comes from the standard. I think the comment should be 
consistent with the spec. And for the name, I agree `CompoundStmt` is not 
accurate indeed... I thought Default should be a good name but there is 
`Default` already. But I don't feel `Other` is good since the 
compound-statement is much more common.

> Putting Delete and Default upfront not only emphasizes the "specialness" of 
> them but also conveys how we handle function-body.

This don't makes sense. Generally, we would put common items in front. And the 
order here shouldn't be related to the implementation.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122981/new/

https://reviews.llvm.org/D122981

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to