swh:1:snp:a72e953ecd624a7df6e6196bbdd05851996c5e40

sort by:
Revision Author Date Message Commit Date
f298e2e memoize the freevars list in datatype This is intended to make it so that less recursion is needed to check it for bound (or unbound) variables. 09 April 2023, 03:06:15 UTC
1cf5091 simply Union inside UnionAll inside Union during construction (#49279) Allows more opporutunities to discover (and eliminate) repeated components, as well as helping to separate the UnionAll variables into separate domains for subtyping's separability analysis. 08 April 2023, 17:27:34 UTC
197710e Fix debug assert when using module as tparam (#49292) This was an oversight in the implementation of #47749 and caused spurious asserts in debug mode: ``` julia> struct Foo{A, B}; end julia> Foo{Base} julia-debug: /home/keno/julia/src/builtins.c:350: type_object_id_: Assertion `!tv->name->mutabl' failed. ``` 08 April 2023, 08:21:27 UTC
804da71 Recompile sysimage when generate_precompile.jl is changed (#49043) 08 April 2023, 00:25:13 UTC
14afdd2 Silence `gfortran: command not found` in build logs (#49243) Looks like these snuck in after the last round we silenced these warnings. 07 April 2023, 19:40:53 UTC
50606b2 deps: Upgrade OpenBLAS to v0.3.23 (#49283) 07 April 2023, 19:40:01 UTC
1bd8482 subtype: reuse existing allocations when possible (#49277) When part of a type is a subtype of the other part, we can reuse the existing object to represent the result of that part. Additionally, we can sometimes defer allocating this until it is known how long it needs to be and whether it is already present in the type cache. 07 April 2023, 19:39:20 UTC
02704d9 normalize unions made in subtyping (#49276) We observed a case where simple_tmeet made a Union of egal things, which is undesirable. There also was no sorting of the result, as it normally done, and theoretically, simplification with an omit_bad_union to remove `S` could similar result in a Union that should be further simplified to remove redundancies. ``` Union{Union{Val{T}, S} where T<:AbstractString, Union{Val{T}, Int64} where T<:AbstractString} where S ``` (In principle, that simplification might also be possible to do during the original jl_type_union call when flattening it: see #49279) 07 April 2023, 18:30:13 UTC
0c24073 slightly optimize has_free_typevars (#49278) Manually convert these to tail-recursive form, so the stack can be unwound directly as soon as it finds an answer in many common cases (DataType with many simple UnionAll wrappers). 07 April 2023, 18:26:54 UTC
a1013e7 more robust validation of allocation type (#49269) We generally hit the runtime in pretty specific places when allocations look funky (because they are missing a typevar bound, so inference is not too willing to deal with it). Try to throw an error in those cases before those can get allocated and cause problems later from being non-concrete objects. Fix #49203 07 April 2023, 17:25:31 UTC
8baf10e inference: cleanup some lattice operations (#49271) The smerge function was bypassing some of the limits of tmerge, which was undesirable, though the impact is apparently negligible. Co-authored-by: Shuhei Kadowaki <40514306+aviatesk@users.noreply.github.com> Co-authored-by: Mosè Giordano <giordano@users.noreply.github.com> 07 April 2023, 17:24:23 UTC
f2cbca6 Merge pull request #49261 from N5N3/some-simple-fast Some simple intersection/subtyping performance tuning. 06 April 2023, 18:20:02 UTC
def2dda make default worker pool an AbstractWorkerPool (#49101) Changes [Distributed._default_worker_pool](https://github.com/JuliaLang/julia/blob/5f5d2040511b42ba74bd7529a0eac9cf817ad496/stdlib/Distributed/src/workerpool.jl#L242) to hold an `AbstractWorkerPool` instead of `WorkerPool`. With this, alternate implementations can be plugged in as the default pool. Helps in cases where a cluster is always meant to use a certain custom pool. Lower level calls can then work without having to pass a custom pool reference with every call. 06 April 2023, 02:48:02 UTC
1bf65b9 Log only if something was invalidated (#49264) 05 April 2023, 17:46:56 UTC
6bfb7fb move out Test from the sysimage (#49134) 05 April 2023, 16:23:38 UTC
5235bfb Avoid re-intersection for simple case 05 April 2023, 09:27:01 UTC
f1de0a9 Skip the subtype check in `rename_unionall` 05 April 2023, 09:27:01 UTC
280f999 Enable seperatable subtyping for equality check. 05 April 2023, 09:26:44 UTC
bd1a664 Fix LazyString building with non-ASCII preceding $ (#49248) 05 April 2023, 06:55:24 UTC
8be6f0f move out LazyArtifacts from the sysimage (#49130) 05 April 2023, 06:53:25 UTC
80c2ec4 move out SharedArrays from the sysimage (#49131) 05 April 2023, 06:52:45 UTC
4134e93 use Pkg.precompile during loading via Pkg hook (#49242) 05 April 2023, 02:28:02 UTC
96812bd subtype: allocate space for small environments on the stack (#49215) For comparisons of expressions with less than about 4-8 variables, allocate all of the save space on the stack instead of a temporary short-lived svec. 04 April 2023, 20:34:39 UTC
93df7e2 (re-)allow include_dependency(directory) (#49244) same for symlinks, adjust docs accordingly and clarify that it refers to the mtime 04 April 2023, 14:32:51 UTC
822d9b8 Do not create sigwait() thread when JL_OPTIONS_HANDLE_SIGNALS_OFF (#48957) We already disable part of the signal-handling machinery, but it seems that this piece was missed for an unknown reason. This is important to disable so that, e.g. `sigwait()` can be received reliably by the main application (which may even be another copy of Julia). 04 April 2023, 13:28:28 UTC
50f50a7 Make mark_obj32 like the 16 and 8 bit function by (#49240) pushing the parent into the remset 04 April 2023, 11:52:20 UTC
3f0f8d9 effects: improve effect analysis for `isdefined` call (#49226) When applied to non-immutable object, `isdefined_effects` should taint `:consistent`-cy by `CONSISTENT_IF_INACCESSIBLEMEMONLY` instead of `ALWAYS_FALSE`. This commit also fixes up its `inaccessiblememonly` modeling. 04 April 2023, 08:19:54 UTC
b258051 move out Profile from the sysimage (#49132) 04 April 2023, 04:42:50 UTC
2ec27e9 Merge pull request #48913 from JuliaLang/avi/irsv inference: refactoring to allow irinterp to perform `:call` inference 04 April 2023, 00:09:44 UTC
98988d8 REPLCompletions: replace `get_type` by the proper inference (#49206) This PR generalizes the idea from #49199 and uses inference to analyze the types of REPL expression. This approach offers several advantages over the current `get_[value|type]`-based implementation: - The need for various special cases is eliminated, as lowering normalizes expressions, and inference handles all language features. - Constant propagation allows us to obtain accurate completions for complex expressions safely (see #36437). Analysis on arbitrary REPL expressions can be done by the following steps: - Lower a given expression - Form a top-level `MethodInstance` from the lowered expression - Run inference on the top-level `MethodInstance` This PR implements `REPLInterpreter`, a custom `AbstractInterpreter` that: - aggressively resolve global bindings to enable reasonable completions for lines like `Mod.a.|` (where `|` is the cursor position) - aggressively concrete evaluates `:inconsistent` calls to provide reasonable completions for cases like `Ref(Some(42))[].|` - does not optimize the inferred code, as `REPLInterpreter` is only used to obtain the type or constant information of given expressions Aggressive binding resolution presents challenges for `REPLInterpreter`'s cache validation (since #40399 hasn't been resolved yet). To avoid cache validation issue, `REPLInterpreter` only allows aggressive binding resolution for top-level frame representing REPL input code (`repl_frame`) and for child `getproperty` frames that are constant propagated from the `repl_frame`. This works, since 1.) these frames are never cached, and 2.) their results are only observed by the non-cached `repl_frame` `REPLInterpreter` also aggressively concrete evaluate `:inconsistent` calls within `repl_frame`, allowing it to get get accurate type information about complex expressions that otherwise can not be constant folded, in a safe way, i.e. it still doesn't evaluate effectful expressions like `pop!(xs)`. Similarly to the aggressive binding resolution, aggressive concrete evaluation doesn't present any cache validation issues because `repl_frame` is never cached. Also note that the code cache for `REPLInterpreter` is separated from the native code cache, ensuring that code caches produced by `REPLInterpreter`, where bindings are aggressively resolved and the code is not really optimized, do not affect the native code execution. A hack has also been added to avoid serializing `CodeInstances`s produced by `REPLInterpreter` during precompilation to workaround #48453. closes #36437 replaces #49199 03 April 2023, 20:29:54 UTC
10e2001 inference: refactoring to allow irinterp to perform `:call` inference This commit implements a significant refactoring of the inference routines, which is necessary to enable `:call` inference in irinterp. While this commit does not yet enable `:call` inference, a subsequent small commit will do so. This is because external `AbstractInterpreter`s first need to adjust their code for this refactoring, and in the event of a regression detected by the recursive `:call` inference, we will be able to simply revert the small commit. Additionally, this commit improves the robustness of irinterp by allowing it to handle invoke calls, which currently result in a crash. TODOs: - [x] implement a simple recursion detection mechanism for `IRInterpretationState` - [x] add proper invalidation support - [x] allow constant inference from semi-concrete interpretation - [x] propagate callinfo and allow double inlining 03 April 2023, 06:12:05 UTC
46813d3 optimize `Core.Compiler` a bit (#49227) 03 April 2023, 04:56:52 UTC
ff9435c Delete codesign.sh (#48545) 03 April 2023, 00:03:24 UTC
a612220 effects: add docstrings to the type-based-effect-analysis queries (#49222) 02 April 2023, 06:28:53 UTC
a20a3d0 effects: power-up effects analysis for array operations (#47154) Mostly by making use of newly added `:inaccessiblememonly` effect property. Now we can fold simple vector operations like: ```julia julia> function simple_vec_ops(T, op!, op, xs...) a = T[] op!(a, xs...) return op(a) end; simple_vec_ops (generic function with 1 method) julia> for T = Any[Int,Any], op! = Any[push!,pushfirst!], op = Any[length,size], xs = Any[(Int,), (Int,Int,)] let effects = Base.infer_effects(simple_vec_ops, (Type{T},typeof(op!),typeof(op),xs...)) @test Core.Compiler.is_foldable(effects) end end julia> code_typed() do simple_vec_ops(Any, push!, length, Any,nothing,Core.Const(1)) end 1-element Vector{Any}: CodeInfo( 1 ─ return 3 ) => Int64 ``` 02 April 2023, 05:27:09 UTC
ce64b80 Merge pull request #48853 from JuliaLang/avi/boundscheck effects: assume `:nothrow`-ness more when bounds checking is manually turned off 02 April 2023, 01:09:54 UTC
b8057f3 Don't hardcode LLVM version number (#49051) 01 April 2023, 20:39:10 UTC
121dca6 NEWS: add news for task-local RNG split change (#49217) 01 April 2023, 20:21:45 UTC
8b86d91 effects: analyze bounds checking of `getfield` properly This allows us to prove `:nothrow`-ness of `getfield` when bounds checking is turned off manually. It still taints `:nothrow` when a name of invalid type is given. 01 April 2023, 15:16:10 UTC
e022ab2 effects: avoid `UndefRefError` error check when analyzing `arrayset` This helps us prove `:nothrow`-ness of `arrayset` when bounds checking is turned off manually. 01 April 2023, 15:15:12 UTC
1eee6ef Make :open ccall use variadic cconv (#49212) 01 April 2023, 03:25:19 UTC
7618e64 Tasks: don't advance task RNG on task spawn (#49110) 31 March 2023, 23:22:14 UTC
8327e85 Derive T_size from DataLayout (#49188) 31 March 2023, 21:27:37 UTC
dfc2cb5 base/versions_git.sh fix when GNU date is present on BSD systems (#49184) Even on BSD systems, if `date --version` succeeds and prints `GNU coreutils`, call it with GNU options. 31 March 2023, 20:58:54 UTC
55dcfca complete `ismutationfree` fixup (#49209) `ismutationfree(Vector{Any})` is fixed in #48868, but there are other array types that are instantiated within jltypes.c and thus annotated as `ismutationfree` wrongly. This commit fixes it up by covering all the builtin array types. 31 March 2023, 19:31:46 UTC
8b19f5f Merge pull request #49185 from gbaraldi/image_bit Add bit to the GC tag to turn GC in image search O(1) and also increase gc interval when encountering many pointers 31 March 2023, 16:50:26 UTC
cd394eb Merge pull request #49176 from Tokazama/llvm-ptr Fix LLVMPtr subtyping 31 March 2023, 16:01:16 UTC
77de8db Fix typo in Base.binomial overflow message (#49204) 31 March 2023, 14:45:39 UTC
450c1fa Fix interval for many pointers 31 March 2023, 13:30:08 UTC
9001ea0 allow more statements in generate_precompile.jl (#49200) 31 March 2023, 13:23:25 UTC
a43b1ad show: support toplevel `InferenceResult` (#49202) 31 March 2023, 11:05:20 UTC
fe1e1c4 Update Allocs.jl (#49169) For most applications the sample rate of 1/1000 is way too low. This will require manually setting a rate for production use, but IMO it's a lot better to make the default be taylored towards interactive/beginner use rather than deployment. 30 March 2023, 18:36:03 UTC
ceafd6c fixed 2 typo in doc (#49192) 30 March 2023, 11:09:43 UTC
da1ce65 Add iterator for method specializations (#49116) There have been longstanding reasons to want an API for extracting all extant specializations of a method, but this is even more true after #49071. Co-authored-by: Shuhei Kadowaki <40514306+aviatesk@users.noreply.github.com> Co-authored-by: Jameson Nash <vtjnash@gmail.com> 30 March 2023, 09:31:25 UTC
2092000 fix `obviously_disjoint` for Union Types (#49177) 30 March 2023, 06:57:12 UTC
e5c2c51 fix(REPL): using/import statements should on top-level, #49041 (#49098) 30 March 2023, 06:39:48 UTC
329f92c Handle `ProcessChain` in open(f, cmd, ..) (#49166) 30 March 2023, 06:38:56 UTC
001505a Merge pull request #49189 from JuliaLang/vc/mk_pkgimage_2 Fix makefile for stdlib caching 30 March 2023, 03:22:06 UTC
9169c19 fix printed repr of `:(using A: (..) [as xxx])` (#49178) We already have a special case for the `.` symbol, so it would be reasonable to have another special case for `(..)`. 30 March 2023, 01:57:19 UTC
7ca912f Remove left-over code from special handling of bindings (#49180) 30 March 2023, 00:51:11 UTC
0b15e7e add missing dependency on sysimage 30 March 2023, 00:49:11 UTC
7d8322d build checkbounds default last to make them the first to try 30 March 2023, 00:49:11 UTC
cdc37ce rewrite DW_TAG_compile_unit during aotcompile (#49183) The macOS linker requires these to be unique due to a bug, and we do not care about this value at all as it does nothing, so just make it something unique. However, keep the directory as ".", since it uses that to compose the DW_AT_decl_file values for its subprograms. Also try to save a little memory, since we have to leak all of these objects (per LLVMContext), and we would like to avoid that. Fix #49152 Fix #49151 Fix #49153 29 March 2023, 21:16:52 UTC
d586b0c Add bit to the GC tag 29 March 2023, 21:09:22 UTC
8f78a94 throw runtime `TypeError` on invalid ccall symbol (#49142) Throw runtime `TypeError` on invalid ccall or cglobal symbol, rather than throwing an internal compilation error. Closes #49141 Closes #45187 Co-authored-by: Jameson Nash <vtjnash@gmail.com> 29 March 2023, 18:43:37 UTC
bc33c81 Binary search for pkgimage metadata (#48940) Co-authored-by: Jameson Nash <vtjnash@gmail.com> 29 March 2023, 15:09:42 UTC
887ff5a Fix LLVMPtr subtyping 29 March 2023, 04:52:08 UTC
38d24e5 Merge pull request #49133 from N5N3/interbug-find Intersection: fix incorrect `Vararg` length. 29 March 2023, 01:10:26 UTC
e95839f Optimize reverse(::CartesianIndices, dims=...) (#49112) * Optimize reverse(::CartesianIndices, dims=...) Optimize reverse(::CartesianIndices, dims=...) Correct tests and add stability test Remove whitespaces in reversed CartesianIndices Make funcs constpropagable and refactor Add tests for reverse(CartesianIndices; dims=:) * Typo * fix ambiguity and const-propagation * Fix empty `dims` --------- Co-authored-by: N5N3 <2642243996@qq.com> 29 March 2023, 01:09:26 UTC
f79fdf9 fix several invalid code blocks in docstrings (#49174) 28 March 2023, 22:47:39 UTC
58b7e0a Emit bitcode, reserve more space for native code dumping (#49173) 28 March 2023, 21:27:52 UTC
68ab859 Format arg-name in ast.scm (#49163) 28 March 2023, 20:49:11 UTC
d8fa3c8 Mark llvm::Any::TypeId as global in julia.expmap (#49124) The dynamic linker needs to unify `llvm::Any::TypeId` across DSOs. In our case `libjulia-codegen` and `libLLVM`. See https://github.com/llvm/llvm-project/blob/2bc4c3e920ee078ef2879b00c40440e0867f0b9e/llvm/include/llvm/ADT/Any.h#L30 Fixes: #49121 28 March 2023, 18:23:08 UTC
045a392 doc: clarify that the unsigned type is promoted to (#48973) Clarify that the unsigned type is promoted to, if the types differ only in signedness. This choice was explained by Karpinski in https://github.com/JuliaLang/julia/issues/9292#issuecomment-943740160 but wasn't fully clear in the documentation. 28 March 2023, 16:11:08 UTC
7d2491d simplify default inner constructor for struct without types (#49137) Removes the `convert` calls in new for default constructor of structs defined without any types declared. 28 March 2023, 15:35:46 UTC
94c884e simplify default outer constructor for struct (#49146) Removes the `convert` calls in new for default outer constructor. I don't expect this will have a visible difference in behavior, but may help avoid some edges and specializations improving latency. 28 March 2023, 15:34:41 UTC
2da4c3e effects: Do not over-taint :terminates in abstract cycle (#49119) We already infer non-termination as part of the conservative effects we assume at the point in the call-graph that recursion is detected. As a result, it should be sound to allow this to propagate through the Effects system naturally rather than eagerly marking our callers as non-terminating. Doing this is important to avoid tainting non-termination from purely abstract cycles, where inference is forced to analyze methods that do not correspond to real calls at runtime, such as `Base._return_type`. Resolves #48983. 28 March 2023, 14:19:44 UTC
7341fb9 Subtype: Add a fastpath for nested constructor with identity name. (#49159) * Subtype: Add a fastpath for nested constructor with identity name. * Update src/subtype.c --------- Co-authored-by: Jameson Nash <vtjnash@gmail.com> 28 March 2023, 05:15:43 UTC
39fd7dd Make sure read hasn't failed before updating position. (#49158) I noticed this when I was yoinking the code for my own project. When `read()` fails and `errno` is `EINTR`, it re-reads from the wrong position. 28 March 2023, 03:29:23 UTC
6b934f9 Add ITTAPI source for offline (#49022) * Add ITTAPI sources for offline build Co-authored-by: Milan Bouchet-Valat <nalimilan@club.fr> 27 March 2023, 14:28:49 UTC
fa6db2f codegen: decide opaque pointer usage at runtime (#49128) Co-authored-by: Prem Chintalapudi <prem.chintalapudi@gmail.com> 27 March 2023, 00:28:17 UTC
4fd52b4 Export JULIA_DEPOT_PATH in pkgimage.mk (#49161) 26 March 2023, 21:08:22 UTC
1944ef6 print NamedTuple types using the macro format (#49117) 26 March 2023, 06:09:50 UTC
4853a52 be careful about signed zero for complex real isequal (#48997) 25 March 2023, 22:21:21 UTC
88a1fc7 Offset to indices in (unsafe_)copyto docstring (#49147) 25 March 2023, 11:07:24 UTC
16e9f18 minor follow up on #48996 (#49129) - removed unnecessary `Union`-signature - use one-liner definition when applicable - add type assertion to make it more robust against invalidation 25 March 2023, 03:47:29 UTC
508992c replace `NULL` with a innervar 24 March 2023, 21:33:54 UTC
a922b59 ensure C++ does not free the DebugRegistry while we are using it (#49139) 24 March 2023, 21:24:18 UTC
e90f6a3 restrict codeunit effects slightly (#49136) * restrict codeunit effects slightly 24 March 2023, 19:40:34 UTC
1b7f98a channels: Don't rely on tight timing constraints (#49090) The test was relying on two particular non-guaranteed timing races: 1. That the 0.5s wait task was started within 0.5s of the timedwait starting. 2. That the timedwait finished within 0.5 seconds of its deadline. Neither of these are guaranteed. The second of these was already made non-fatal with a warning print. However, I don't like warning prints in tests. They should either pass or fail. Nobody looks at the output unless the tests fail, so change the tests to: 1. Add extra synchronization to solve the race condition (1) by making sure the sleep starts before the timedwait. 2. Instead of doing a long wait, just have a synchronization channel that will never be made active. In particular, the thing that this test checks is that the timeout in `timedwait` actually works, and doesn't return too early. This arrangement checks both of those properties without unduly tight timing constraints. 24 March 2023, 18:51:42 UTC
f78b3a6 Prefer blocked LAPACK routines for generalized eigen (#49037) 24 March 2023, 18:21:08 UTC
cac267c Add pkgimage.mk to auto-parallelize pkgimage caching for stdlibs (#48069) 24 March 2023, 16:04:03 UTC
7d32099 Quieter tests (#49093) 24 March 2023, 15:45:23 UTC
b9a334f small cleanup to loading code (#49078) 24 March 2023, 15:08:26 UTC
60e7d18 restore support for cross-compile builds (#49081) Defaults to gcc after autodetection. Regression caused by ee6115bbb2c. 24 March 2023, 15:08:00 UTC
685da8f fix malloc-stack CI failure (#49082) We see Windows CI fail often here, and we don't actually need this memory--only the first thread should initialize it. (indeed, we were temporarily corrupting these data-structures in the process by reinitializing them, though that was not typically detectable.) From worker 7: Exception: EXCEPTION_ACCESS_VIOLATION at 0x7ffa26726e87 -- jl_makecontext at C:/workdir/src\win32_ucontext.c:67 From worker 7: in expression starting at C:\buildkite-agent\builds\win2k22-amdci6-6\julialang\julia-master\julia-ceffaee345\share\julia\test\ccall.jl:1066 From worker 7: jl_makecontext at C:/workdir/src\win32_ucontext.c:67 From worker 7: jl_install_thread_signal_handler at C:/workdir/src\signals-win.c:490 From worker 7: jl_init_root_task at C:/workdir/src\task.c:1568 From worker 7: ijl_adopt_thread at C:/workdir/src\threading.c:414 From worker 7: unknown function (ip: 000001d791a58969) From worker 7: uv__queue_work at /workspace/srcdir/libuv\src\threadpool.c:305 From worker 7: worker at /workspace/srcdir/libuv\src\threadpool.c:122 From worker 7: uv__thread_start at /workspace/srcdir/libuv\src/win\thread.c:111 From worker 7: beginthreadex at C:\Windows\System32\msvcrt.dll (unknown line) From worker 7: endthreadex at C:\Windows\System32\msvcrt.dll (unknown line) From worker 7: BaseThreadInitThunk at C:\Windows\System32\KERNEL32.DLL (unknown line) From worker 7: RtlUserThreadStart at C:\Windows\SYSTEM32\ntdll.dll (unknown line) From worker 7: Allocations: 352796158 (Pool: 352389694; Big: 406464); GC: 722 24 March 2023, 14:46:55 UTC
dc3953d Reland: expose caller world to GeneratedFunctionStub (#48766) Expose the demanded world to the GeneratedFunctionStub caller, for users such as Cassette. If this argument is used, the user must return a CodeInfo with the min/max world field set correctly. Make the internal representation a tiny bit more compact also, removing a little bit of unnecessary metadata. Remove support for returning `body isa CodeInfo` via this wrapper, since it is impossible to return a correct object via the GeneratedFunctionStub since it strips off the world argument, which is required for it to do so. This also removes support for not inferring these fully (expand_early=false). Also answer method lookup queries about the future correctly, by refusing to answer them. This helps keeps execution correct as methods get added to the system asynchronously. This reverts "fix #25678: return matters for generated functions (#40778)" (commit 92c84bf3865403355af463b5a1dee42bf7143592), since this is no longer sensible to return here anyways, so it is no longer permitted or supported by this macro. Fixes various issues where we failed to specify the correct world. Note that the passed world may be `typemax(UInt)`, which demands that the generator must return code that is unspecialized (guaranteed to run correctly in any world). Co-authored-by: Jameson Nash <vtjnash@gmail.com> 24 March 2023, 13:56:41 UTC
d7df15d add back the exception to the error logging when loading an extension fails (#49075) 24 March 2023, 13:50:21 UTC
b745293 Fix intersection bug caused by intvalued clean. After e528b304f0, intersection would increase `N`‘s `occurs_inv` when compare `Vararg{Any}` and `Vararg{Any,N}` for reintersection hint. Here we just need to check if `ylv` is unbounded. 24 March 2023, 12:35:20 UTC
f8c6be4 Make subtype handle offset from intersection correctly. This enable more subtyping check during intersection. Also move L-R offset into `jl_stenv_t` to save 16bits for each varblinding. 24 March 2023, 11:20:29 UTC
back to top