erichkeane added a comment. I guess my point is: a better comment would have saved me some time. Basically point out that the 'debug' info for the whole type is emitted with a virtual method, and that non-virtual types have it emitted in every TU. Also that this causes it to be emitted in only 1 place, since now there is only a single virtual method definition in a single TU.
================ Comment at: clang/include/clang/Sema/Sema.h:335 + /// A key method to reduce duplicate type info from Sema. + virtual void anchor(); ---------------- rnk wrote: > hans wrote: > > I worry that this is going to look obscure to most readers passing through. > > Maybe it could be expanded to more explicitly spell out that it reduces the > > size of the debug info? > I want to keep it concise, most readers shouldn't need to know what this is, > and they can look up technical terms like "key method". I'll say "debug info" > instead of "type info", though, that should be more obvious. FWIW, I just ran into this and did a double/triple take, as it didn't make sense for me to see a 'virtual' function in a 'final' type that didn't inherit to anything looked like nonsense. The only way I found out what this meant (googling "key method" did very little for me here) was to do a 'git-blame' then found this review. The ONLY place that explained what is happening here is the comment you made here: https://reviews.llvm.org/D70340#1752192 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70340/new/ https://reviews.llvm.org/D70340 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits