[qt/clang/llvm]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/clang/llvm Pushed by mirror-service into branch 'upstream/users/ojhunt/oliver-vs-expansion-statements'. Changed from 92aeb06977b61c87c9f6f6ddae3030053b47ee70 to 0a6eec17de6ccae00a6c89bbe11caea0b0716ebd Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository. This change contains the following new commits: Git commit 0a6eec17de6ccae00a6c89bbe11caea0b0716ebd by Oliver Hunt on 24/07/2026 at 22:05.. [Sema] Skip expansion statements when determing local extern context (#210512) This bug showed up as a failed assertion that was asserting that if not in a function or method context we should be in the global/file context. The root cause is that when determining the linkage context for a decl we were failing to account for the existence of expansion contexts. Ignoring the assertion failure, the functional effect of this is that we would fail to detect incorrect local extern declarations inside expansion contexts. The fix here is to make sure that we use `getEnclosingNonExpansionStatementContext()` to find the true DeclContext for the current scope. The initial report only identified local extern function declarations but the same bug occurred with extern var decls, but the path did not lead to an assertion firing, just incorrect behaviour. Thanks to Sirraide for explaining why this was going wrong, and confirming this was the correct fix. Also fixes #211912 https://invent.kde.org/qt/clang/llvm/-/commit/0a6eec17de6ccae00a6c89bbe11caea0b0716ebd