================
@@ -142,6 +142,14 @@ NamedDecl *Parser::ParseCXXInlineMethodDef(
       SkipUntil(tok::semi);
     }
 
+    if (FunctionDecl *FD =
+            dyn_cast_if_present<FunctionDecl>(FnD->getPreviousDecl())) {
+      if (isa<CXXRecordDecl>(FD->getLexicalDeclContext()) ||
+          Actions.getDefaultedFunctionKind(FD).asComparison() ==
+              Sema::DefaultedComparisonKind::None)
----------------
zyn0217 wrote:

> and adding a similar check for deleted functions... not sure about this 
> alternative

I strongly prefer/would like to see some exploration in this direction because 
it aligns with our overall design.

> however, it appears to skip over = default and = delete cases without any 
> specific handling

Skipping over (did you mean never built any AST nodes for them? That's 
suspicious!) these functions at the parser level is IMO wrong, as it hurts 
source fidelity.


https://github.com/llvm/llvm-project/pull/136717
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to