After an innocuous change in -next that modified a structure that
contains __counted_by, clang-19 start crashing when building certain
files in drivers/gpu/drm/xe. When assertions are enabled, the more
descriptive failure is:
clang: clang/lib/AST/RecordLayoutBuilder.cpp:3335: const ASTRecordLayout &clang::ASTContext::getASTRecordLayout(const RecordDecl *) const: Assertion `D && "Cannot get layout of forward declarations!"' failed.
According to a reverse bisect, a tangential change to the LLVM IR
generation phase of clang during the LLVM 20 development cycle [1]
resolves this problem. Bump the version of clang that enables
CONFIG_CC_HAS_COUNTED_BY to 20.1.0 to ensure that this issue cannot be
hit.
Link:
|
||
|---|---|---|
| .. | ||
| .gitignore | ||
| .kunitconfig | ||
| Kconfig | ||
| Makefile | ||
| calibrate.c | ||
| do_mounts.c | ||
| do_mounts.h | ||
| do_mounts_initrd.c | ||
| do_mounts_rd.c | ||
| init_task.c | ||
| initramfs.c | ||
| initramfs_internal.h | ||
| initramfs_test.c | ||
| main.c | ||
| noinitramfs.c | ||
| version-timestamp.c | ||
| version.c | ||