vsapsai added a comment.

Sorry for changing my mind. I've thought about the errors more and especially 
about the case mentioned by Chuanqi

  export module A;
  [export] inline void func();

I'm afraid it can complicate the implementation but we can achieve some 
consistency with errors like

  export module A;
  export inline void func(); // error: no definition for exported inline 
function 'func' in module 'A'

and

  export module A;
  export inline void func(); // error: no definition for exported inline 
function 'func' in module 'A'
  //...
  module :private;
  void func() {}  // note: definition here is not reachable as it is private

I think it is useful to have connection between declaration and definition and 
to explain why the definition is no good.

Specific wording around "no definition | missing definition | definition 
required" is flexible.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D128328

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

Reply via email to