Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Unit tests: pass. 62138 tests passed, 0 failed and 808 were skipped.
clang-tidy: pass.
clang-format: pass.
Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt, test-results.xml
Pre-merge checks is in beta. Report issue. Please join beta or enable it for your project.
Nit: maybe mention "top-level" in the patch?
clang/lib/Sema/SemaCodeComplete.cpp | ||
---|---|---|
4732 | this needs a name and/or comment to describe how it falls back to the primary template if the decl for the specialization isn't known. | |
4736 | this is handled by BaseType->getAsRecordDecl() |
oops, needs some more tests.
clang/lib/Parse/ParseDecl.cpp | ||
---|---|---|
2463 | oops, I missed where this was happening. There are lots of non-vardecl cases where we might use a designated init. | |
clang/lib/Parse/ParseInit.cpp | ||
162 | This callback stuff doesn't seem so idiomatic in the parser from what I've seen - can we be a bit more direct and just pass the location? | |
clang/lib/Sema/SemaCodeComplete.cpp | ||
4732 | as discussed offline, this doesn't handle null, neither does the new caller |
clang/lib/Parse/ParseDecl.cpp | ||
---|---|---|
2463 | see tests for more cases we handle | |
clang/lib/Parse/ParseInit.cpp | ||
162 | it is not just the location though, we are also lacking the information regarding initializers seen so far. there are other occurrences of this callback mechanisms while parsing parenthesized expressions, for similar reasons, lacking the bigger picture. I think it is better to keep those element parsing functions unaware of the outer state, since they mostly don't care or depend on it. | |
clang/lib/Sema/SemaCodeComplete.cpp | ||
4732 | handling it in the new caller instead, as discussed previous caller technically can't have an incomplete type when it reaches this code path. |
Unit tests: fail. 62159 tests passed, 5 failed and 811 were skipped.
failed: libc++.std/language_support/cmp/cmp_partialord/partialord.pass.cpp failed: libc++.std/language_support/cmp/cmp_strongeq/cmp.strongeq.pass.cpp failed: libc++.std/language_support/cmp/cmp_strongord/strongord.pass.cpp failed: libc++.std/language_support/cmp/cmp_weakeq/cmp.weakeq.pass.cpp failed: libc++.std/language_support/cmp/cmp_weakord/weakord.pass.cpp
clang-tidy: pass.
clang-format: pass.
Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt, test-results.xml
Pre-merge checks is in beta. Report issue. Please join beta or enable it for your project.
oops, I missed where this was happening.
There are lots of non-vardecl cases where we might use a designated init.
We won't necessarily know the type in all of them, but it'd be good to at least cover the cases where we do. (Particularly ty{...})