vsapsai added a comment.

From the perspective of handling `err_export_inline_not_defined` error as a 
developer what about the following option?

  export inline void fn_e(); // note: function 'fn_e' exported as 'inline' here
  
  // ...
  module :private;
  void fn_e() {}  // error: definition of function 'fn_e' can not be inlined 
because it is private

My suggestion isn't about specific wording but about emitting an error for the 
definition and mention declaration in the note. Will it make easier to explain 
the situation? Because I'm not a fan of "must be defined within the module 
purview" and don't know how digestible it will be for others. Please note that 
the suggestion is purely from user perspective, I haven't checked how it might 
affect the implementation.



================
Comment at: clang/test/Modules/cxx20-10-5-ex1.cpp:25-28
+export void g(X *x) {
+  fn_s();
+  fn_m();
+}
----------------
Can `export inline` function call other non-`export inline` functions? Sorry if 
it is tested somewhere else. Curious what are the transitive restrictions, so 
we test edge cases.


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