Skip to content

fail eagerly when missing JavaObject mapping#789

Merged
ktoso merged 1 commit into
swiftlang:mainfrom
tiennguyen2310:fix-issue-195
Jun 17, 2026
Merged

fail eagerly when missing JavaObject mapping#789
ktoso merged 1 commit into
swiftlang:mainfrom
tiennguyen2310:fix-issue-195

Conversation

@tiennguyen2310

Copy link
Copy Markdown
Contributor

When translating a non-root Java class, missing the java.lang.Object -> JavaObject mapping could allow generation to continue and produce invalid Swift (without the required JavaObject inheritance).

This now fails eagerly when a Java superclass exists but the JavaObject mapping is unavailable. The regression test clears the mapping while translating java.lang.String as a Swift class and asserts the missing java.lang.Object error.

Test:

  • swift test --filter testMissingJavaObjectMappingFailsEagerly
  • swift test --filter Java2SwiftTests
  • swift-format lint --configuration .swift-format Sources/SwiftJavaToolLib/JavaClassTranslator.swift Tests/SwiftJavaToolLibTests/Java2SwiftTests.swift

Fixes #195.

@tiennguyen2310 tiennguyen2310 requested a review from ktoso as a code owner June 16, 2026 10:50
@ktoso

ktoso commented Jun 16, 2026

Copy link
Copy Markdown
Collaborator

This looks good, thank you!

@tiennguyen2310

Copy link
Copy Markdown
Contributor Author

Thanks. Regarding the failed swift:nightly check, it seems like a compiler crash. The nightly Swift compiler failed on an internal SIL verification pass while building 1 of the package dependencies.

@ktoso

ktoso commented Jun 17, 2026

Copy link
Copy Markdown
Collaborator

Yes, nightly is broken -- not your fault :)

@ktoso ktoso merged commit cc03c10 into swiftlang:main Jun 17, 2026
41 of 42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

If for some reason we're missing java.lang.Object mapping during import, fail eagerly

2 participants