{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":37440338,"defaultBranch":"master","name":"include-what-you-use","ownerLogin":"include-what-you-use","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-06-15T03:00:29.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/11830272?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1710185869.0","currentOid":""},"activityList":{"items":[{"before":"990748bda0eca109480935aa9dd37c8a8308f89d","after":"bc86a8fd570cb8344795564f74f2a5a27a6ea925","ref":"refs/heads/master","pushedAt":"2024-05-08T19:27:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Add mappings for macros\n\nSigned-off-by: Alejandro Colomar ","shortMessageHtmlLink":"Add mappings for <stdarg.h> macros"}},{"before":"b0cfa604a33619b0bdfdb26313b00bdc96a30ffe","after":"990748bda0eca109480935aa9dd37c8a8308f89d","ref":"refs/heads/master","pushedAt":"2024-05-08T19:26:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Add mapping for glibc's \n\n $ grep Never /usr/include/x86_64-linux-gnu/bits/signum-arch.h\n #error \"Never include directly; use instead.\"\n\nSigned-off-by: Alejandro Colomar ","shortMessageHtmlLink":"Add mapping for glibc's <bits/signum-arch.h>"}},{"before":"7c196965ca2e25ed82fd4d6e2cc3e72f3c5c90bb","after":"b0cfa604a33619b0bdfdb26313b00bdc96a30ffe","ref":"refs/heads/master","pushedAt":"2024-05-08T19:25:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Fix IWYU for -xc++-header\n\nThe following used to work properly:\n $ echo 'void foo() {}' > test.h\n $ include-what-you-use -xc++-header test.h\n\nIt's now failing with the error:\n error: unable to handle compilation, expected exactly one compiler job\n\nFor c++ headers, clang emits a precompile job action, which IWYU\nignores. Treating this action type the same as a compile job seems to\nfix the issue.","shortMessageHtmlLink":"Fix IWYU for -xc++-header"}},{"before":"93d8793081e5aa457114ef99d1e887390b370e4a","after":"7c196965ca2e25ed82fd4d6e2cc3e72f3c5c90bb","ref":"refs/heads/master","pushedAt":"2024-05-07T17:33:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Add mappings for wint_t\n\nSigned-off-by: Alejandro Colomar ","shortMessageHtmlLink":"Add mappings for wint_t"}},{"before":"52cbe3ed7858a0cc9c6c651cd4a62723d24011df","after":"93d8793081e5aa457114ef99d1e887390b370e4a","ref":"refs/heads/master","pushedAt":"2024-04-17T18:06:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Add mappings for libc++ <__fwd/.*> headers","shortMessageHtmlLink":"Add mappings for libc++ <__fwd/.*> headers"}},{"before":"e0edf3dd88b51deda68c1b9c219f3ae00409af60","after":"52cbe3ed7858a0cc9c6c651cd4a62723d24011df","ref":"refs/heads/master","pushedAt":"2024-04-17T18:01:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Report better location for BinaryOperator types\n\nThe current location for a BinaryOperator points to the actual\noperator ('+', '-', etc), not the terms we're reporting types for.\n\nThis confused the logic in GetCanonicalUseLocation trying to determine\nwho is responsible for the use, so it said the macro spelling was\nresponsible for pointer arithmetic on arguments.\n\nStrip parentheses and implicit casts to get to the actual term\nexpressions, and explicitly use their location.\n\nAdd tests for pointer arithmetic in macros, both on macro args and\nentirely encapsulated in the macro.\n\nFixes #1483.","shortMessageHtmlLink":"Report better location for BinaryOperator types"}},{"before":"125341c412ceee9233ece8973848b49e770a9b82","after":"e0edf3dd88b51deda68c1b9c219f3ae00409af60","ref":"refs/heads/master","pushedAt":"2024-04-14T11:46:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[iwyu_tool] Add new 'clang-warning' formatter\n\nThis plays better with Visual Studio integration, where the 'error' and\n'warning' keywords are interpreted to control build results.\n\nCo-authored-by: Kim Gräsman ","shortMessageHtmlLink":"[iwyu_tool] Add new 'clang-warning' formatter"}},{"before":"4ddf36ed8ecffae5b542ca5cde61387f33d546df","after":"125341c412ceee9233ece8973848b49e770a9b82","ref":"refs/heads/master","pushedAt":"2024-04-12T21:28:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Add and use DropFrom string util\n\nWe had one place in MungedForwardDeclareLineForTemplates where Split was\nused to cut a string on a separator.\n\nUsing Split for this is both noisy at the callsite and non-performant.\n\nAdd DropFrom, which finds the separator and drops the rest of the string\nfrom there. Use it to simplify MungedForwardDeclareLineForTemplates a\nlittle.","shortMessageHtmlLink":"Add and use DropFrom string util"}},{"before":"cfa30aa1daddf3008b45f449c293f421fcdc0ac7","after":"4ddf36ed8ecffae5b542ca5cde61387f33d546df","ref":"refs/heads/master","pushedAt":"2024-04-12T21:18:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Remove all uses of FullSourceLoc\n\nReplace with simpler SourceManager/SourceLocation combos.\n\nSince FullSourceLoc doesn't bring any functionality to the table, fall\nback to simpler mechanisms to make it easier to debug.\n\nNo functional change.","shortMessageHtmlLink":"Remove all uses of FullSourceLoc"}},{"before":"eecd17c895bde35864001a7252256f11515cae00","after":"cfa30aa1daddf3008b45f449c293f421fcdc0ac7","ref":"refs/heads/master","pushedAt":"2024-04-12T21:18:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Improve comments in MungedForwardDeclareLineForNontemplates\n\nThe comments here were largely outdated, poorly formatted and\nincorrect. Fix them up.\n\nNo functional change.","shortMessageHtmlLink":"Improve comments in MungedForwardDeclareLineForNontemplates"}},{"before":"0466dc717350e7f6bee61f3414c2dda53626082e","after":"eecd17c895bde35864001a7252256f11515cae00","ref":"refs/heads/master","pushedAt":"2024-04-12T20:55:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[clang compat] Add printing policy when generating fwd decls\n\nClang changed its formatting of decls in this patch:\nhttps://github.com/llvm/llvm-project/commit/9391ff8c86007562d40c240ea082b7c0cbf35947\n\nA tiny bug was introduced, where sometimes DeclPrinter puts a spurious\nextra space after the tag specifier (class, struct, etc). We generate\nforward declarations using the DeclPrinter, and the resulting format is\npinned down in our tests.\n\nThis caused the following regression in IWYU:\n\n -template class FinalTemplate;\n +template class FinalTemplate;\n\nExplicitly use a printing policy with PolishForDeclaration, which omits\nsemantic attributes (and thereby the extra space) from the output.","shortMessageHtmlLink":"[clang compat] Add printing policy when generating fwd decls"}},{"before":"cad1a68c768c2b27ec7bba37e3e9f39456b7bc3e","after":"0466dc717350e7f6bee61f3414c2dda53626082e","ref":"refs/heads/master","pushedAt":"2024-04-11T18:25:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[ci] Remove manual checkout ref logic\n\nIn 44fa8c7bd042907dd7bb9a42dbefdf1ad346c313, we ran into some undefined\nproblem when upgrading from actions/checkout@v2 to v3, where the checked\nout Git revision changed.\n\nA workaround was added to consistently checkout the PR branch HEAD, or\nmainline HEAD for nightly builds.\n\nThe GitHub documentation describes the variables used by\nactions/checkout by default:\nhttps://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request\n\n* GITHUB_SHA: Last merge commit on the GITHUB_REF branch\n* GITHUB_REF: PR merge branch refs/pull/PULL_REQUEST_NUMBER/merge\n\nThis has always left me confused, but now I think I understand:\nGITHUB_REF points to an ephemeral branch where the PR is\nnon-fast-forward-merged onto its target (typically mainline).\n\nGITHUB_SHA is simply the merge commit at the HEAD of the GITHUB_REF\nbranch.\n\nThe net result of letting actions/checkout decide is that a PR build\nwill check out GITHUB_SHA, and will run on a tree as-if the PR had\nalready been merged to mainline, independent of its heritage (i.e. if it\napplies without conflict, it need not be fully rebased).\n\nThis is a much better default behavior for contributors, because they\ndon't need to rebase on top of mainline to get e.g. Clang compatibility\nfixes or ensure their changes are covered by any new tests on mainline.\n\nIt is slightly confusing for an old dog like myself, because the\n_revision_ that's built will never exist. However, the _content_ that's\nbuilt should be identical after rebase+merge.","shortMessageHtmlLink":"[ci] Remove manual checkout ref logic"}},{"before":"07b12aab2b6d9bcd3eac3f77030708b1ae948a30","after":"cad1a68c768c2b27ec7bba37e3e9f39456b7bc3e","ref":"refs/heads/master","pushedAt":"2024-04-07T13:42:03.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Keep directly included overloads\n\nI've decided to report only that overloaded function decls which are\nalready directly `#include`d, as opposed to the suggestion\nin the removed TODO, so as to avoid lots of unwanted `#include`s\nin real-world STL cases (things like `std::begin` may be defined in many\nheaders). When no overload is included directly but the name is\nqualified (i.e. can not be found via ADL), an arbitrary (the first one)\noverloaded declaration is suggested to keep the code compilable.\n\nFiltering of suitable overloads has not been done.\n\nThis fixes #636, #823, #1111, #1293, and, partially, #1250.","shortMessageHtmlLink":"Keep directly included overloads"}},{"before":"c4fabb216a543029572f5e122b37eefcd2cc8e07","after":"07b12aab2b6d9bcd3eac3f77030708b1ae948a30","ref":"refs/heads/master","pushedAt":"2024-04-07T12:49:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Add Visual Studio cache files to .gitignore\n\nCo-authored-by: Kim Gräsman ","shortMessageHtmlLink":"Add Visual Studio cache files to .gitignore"}},{"before":"4297160bb3b0d2e7565bac729191c033c14b4f4c","after":"c4fabb216a543029572f5e122b37eefcd2cc8e07","ref":"refs/heads/master","pushedAt":"2024-04-07T12:27:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Convert .gitignore to Unix line endings","shortMessageHtmlLink":"Convert .gitignore to Unix line endings"}},{"before":"91202df0516dad2ffe7b759ad2c3869fb2c055d8","after":"4297160bb3b0d2e7565bac729191c033c14b4f4c","ref":"refs/heads/master","pushedAt":"2024-04-07T10:37:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"mappings: Map sig_atomic_t to signal.h\n\nOtherwise on glibc this maps to bits/types/sig_atomic_t.h, which is\nglibc internal.\n\nSigned-off-by: Chris Down ","shortMessageHtmlLink":"mappings: Map sig_atomic_t to signal.h"}},{"before":"f54135cd4b581d5727609b38b57da94f39a04d3b","after":"91202df0516dad2ffe7b759ad2c3869fb2c055d8","ref":"refs/heads/master","pushedAt":"2024-04-04T18:58:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[ci] Generalize workaround for broken packaging\n\nEvery time a new major version of the Clang APT packages rolls out, our\nbuild breaks because libclang-NN.so.1 is not properly installed. Then\nafter a few weeks it usually sorts itself out, for some reason.\n\nWe don't use this shared library, but the LLVM/Clang CMake modules\nself-verify and fail if the file does not exist.\n\nWe've worked around it for a number of releases by simply touching the\nmissing filename after the build fails for the first time. But since\nthis appears to be a recurring problem, generalize to:\n\n* find the latest /usr/lib/llvm-NN directory\n* extract the NN major version number\n* use the version NN to dynamically generate an .so name to touch\n\nWhether the file exists or not, this should placate CMake.","shortMessageHtmlLink":"[ci] Generalize workaround for broken packaging"}},{"before":"1da1d2cacdc560b3dc8508b8bd58dcf96fceeb89","after":"f54135cd4b581d5727609b38b57da94f39a04d3b","ref":"refs/heads/master","pushedAt":"2024-04-03T17:37:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[clang compat] Handle new cast kind for HLSL array temporaries\n\nThe new cast kind CK_HLSLArrayRValue was added in:\nhttps://github.com/llvm/llvm-project/commit/9434c083475e42f47383f3067fe2a155db5c6a30\n\nI can't see that it would affect IWYU analysis, so just handle it\nsilently to placate -Wswitch.","shortMessageHtmlLink":"[clang compat] Handle new cast kind for HLSL array temporaries"}},{"before":"693d98e019cfbaa5c03660fcefb984eae7c58dbe","after":"1da1d2cacdc560b3dc8508b8bd58dcf96fceeb89","ref":"refs/heads/master","pushedAt":"2024-04-03T17:17:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Fix comment\n\nNo functional change.","shortMessageHtmlLink":"Fix comment"}},{"before":"88e414728702390ed8eebf11d14b992a01df1ee0","after":"693d98e019cfbaa5c03660fcefb984eae7c58dbe","ref":"refs/heads/master","pushedAt":"2024-04-01T18:06:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Fix provision analysis with public headers\n\nThis fixes determination of types provided with type aliases and\nfunction declarations (fn return, \"autocast\") in the presence of mapping\nfiles. The problem was in that the `PublicHeaderIntendsToProvide`\nfunction considers as provided all the headers transitively included\nfrom a public header, despite they are may be themselves public and not\nhave the explicit public-to-public mapping specified. It is convenient\nto avoid noisy suggestions of the library internals when handling\ninstantiations of some external library templates, but may hinder\nexpressing author intent when writing e.g. some own (user's) `typedef`\n(non-)providing a type from such a library.\n\nTo achieve the more correct behavior, the logic from\n`OneUse::SetPublicHeaders()` function has been reused which takes into\naccount only explicitly specified mappings. The drawback is that the use\nsite vs. the decl site difference for default template arguments becomes\nworse (see `TestDefaultTplArgs()`). The use site handling still uses\n`PublicHeaderIntendsToProvide` (which is common way for template\ninstantiation handling, as stated before). It may end up in that IWYU\nmay suggest to remove an indirectly providing header from the template\ndefining file (`-d1.h` from `-def_tpl_arg.h` in the test case)\nnot suggesting to `#include` the default argument header at the use site\nbecause at the time of analysis `-d1.h` is present in `-def_tpl_arg.h`\nand \"provides\" all its directly and indirectly included stuff. OTOH, it\nmay be fixed easily by means of including the appropriate header\nin the template instantiating file manually, and the IWYU behavior\nshould become consistent.\n\nThe main goal of these changes is to introduce `IsDirectlyIncluded`\nfunction which may be reused when fixing `UnresolvedLookupExpr`-related\nbugs (`PublicHeaderIntendsToProvide` doesn't work well in real-world\ncases for it).","shortMessageHtmlLink":"Fix provision analysis with public headers"}},{"before":"e7aa3cbc46b0edd9a1616c8d7ffde2a09782d067","after":"88e414728702390ed8eebf11d14b992a01df1ee0","ref":"refs/heads/master","pushedAt":"2024-03-31T13:35:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Loosen Python version requirements for functools.cache\n\nWe started using functools.cache recently, and it's apparently new as of\nPython 3.9. Give people some slack using a local alias for\nfunctools.lru_cache, which has been around since Python 3.2.","shortMessageHtmlLink":"Loosen Python version requirements for functools.cache"}},{"before":"41e228f6beead74fa5691988221df31c5f26d3e3","after":"e7aa3cbc46b0edd9a1616c8d7ffde2a09782d067","ref":"refs/heads/master","pushedAt":"2024-03-31T12:17:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[mappings] Reformat closing brackets in all .imp files\n\nMinimal rewrite to remove space before closing bracket:\n\n -{ \"include\": [\"\", \"private\", \"\", \"public\" ] },\n +{ \"include\": [\"\", \"private\", \"\", \"public\"] },\n\nThis is the unadorned result of:\n\n find . -name \"*.imp\" -exec sed -Ei -e 's/\" \\]/\"\\]/g' {} \\;\n\nNo functional change intended.","shortMessageHtmlLink":"[mappings] Reformat closing brackets in all .imp files"}},{"before":"5e104d6384c48242ac1c24037461896de64f192a","after":"41e228f6beead74fa5691988221df31c5f26d3e3","ref":"refs/heads/master","pushedAt":"2024-03-31T10:45:50.000Z","pushType":"pr_merge","commitsCount":10,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[doc] Update manpage for stricter mapping syntax","shortMessageHtmlLink":"[doc] Update manpage for stricter mapping syntax"}},{"before":"61af17ec6295dd518b093dadfd9efe1c5dca17d7","after":"5e104d6384c48242ac1c24037461896de64f192a","ref":"refs/heads/master","pushedAt":"2024-03-24T20:00:30.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"[mappings] Add symbol mapping for std::ptrdiff_t\n\nstd::ptrdiff_t should always come from .\n\nFixes issue #1478.","shortMessageHtmlLink":"[mappings] Add symbol mapping for std::ptrdiff_t"}},{"before":"b8284cbaff2e0021b464c828887f76c962b4f63e","after":"61af17ec6295dd518b093dadfd9efe1c5dca17d7","ref":"refs/heads/master","pushedAt":"2024-03-23T12:06:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Move libstdc++ debug/ headers to separate map/file\n\nThe other libstdc++ mappings are mostly generated by a shell pipeline\nand it makes it harder to refresh them if we have a block of\nhand-maintained debug/ headers in the middle.","shortMessageHtmlLink":"Move libstdc++ debug/ headers to separate map/file"}},{"before":"5989280499f914c59ad28576ec64d3d9f568ede3","after":"b8284cbaff2e0021b464c828887f76c962b4f63e","ref":"refs/heads/master","pushedAt":"2024-03-23T11:41:57.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Fix handling function references\n\nAdditional filtering of function references has been removed. It is not\nneeded now because reporting of return type is avoided.\n\nThis fixes reporting of template argument type when the template has no\ndefinition in the translation unit but the full type info is needed\nto build the instantiated function prototype, as well as handling\ninstantiations of regular member functions of class templates. It was\na regression introduced in #1300.\n\n`nodes_to_ignore_` restored after function traversal so as to avoid\nshort-circuiting inside `IwyuBaseAstVisitor::HandleFunctionCall` which\ncould occur because function declaration was already traversed on its\n`DeclRefExpr` handling.","shortMessageHtmlLink":"Fix handling function references"}},{"before":"78472a725b1dd414e0c6ccdef464a8058593d6eb","after":"5989280499f914c59ad28576ec64d3d9f568ede3","ref":"refs/heads/master","pushedAt":"2024-03-18T21:00:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Remove redundant debug/safe_iterator.tcc mapping\n\nI added complete mappings for debug/ GCC headers in\nabc3aeefa0af810e4ec00a2c14bae538568dd8c8, but I failed to notice that\ndebug/safe_local_iterator.tcc was already mapped.\n\nThat leads to an assertion failure for conflicting visibilities for:\n\n include-what-you-use \\\n -Xiwyu --no_default_mappings \\\n -Xiwyu --mapping_file=gcc.stl.headers.imp \\\n ...\n\nRemove the old mapping, it's superseded by the new.","shortMessageHtmlLink":"Remove redundant debug/safe_iterator.tcc mapping"}},{"before":"ed9e7c4c337bf5d579f4900b4b70dec0cd85b97a","after":"78472a725b1dd414e0c6ccdef464a8058593d6eb","ref":"refs/heads/master","pushedAt":"2024-03-18T19:33:08.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"also add uses_allocator","shortMessageHtmlLink":"also add uses_allocator"}},{"before":"95bf03654b431582c632031255687fd5b6744777","after":"ed9e7c4c337bf5d579f4900b4b70dec0cd85b97a","ref":"refs/heads/master","pushedAt":"2024-03-18T19:27:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Remove unused parameters\n\nNo functional change.","shortMessageHtmlLink":"Remove unused parameters"}},{"before":"440e58be250fa1de462f766f4f1cefe05823385a","after":"95bf03654b431582c632031255687fd5b6744777","ref":"refs/heads/master","pushedAt":"2024-03-18T19:26:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kimgr","name":"Kim Gräsman","path":"/kimgr","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/169074?s=80&v=4"},"commit":{"message":"Isolate platform specific headers to a translation unit\n\nIncluding Windows related headers in iwyu_port.h pollutes other\ntranslation units with Windows-specific definitions. Move the function\nGlobMatchesPath to have external linkage instead of being inline and\nmove the platform-specific code to a new file iwyu_port.cc\n\nFixes #1485","shortMessageHtmlLink":"Isolate platform specific headers to a translation unit"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAERPk9kAA","startCursor":null,"endCursor":null}},"title":"Activity · include-what-you-use/include-what-you-use"}