2
I Use This!
Activity Not Available

Commits : Listings

Analyzed about 1 year ago. based on code collected about 1 year ago.
Jan 20, 2023 — Jan 20, 2024
Commit Message Contributor Files Modified Lines Added Lines Removed Code Location Date
Mark what needs to be done to resolve this bug, though don't actually resolve it, which will require a bunch more busywork. I'm mostly checking this in now to get the test into the repository. More... almost 14 years ago
I don't know why this line got taken out in CL 20185725 -- whether it was an accident or on purpose. I don't see any discussion in the CL description. I think that CanIgnore(...) checks make as much sense here as for anything else, and the other HandleFunctionCalls all have these checks. The tests still pass when I add them back. And it resolves some crashing bugs (cauesd by instantatiating a template even when callee is NULL, which is not a very interesting function...) So I'm adding it back. More... almost 14 years ago
No longer try to instantiate an uninstantiated template class when it's being typedefed. This means we may not correctly identify iwyu violations that we (the typedef author) are responsible for if the typedef is never used anywhere. On the plus side, we'll no longer get spurious warnings about methods that couldn't be instantiated. And we're no longer playing fast and loose with the AST, by modifying it after it's been created, which has always been dangerous. More... almost 14 years ago
no_include pragma. Usage: // IWYU pragma: no_include "foo/bar/baz.h" This inhibits IWYU from suggesting that baz.h be included. More... almost 14 years ago
Make it safer to add other 'special' values for the new project-flag, along with '<tld>'. More... almost 14 years ago
Add a few TODOs based on wan's feedback. More... almost 14 years ago
Change the default behavior from -b being False to being True. Also made the flags more 'gflags' like by adding --foo and --nofoo options for some of the bool flags for which this makes sense. More... almost 14 years ago
Added flag to sort project includes separately. More... almost 14 years ago
Make fix_includes emit forward-declares inside namespaces on separate lines, not all on one line. This avoids very-long lines. R=dsturtevant DELTA=140 (131 added, 0 deleted, 9 changed) More... almost 14 years ago
Fix up some pathnames in some tests. More... almost 14 years ago
Improve our handling of the 'sanity check' case where we add an #include of a .cc. We now check more directly for the bad case: suggesting to add a .cc #include (we allow you to keep an existing one, though). This requires us doing the check later in the process, which is good -- sanity-checks *should* be done right before emitting output. It also allows me to relax the check to include #including .cc files from other .cc files (which is what caused the bug that prompted this CL). More... almost 14 years ago
The code that used the precomputed cache for template instantiation was using the resugar-map wrong: it wasn't treating compnent types properly. In this case, we don't want all component types, but only the actual template argument types. (However, we do want to do a *separate* full-use check on each of the component types.) More... almost 14 years ago
Resolve a few TODOs now that we get the actual search path from clang. We no longer need to have ad-hoc rules for reading from system include directories, and the one rule we do still have we've moved into a more appropriate place. More... almost 14 years ago
Oops! A cut-and-paste error had led to very misleading method names. Fixed. I also removed a TODO that proved to not really work when I tried it. More... almost 14 years ago
Change the base iwyu ast visitor to hold a pointer to 'global' (per-AST) state, rather than storing it all directly. The problem is that state in the base iwyu ast visitor is not shared between the iwyu ast visitor and the instantiated-template visitor. That's fragile, but fixed now. More... almost 14 years ago
Make the caches global. That will make it easier to re-use them for typedefs. More... almost 14 years ago
Some cleanups based on wan's feedback. Tests still pass. More... almost 14 years ago
Some more cleanup from the previous change to report templates via a TemplateSpecializationType rather than a TemplateName. It causes problems because iwyu_output now sees ClassTemplateSpecializationDecls in places it used to be all ClassTemplateDecl. More... almost 14 years ago
Don't try to track what clang revision number we're at in the Makefile. I have never remembered to update it, so it just got out of date and confused someone. I've replaced that with some instructions on how to deal with developing at top-of-tree. This resolves http://code.google.com/p/include-what-you-use/issues/detail?id=23 More... almost 14 years ago
Fix a bug that we weren't traversing nested template args: Outer<Inner<MyClass> > foo; More... almost 14 years ago
Fix the BuildCompilation call to match clang ToT. Fixes http://code.google.com/p/include-what-you-use/issues/detail?id=24 More... almost 14 years ago
Reporting template uses at TemplateName is the wrong place -- at that point we had already lost info about what specialization of the template we might be using. We have to report at TemplateSpecializationType. More... almost 14 years ago
.../c++/4.4.3/backwards is now part of the -I search path, so what used to normalize to backwards/foo.h is now normalizing to just foo.h. Adjust the include-picker to handle this. More... almost 14 years ago
Oops, forgot to add this file to my last submit. :-( More... almost 14 years ago
A major revamp of the way we handle template arguments. The crux of the change is that the InstantiatedTemplateVisitor no longer takes a set of types-of-interest, but instead takes a map called the resugar_map. The resugar map is a tool to deal with the fact that clang canonicalizes all substituted template types (the "T"'s in a written template), so if you say typedef int MyTypedef; template<class T> void MyFunc() { T foo; } MyFunc<MyTypedef>(); clang will say the body is 'int foo;', not 'MyTypedef foo;'. This is difficult for include-what-you-use. More... almost 14 years ago
In certain situations where it's easy to do, identify forward-declares inside namespaces, and add new forward-declares for that namespace inside the namespace as well, rather than putting all new forward-declares at the top of the file. More... almost 14 years ago
No longer reset the ast-chain when moving into an instantiated template. This matches our intuition (instantiating a temlpate isn't 'starting over', you're still in the context of the template instantiator), and fixes a bug with fwd decls in classes, where we previously didn't have enough context to know if we were in a method body or not. It should also make debugging a bit easier. More... almost 14 years ago
Two efficiency improvements: More... almost 14 years ago
Put the driver routine in the iwyu namespace, at wan's suggestion. More... almost 14 years ago
A few fixes to the recent changes, mostly suggested by dsturtevant: More... almost 14 years ago