-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
workaround subtyping bugs via construction
The subtyping algorithm is unable to correctly handle the case where the UnionAll bounds and swapped with other covariant bounds This works around that issue during construction. Unfortunately, this often triggers the more serious subtyping design bug referenced in subtype.c, causing frequent segfaults: 873 // TODO this is not strictly correct, but we don't yet have any other way for 874 // e.g. the argument `Int` to match a `::DataType` slot. Most correct would be: 875 // Int isa DataType, Int isa Type{Int}, Type{Int} more specific than DataType, 876 // !(Type{Int} <: DataType), !isleaftype(Type{Int}), because non-DataTypes can 877 // be type-equal to `Int`. fix #23278
- Loading branch information
Showing
1 changed file
with
147 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters