swift
1245c7d2 - [AutoDiff] Fix member loading for AD-generated structs/enums.

Commit
5 years ago
[AutoDiff] Fix member loading for AD-generated structs/enums. Fix `IterableDeclContext::loadAllMembers` for structs/enums generated during differentiation transform. Previously, this patch disabled `loadAllMembers` for AD-generated structs/enums: https://github.com/apple/swift/commit/7e89bee39bfda4624f04dcc2c8d53599fbde6191 This caused a SIL verification failure for test/AutoDiff/autodiff_generated_decl_member_loading.swift because enum members were not loaded. Now, `loadAllMembers` is re-enabled. Other necessary fixes: - Generated structs/enums are set to implicit. - Since implicit declarations are not printed via `-emit-sil`, data structure generation tests now rely on `-Xllvm -debug-only=differentiation`. - Remove calls to `NominalTypeDecl::setBraces`. - Strategically set `SourceLoc` for `EnumElementDecl` and `EnumCaseDecl` to prevent duplicate enum cases from printing. Resolves TF-805.
Author
Committer
Parents
Loading