While implementing the warning is great (wonder if there's any codebase that isn't -Wunused-using clean, that we could use to compare Clang and GCC's behavior broadly - make sure it's catching the same cases (or justify/investigate differences)) - and using it to motivate the debug info is an improvement to the debug info - it won't quite address all the wasted debug info, unfortunately :/
Consider this: namespace a { struct b; }; namespace x { using a::b; inline void f(b*) { } } Now the using declaration is used, but if 'f' is never called in this translation unit, it's a bit weird to produce debug info for the using decl and could still substantially bloat debug info. (indeed most of the bloat that the using decl/directive debug info is producing is probably from directives that are used, but not in a way that's relevant to a certain translation unit) I've not looked at the change yet, but if it's particularly expensive/complicated to wire up the debug info side, it might not be worth it given it's probably not a significant savings & somewhat of a dead-end compared to what would be needed for a more complete fix. But I guess it's probably not expensive/complicated, so probably some fine low hanging fruit to pick until a more complete fix/improvement is implemented. On Fri, Mar 23, 2018 at 8:22 AM Carlos Alberto Enciso via Phabricator < revi...@reviews.llvm.org> wrote: > CarlosAlbertoEnciso added a comment. > > In https://reviews.llvm.org/D44826#1046671, @erichkeane wrote: > > > My opinion matters less than @rsmith or @dblaikie on the review, but it > seems to me that Typedef and Using are SO similar that the implementations > should just be combined. You'd likely have to change a couple of types > along the way to be more generic, but the implementations are essentially a > copy/paste of eachother. > > > That is a very valid point and it simplifies quite a lot the patch. > > If the other reviewers do not have any objection, I will combine both > implementations and update the uploaded patch. > > Thanks, > Carlos > > > Repository: > rC Clang > > https://reviews.llvm.org/D44826 > > > >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits