• 0 Posts
  • 8 Comments
Joined 1 year ago
cake
Cake day: June 18th, 2023

help-circle



  • I think it’s just this feature is so big that it requires months of focused uninterrupted work by a dedicated team of engineers - something that’s unlikely to happen in a project that relies on volunteer effort. Microsoft could do it because MSVC is developed by a dedicated team of developers working on it full-time (and paid for it). Clang probably was just luckier than GCC and there were people in its community passionate enough to drive this work (still its modules implementation is still less complete than MSVC AFAIK).


  • I don’t use it myself, but I don’t have a strong opinion on that. My beef if with deduced return types, especially with templates. It is typical in modern C++ code to see such function:

    template<typename ~whatever~>
    auto foo(~some arguments which types are deduced from nested templated conditional using declarations that you don't understand~) {
        return ~call to other template function that's 10 levels deep and is also conditional on properties of template parameters with some ifdefs for fun~;
    }
    
    

    That makes it absolutely impossible to figure out what types function takes as parameters and what type it returns until you hit 10-page compiler error that will explain everything (which is also will force you to read through implementation details of this function to figure out how to fix it). And often IDEs can’t help you either.