sort by:
Revision Author Date Message Commit Date
1177b54 Merge pull request #50315 from JuliaLang/pc/fix-mssa-preserve Fix MemorySSA preservation in julia-licm 28 June 2023, 09:46:52 UTC
5c070f4 Rework symmetric generalized `eigen`/`eigvals` (#49673) 28 June 2023, 05:29:00 UTC
014f8de Align meaning for effects and IR flags (#50313) This fixes a longstanding todo where the IR_FLAG_EFFECT_FREE flag actually required both :effect_free and :nothrow. After this PR, it is equivalent to :effect_free only. The mismatch in meaning here caused #50311. `Symbol(::String)` is :effect_free, but not :nothrow. As a result, setting IR_FLAG_EFFECT_FREE on it was not legal. Later, irinterp did discover that it was nothrow and set IR_FLAG_NOTHROW, but did not have sufficient information to know that it was also :effect_free, so it could not set that flag. With this PR, IR_FLAG_EFFECT_FREE is set early in inference, so once irinterp discovers IR_FLAG_NOTHROW, the call becomes DCE-eligible as desired. Fixes #50311. 28 June 2023, 03:44:50 UTC
9dc2991 implement concurrent sweeping (#48969) Implements concurrent sweeping of fully empty pages. Concurrent sweeping is disabled by default and may be enabled through the --gcthreads flag. Co-authored-by: Valentin Churavy <v.churavy@gmail.com> 28 June 2023, 01:25:51 UTC
f5faa08 Fix small bug in memorydef for memset 27 June 2023, 23:16:29 UTC
5ea7f0b Add some memoryssa preservation tests 27 June 2023, 22:49:58 UTC
be1d11a Fix memoryssa preservation bug 27 June 2023, 21:49:58 UTC
ba0e484 Add section about multithreaded linear algebra to performance tips (#50124) * Add section about multithreaded linear algebra to performance tips * Mention linear algebra backends --------- Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com> 27 June 2023, 20:41:56 UTC
290c619 AllocOpt: Handle objref with no preserve_end in a single block. (#50277) This fixes the AllocOpt pass when there is a single block and no gc_preserve_end. The dominator tree traversal now considers the starting (gc_preverse_begin) block as well and does not introduce a lifetime end when there is no gc_preserve_end for the objref. 27 June 2023, 20:21:14 UTC
3b854f4 Fix uniquerep predicate in codegen (#50295) Fixes #50293. This code probably predates us being clear on what the uniquerep predicate is. 27 June 2023, 20:19:43 UTC
0e147eb irinterp: Add handling for :throw_undef_if_not (#50303) This addresses an existing TODO to terminate irinterp on discovering a :throw_undef_if_not that is dead. The underlying infrastructure to do this was added in #49692, so this just needed to be wired up properly. 27 June 2023, 16:13:40 UTC
6f26e4f Throw on non-promotion in fallback `UnitRange` constructor (#50292) * Throw on promotion failure in UnitRange * rename variables 27 June 2023, 13:53:31 UTC
fc8b700 Docs: Bang has other meaning for IO and RNG functions (#50138) * Docs: Bang has other meaning for IO and RNG functions I have seen multiple people ask why functions such as `write` or `rand` does not end with a `!`, given that they mutate the input IO or RNG object. Mention in the style guide that `!` means something slightly different for functions taking IO or RNG arguments. * Update doc/src/manual/style-guide.md Co-authored-by: Thomas Christensen <tchr@mit.edu> * Update doc/src/manual/style-guide.md Co-authored-by: Thomas Christensen <tchr@mit.edu> * Update doc/src/manual/style-guide.md Co-authored-by: Lilith Orion Hafner <lilithhafner@gmail.com> * Increment -> advance --------- Co-authored-by: Thomas Christensen <tchr@mit.edu> Co-authored-by: Lilith Orion Hafner <lilithhafner@gmail.com> 27 June 2023, 12:02:19 UTC
76c906e Remove unnecessary methods for `CartesianIndices` (#50258) * Remove unnecessary methods for CartesianIndices * remove IteratorSize * Add tests 27 June 2023, 04:48:15 UTC
269d350 Remove obsolete admonition from asyncmap docsttring (#50297) 26 June 2023, 18:56:38 UTC
8630576 Reduce memory usage during image build (#50237) 26 June 2023, 16:06:42 UTC
48c92c1 initialize prev_nold and nold in gc_reset_page (#50289) 26 June 2023, 15:29:41 UTC
0d52f8d SROA (mutable): re-compute the type for inserted phi nodes (#50294) Fixes the mutable case of #50285. closes #50285 26 June 2023, 13:21:03 UTC
aa9b9d0 compact: Propagate IR_FLAG_REFINED (#50286) This is a more invasive version of #50281, implementing alternative 2. Because this solves the same problem, the motivation is the same, so quoth much of the commit message: In #49340, I added an ir flag (currently only set by sroa) to allow sparse-reinference of ir after optimization passes that may improve type information. However, as currently implemented, this flag gets dropped when the IR is compacted, defeating the purpose of the flag, because it can no longer be reliably used for sparse re-inference. This commit adds a special `Refined` marker in ssa_rename that lets compact propagate the IR_FLAG_REFINED flag to any users of statements that may have been compacted away. 26 June 2023, 09:36:20 UTC
d01b8cd Add type assertion to inner HermOrSym constructor (#50282) 26 June 2023, 09:06:22 UTC
ed338d0 lattice: Restore `tmerge_fast_path` for optimizer lattice (#50291) This function is slightly misnamed, because, while it does perform some fast pathing, the rest of the tmerge functions assume it has been run. When I removed the OptimizerLattice in #50257, we accidentally lost the call to `tmerge_fast_path` in the optimizer_lattice path, regressing tmerge quality in the optimizer (which admittedly we don't use a lot, but I did just add another use for in #50287). The proper fix is probably to split the tmerge into a helper that always calls the fast path and then delegates to the current implementation for everything else, but for now, just try moving the fast path to the start of the PartialsLattice, which should restore correctness and have reasonable performance, since there's only a handful of pointer checks between the entry to the inference tmerge and the partials lattice. 26 June 2023, 07:27:33 UTC
879f6d4 SROA: re-compute the type for inserted phi nodes (#50287) Fixes the immutable case of #50285. 25 June 2023, 18:12:43 UTC
39a4013 Fix indexing error in TwoPhaseDefUseMap (#50280) There was an off-by-one in the indexing for TwoPhaseDefUseMap, causing def-use chains to not be properly visited. We don't use this functionality much in base, because it's only active for irinterp on functions with loops that were shown to terminate, which the compiler currently does not generally have the power to do, but I saw it in some downstream experiments. 25 June 2023, 16:23:11 UTC
dd1f03d Mild `AbstractQ` review and refactoring (#49714) 25 June 2023, 12:01:20 UTC
5939e2d Improve scalability of page allocator (#50137) Reduces contention in allocation heavy parallel workloads. 25 June 2023, 08:57:17 UTC
406ba12 add handling of `sqrt()` function for empty matrices (#50270) 24 June 2023, 06:15:23 UTC
fdc50d8 Update docstring for `StackFrame.linfo` (#49971) 24 June 2023, 05:59:34 UTC
f2c6580 `SuiteSparse_jll`: only`dlopen` the libraries if `Base.USE_GPL_LIBS` is true (#50267) 24 June 2023, 03:42:35 UTC
c59468a Limit memory use during 32bit build (#50272) Co-authored-by: Gabriel Baraldi <baraldigabriel@gmail.com> 24 June 2023, 00:52:11 UTC
7b565e3 Run llvmpasses tests with opaque pointers (#50266) 23 June 2023, 21:25:09 UTC
85f19de Document JULIA_CPU_TARGET in environment-variables.md (#50147) 23 June 2023, 18:05:02 UTC
c0f623d Small fix to running-external-programs.md (#50220) The `run` method no longer throws an `ErrorException` on failure. It currently throws a `ProcessFailedException`. 22 June 2023, 21:34:20 UTC
d138701 Merge pull request #50264 from JuliaLang/kp/fix-full-build Fix `-full` tarball 22 June 2023, 19:58:57 UTC
7785db7 Check that we don't name LLVM constants (#50263) 22 June 2023, 17:43:50 UTC
a8d76c6 typeintersect: fix `constraintkind` for non-covariant var (#50209) Co-authored-by: Jameson Nash <vtjnash+github@gmail.com> 22 June 2023, 16:20:54 UTC
07f0525 Tweak cache pidlocking pt. 2 (#50254) 22 June 2023, 16:20:10 UTC
ec33194 Remove type_lift_pass!/OptimizerLattice (#50257) This pass (which has become somehwat misnamed) was inserting error checks, both for undefined slots and undefrefs from sroa'd getfields (at least in theory - this broke at some point - see #50250). It accomplished this partly by using the OptimizerLattice, which adjoins the `MaybeUndef` lattice element to the ordinary incidence lattice. This lattice element indicates that the SSAValue may potentially have come from an undef slot and gives it special semantics inside `:isdefined` and `:undefcheck`. However, in our more recent formalization of lattices, this element is ill-defined. It is not valid to widen it, because doing so would change semantics and cause crashes. It would be possible to have a correct version of this element, but it would require inverting the meaning (i.e. having all types be maybe-undef and using a NotUndef lattice element). However, such a change would be expensive and not worth it. This has been causing me some headaches downstream when trying to use custom lattices and custom pass pipelines, so I had some extra motivation to do something about it. This PR just does away with all this complexity. SSA conversion and SROA now directly insert the requisite `:throw_undef_if_not` checks. This does increase the size of the IR somewhat earlier in the pipeline, but on the other hand it saves a full scan over the IR later in the pipeline, so it's probably a was overall. While we're here, we fix #50250 by properly inserting the requistie phi nest inside SROA. 22 June 2023, 16:04:24 UTC
330c79d Add note to `load_path` docstring stating that it is not safe to mutate its return value (#50233) 22 June 2023, 15:39:15 UTC
ef6d900 codegen: handle dead code with unsafe_store of FCA pointers (#50164) Fix #50125 22 June 2023, 14:17:35 UTC
8af82ea Set `CMAKE_INSTALL_LIBDIR` for non-Windows platforms This makes it so libgit2.so and libssh2.so go into `usr/lib` where they should be, rather than into `usr/lib64` on some platforms. 22 June 2023, 14:01:32 UTC
49ac54a Fix ITTAPI for offline build of LLVM 22 June 2023, 14:01:16 UTC
ad120f4 Fix jl_gc_internal_obj_base_ptr segfault regression (#50231) The function `jl_gc_internal_obj_base_ptr` takes a pointer and tries to determine if it is a valid object pointer. As such it has to carefully validate all data it reads, and abort whenever there are obvious inconsistencies. This patch adds a check which aborts when `meta->osize` is zero, just before we perform a division-with-remainder by this value, thus avoiding a potential division-by-zero exception. This fixes a crash we are seeing in our code. The crash did not happen before PR #49644 was merged because back then there was a check for `meta->ages` not being zero, which apparently was enough to detect invalid values for `meta` (e.g. when `meta` points into a null page). 22 June 2023, 13:45:44 UTC
de7670e Correct the documentation for `pkgdir`. (#50255) 22 June 2023, 12:58:54 UTC
a34ff20 allow `Meta.parse` to take optional `filename` argument (#50224) Code analysis tools such as JET.jl use `Meta.parse` to get a Julia code representation from textual data, or to display diagnostic messages when the input data is invalid. In such scenario it would be beneficial if these diagnostic messages could refer to the original file name of the input data. This commit allows `Meta.parse` to accept the optional `filename::AbstractString` argument for this purpose. If an error occurs, the `filename` can be included in the diagnostic information. The default value is set to `"none"`, thus preserving existing behavior. 22 June 2023, 06:15:33 UTC
fbb8d6c Bump JuliaSyntax to 0.4.5 (#50253) Fixes an issue with error formatting in Meta.parse with nontrivial starting indices (#50245) 22 June 2023, 00:28:30 UTC
e7d00e1 [LibGit2] fix wrong definition of ConfigStruct (#50247) 21 June 2023, 23:41:04 UTC
8d0d012 Merge pull request #50208 from giordano/mg/external-llvm-patches [build] Allow automatically applying Julia's patches to LLVM source 21 June 2023, 16:13:02 UTC
4f0216a Clear specsigflags correctly for copied code instance (#50238) As provided by Jameson to fix an issue encountered in a downstream project. Co-authored-by: Jameson Nash <vtjnash@gmail.com> 21 June 2023, 11:26:54 UTC
94dd5cf compiler: add few more type annotations (#50242) 21 June 2023, 11:26:36 UTC
95749c3 Avoid creating invalid PhiNodes in IR passes (#50235) As of #50158, irverify catches cases where PhiNodes show up in the middle of a basic block (which is illegal). Unfortunately, it turns out there were two cases in Base, where we created just such code: 1. When cfg_simplify! merged basic blocks, it didn't bother to delete (resp, replace by the one incoming edge) the PhiNodes in the basic block it was merging. 2. In irinterp we try to delete instructions that result in constants. This is not legal if the instruction is a PhiNode. The second of these is somewhat unfortunate, but any subsequent compaction will of course take care of it, so I don't think it's a huge issue to just disable the replacement. 21 June 2023, 00:52:53 UTC
71a6a32 Merge pull request #50240 from fingolfin/patch-1 LICENSE.md: update copyright years 20 June 2023, 21:51:58 UTC
5098646 LICENSE.md: update copyright years 20 June 2023, 21:47:24 UTC
a40cb96 Merge pull request #50162 from topolarity/dlfind-search-order Lookup libraries in `libjulia-*` before `jl_exe_handle` 20 June 2023, 20:00:20 UTC
4195a0e Merge pull request #50232 from JuliaLang/sf/dont_precompile_multiple_modules_into_a_ji_file Throw precompilation error if dependency load failure during incremental precompilation 20 June 2023, 19:24:21 UTC
9032926 Throw precompilation error if dependency load failure during incremental precompilation In rare cases, if we fail to load a dependency during precompilation, we can fall-through to the "load locally" fallthrough in `_require()`. However, if this happens during incremental precompilation, this ends up emitting `.ji` files that have multiple modules embedded within, which can cause massive precompilation issues further down the chain, as dependencies which try to load our `.ji` file themselves get corrupted. This catches the error at the source, refusing to generate such a `.ji` file in the first place. 20 June 2023, 17:05:58 UTC
a8ef873 Merge pull request #50230 from JuliaLang/kf/dontreversecache Don't reverse! load_path cache 20 June 2023, 16:59:54 UTC
e2b0f66 Merge branch 'master' into dlfind-search-order 20 June 2023, 14:57:04 UTC
d48e17b Don't reverse! load_path cache As noted in https://github.com/JuliaLang/julia/pull/50119#discussion_r1235329616. 20 June 2023, 14:50:59 UTC
a74e9f9 Install `libclang_rt.asan-<arch>` properly 20 June 2023, 06:05:04 UTC
0da46e2 Name LLVM variables from codegen (#50094) 20 June 2023, 02:23:18 UTC
427b123 Merge pull request #46410 from dalum/master Add mutating `stat!` function for non-allocating filesystem `stat` 19 June 2023, 23:16:16 UTC
82ab124 Merge pull request #46372 from JuliaLang/cjf/juliasyntax-stdlib Enable JuliaSyntax.jl as an alternative Julia parser 19 June 2023, 23:08:52 UTC
d8a4810 Merge branch 'master' into cjf/juliasyntax-stdlib 19 June 2023, 23:08:31 UTC
690a5f6 Thread through lattice in a couple more places (#50216) Now that the lattice code has stabilized, we should probably consider getting rid of the fallback methods to catch all the remaining places where we're relying on it (and to prevent any new ones from being introduced), but for now, just fix two cases I happened to run into. 19 June 2023, 19:23:17 UTC
da9cc1a Expose the newpm pipeline to a C api (#50210) 19 June 2023, 16:45:41 UTC
f555b4b Tweak cache pidlocking (#50214) 19 June 2023, 16:03:23 UTC
90521dd Emphasize the default base of multiversioning in the documentation, and discourage the implicit default base (#50211) 19 June 2023, 03:54:21 UTC
41e8d7f [build] Allow automatically applying Julia's patches to LLVM source 18 June 2023, 17:22:49 UTC
9501540 Merge pull request #50201 from JuliaLang/kf/metherrworldage Pass through world age for kwargs MethodError 18 June 2023, 00:14:32 UTC
fde8692 Merge branch 'master' into cjf/juliasyntax-stdlib 17 June 2023, 21:30:37 UTC
65523e4 Add some JIT docs (#50168) 17 June 2023, 20:46:45 UTC
60bf0b6 Enable JuliaSyntax.jl as the defult parser * Vendor JuliaSyntax into Base via deps directory * Install JuliaSyntax as the Julia parser unless the environment variable JULIA_USE_NEW_PARSER=0 is set. * Add a function to set the Core._parse binding. Required because we'd like to set the binding during Base.__init__. This can be done with `Core.eval` but that doesn't work well in incremental compilation mode. Also accommodate JuliaSyntax within tests: * When JuliaSyntax is enabled, ignore error messages in parser tests which are tested separately upstream - error messages are inherently expressed a bit differently when they go alongside full source location info. * Accommodate a small number of incompatibilities where in JuliaSyntax - `import .Mod.x as (a.b)` is a syntax not lowering error - `f(2x for x=1:10, y` is `Expr(:incomplete)` not `Expr(:error)` - `incomplete_tag` is more precise for `:block` vs `:other` - `global const` without an assignment is a syntax error, in keeping with plain `const` without assignment being a syntax error (not lowering error). * Adjust a few tests to be more precise about testing lowering vs the parser. * Make Meta.parse doctest compatible with JuliaSyntax errors 17 June 2023, 05:45:42 UTC
2d68286 Fix string escaping in REPL completion of paths REPL completion of paths within strings need to be escaped according to the usual escaping rules, and delimited by the starting " rather than whitespace. This differs from completion of paths within cmd backticks which need to be escaped according to shell escaping rules. Separate these cases and fix string escaping. This was found because JuliaSyntax emits an Expr(:error) rather than Expr(:incomplete) for paths inside strings with invalid escape sequences before whitespace. 17 June 2023, 05:45:42 UTC
964f0d6 Pass Int rather than UInt as lengths to core parser hook This is more consistent with the way we're likely call it from the Julia side via Meta.parse(). 17 June 2023, 05:25:12 UTC
8caba95 Show top level location for any `exc` in `eval(Expr(:error, exc))` Previously this only worked when `exc` was a `String`. 17 June 2023, 05:25:12 UTC
1a6cd97 Only wrap Strings in Meta.ParseError String errors come from the flisp parser as Expr(:error). But other than that, allow the parser library to choose its own error type. 17 June 2023, 05:25:12 UTC
9e7bb12 Add `Meta.ParseError` detail field Here we add a `detail` field to `Meta.ParseError`, but retain the `msg::String` field for compatibility. `showerror(::ParseError)` defers to the `detail` field if it's present. This allows us to still throw `Meta.ParseError` from `Meta.parse` for compatibility, but allow more expressivity when `detail` is set to an exception type like `JuliaSyntax.ParseError`. 17 June 2023, 05:25:12 UTC
b6902ae Make incomplete_tag extensible This allows `incomplete_tag` to work when Expr(:incomplete) holds a Meta.ParseError as its child rather than a plain string, as it will when JuliaSyntax is enabled. 17 June 2023, 05:25:12 UTC
fd1cec2 Improve effects for Base.fieldindex (#50199) Split out the error path into a function with separate effects assumptions, so that constant propagation on `err` can conclude that the `err=false` case does not throw. Fixes #50198. 17 June 2023, 05:03:37 UTC
18dd7a2 Don't color Any... red if the method actually matched Fixes the drive-by observation I made in #50200. 16 June 2023, 22:50:28 UTC
f0881ef Pass through world age for kwargs MethodError Fixes #50200 16 June 2023, 22:38:39 UTC
ba251e8 Fix sorting bugs (esp `MissingOptimization`) that come up when using SortingAlgorithms.TimSort (#50171) 16 June 2023, 20:49:24 UTC
c5b0a6c pidlock cache file precompilation (#49052) 16 June 2023, 20:32:46 UTC
631d187 codegen: pass the pgcstack as an argument to specsig calls (#50093) The safepoint at function entry made it so that every function call did a relatively expensive load from the PTLS, we can instead pass the PTLS as an argument to functions making it significantly cheaper. Also use the swift calling conventions, that together with the `swiftself` attribute makes it so it's very likely the argument is kept in a register between calls. Fixes: https://github.com/JuliaLang/julia/issues/50068 16 June 2023, 13:33:32 UTC
71c5115 Export jl_method_set_source. (#49236) This makes it possible to experiment with an OpaqueClosure-like API, which uses Method objects, in the GPU stack. 16 June 2023, 06:47:59 UTC
432f300 Remove xsaves from Zen cpuspec (#50186) 15 June 2023, 22:41:38 UTC
0aa93e3 fix missing punctuation in docs (#50126) * fix missing punctuation * Update types.md --------- Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com> 15 June 2023, 20:56:20 UTC
9d1ac97 Allow unquoted symbols for threadpool in `Threads.@spawn` (#50182) Co-authored-by: Julian Samaroo <jpsamaroo@gmail.com> 15 June 2023, 18:14:45 UTC
0b87d95 Use in-place operations where appropriate (#50119) This changes some uses of reverse/sort/filter to the in-place versions where appropriate. Should provide some minor memory savings. Co-authored-by: Lilith Orion Hafner <lilithhafner@gmail.com> Co-authored-by: Jakob Nybo Nissen <jakobnybonissen@gmail.com> 15 June 2023, 17:44:49 UTC
62e57f7 Merge branch 'master' into master 15 June 2023, 14:59:47 UTC
0f26966 Make sure Core.Compiler can throw kwarg mismatch errors (#50174) The _new_NamedTuple helper was in a Base-only branch, causing ``` julia> Core.eval(Core.Compiler, quote f(;a=1) = a end) f (generic function with 1 method) julia> Core.Compiler.f(;b=2) ERROR: UndefVarError: `_new_NamedTuple` not defined Stacktrace: [1] macro expansion @ Core.Compiler ./namedtuple.jl:0 [inlined] [2] structdiff(a::@NamedTuple{b::Int64}, b::Type{NamedTuple{(:a,)}}) @ Core.Compiler ./namedtuple.jl:421 [3] top-level scope @ REPL[2]:1 ``` After this change, we have the expected ``` julia> Core.eval(Core.Compiler, quote f(;a=1) = a end) f (generic function with 1 method) julia> Core.Compiler.f(;b=2) ERROR: MethodError: no method matching f(; b::Int64) Closest candidates are: f(; a) got unsupported keyword argument "b" @ Core REPL[13]:1 Stacktrace: [1] kwerr(kw::@NamedTuple{b::Int64}, args::Function) @ Core.Compiler ./error.jl:165 [2] top-level scope @ REPL[14]:1 ``` 15 June 2023, 06:07:56 UTC
5db2c27 Add marker passes to various pipeline stages (#50111) 15 June 2023, 03:47:49 UTC
a595274 Fixed small typo in `map`'s docstring (#50173) 15 June 2023, 03:27:15 UTC
9e43494 Compile JITLink for every platform (#50099) 14 June 2023, 22:37:12 UTC
abbe045 FAQ: Clarify use of PROGRAM_FILE for importable scripts (#50139) In issue #45852, the proposed `@is_script` macro as a shorthand for `abspath(PROGRAM_FILE) == @__FILE__` was rejected, because it was agreed that the pattern of using the same file as a script and an importable library is questionable, so there is no reason to make it too idiomatic. For this reason, mention in the FAQ that while checking `PROGRAM_FILE` can be used to check if a file is run as a script, it is not recommended to have files double as both scripts and importable libraries. 14 June 2023, 20:14:58 UTC
0fb86dd Fix `rationalize(::Complex)` test on 32 bit systems (#50163) * Fix `rationalize(::Complex)` test on 32 bit systems the test was relying on `Int===Int64` 14 June 2023, 18:36:36 UTC
834aad4 Add (broken) tests for allocation in 5-arg mul!() (#49210) 14 June 2023, 14:15:41 UTC
df09f67 irverify: Enforce invariant that PhiNodes are at the beginning of a BB (#50158) We have an invariant that all PhiNodes are at the beginning of a BasicBlock (only possible interrupted by a `nothing`) and we rely on this in various places for correctness. However, we did not actually verify this invariant. 14 June 2023, 09:06:07 UTC
1af6648 Use `-shared-libasan` when linking w/ ASAN enabled. This flag is needed to ensure that `libclang_rt.asan-*.so` appears explicitly in the DT_NEEDED entries of libjulia-*. Without this entry, e.g. `dlsym(libjulia_internal_handle)` can end up finding symbols directly in libc.so.6, effectively bypassing the ASAN interceptors. 14 June 2023, 02:36:17 UTC
8a1b642 Add method to rationalize `Rational` (#43427) * Add Method to Rationalize Rational and Integer Co-authored-by: Jeff Bezanson <jeff.bezanson@gmail.com> Co-authored-by: Oscar Smith <oscardssmith@gmail.com> 14 June 2023, 00:31:55 UTC
back to top