jansvoboda11 wrote: > > There are places in Clang where we store the result of the const function > > in some kind of long-lived data structure, and someplace else modify the > > result of the non-const function, expecting the change to be reflected. > > I would be comfortable with this, because you would still have to call a > distinctly named function (getMut...) in order to do the mutation itself > IIUC. If they are const-casting of course that wouldn't be enough.
Ok, if you're fine with that, I'll use the original names for the const getters on `CowCompilerInvocation`. > > Note that you can use CompilerInvocationBase to get the behavior you're > > describing. > > I think `CompilerInvocationBase` goes a step farther than what I described, > because it would give you the mutating methods with the original names, no? No, `CompilerInvocationBase` doesn't have the mutating functions. `RefBase` and `ValBase` only expose the const getters. `CompilerInvocationBase` only adds the `generate*()` functions on top of those. The non-const getters are specific to `CompilerInvocation` and `CowCompilerInvocation`. https://github.com/llvm/llvm-project/pull/65412 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits