JosiahWI opened a new pull request, #12394:
URL: https://github.com/apache/trafficserver/pull/12394

   This is an experimental patch to showcase C++20 modules. I have chosen the 
inkuring module because it is one of the smallest components of ATS and the 
change only impacts a handful of files in other components.
   
   I learned a great deal making this change and discovered a couple ways that 
GCC 15.1 will experience an internal error. One is to `#include` a symbol which 
is also imported from a module. I think another is to do a circular import; GCC 
detects simple cycles, but I suspect I found one it missed. That is the reason 
there is one symbol left declared in a .h file.
   
   I had to fix some compile errors due to missing includes, confirming for me 
that C++ modules are inherently quite a bit more robust than header files for 
general usecases. I am not sure what to expect for compile times, but that is 
something to investigate.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to