mirror of
https://github.com/github/codeql.git
synced 2026-06-29 16:47:09 +02:00
Why this is needed: - Under K2, top-level declarations from external binaries are attached directly to IrExternalPackageFragment rather than to an IrClass file-class parent. - That bypassed the normal class-source location path, so some external file-class entities ended up without stable binary file locations. - Missing/unstable locations caused drift in tests that depend on external file class member resolution and location facts. What this changes: - Resolve binary paths from IrMemberWithContainerSource (JvmPackagePartSource) via a dedicated getContainerSourceBinaryPath helper. - In KotlinUsesExtractor, when extracting top-level external declarations, attach file-class location from container-source binary path when available. - Track external file classes whose locations were emitted to avoid duplicate hasLocation facts. This targets the K2 external file-class location gap (for example file_classes and external-property-overloads parity). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>