Skip to content

erfc(::BigFloat) crashes Julia #127

@dlichtistw

Description

@dlichtistw

Julia 0.7 crashes whenever I call SpecialFunctions.erfc with a BigInt or BigFloat value near 30. For example erfc(big"26.5") and erfc(big"32.0") are ok, but erfc(big"27.0") and erfc(big"31.5") will fail. BigInts in that range will also fail, but the corresponding Float64 and Int64 will succeed.

I am using SpecialFunctions v0.7.1 on Julia 0.7.

julia> erfc(big"30.5");
/buildworker/worker/package_linux64/build/deps/srccache/mpfr-4.0.1/src/uceil_log2.c:40: MPFR assertion failed: exp < 1023

signal (6): Aborted
in expression starting at no file:0
__libc_signal_restore_set at /build/glibc-OTsEL5/glibc-2.27/signal/../sysdeps/unix/sysv/linux/nptl-signals.h:80 [inlined]
raise at /build/glibc-OTsEL5/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:48
abort at /build/glibc-OTsEL5/glibc-2.27/stdlib/abort.c:79
mpfr_assert_fail at /buildworker/worker/package_linux64/build/deps/srccache/mpfr-4.0.1/src/mpfr-gmp.c:300
__gmpfr_ceil_log2 at /buildworker/worker/package_linux64/build/deps/srccache/mpfr-4.0.1/src/uceil_log2.c:40
mpfr_erf at /buildworker/worker/package_linux64/build/deps/srccache/mpfr-4.0.1/src/erf.c:240
mpfr_erfc at /buildworker/worker/package_linux64/build/deps/srccache/mpfr-4.0.1/src/erfc.c:251
erfc at /home/lichti/.julia/packages/SpecialFunctions/sXbz6/src/erf.jl:15
jl_fptr_trampoline at /buildworker/worker/package_linux64/build/src/gf.c:1829
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2182
do_call at /buildworker/worker/package_linux64/build/src/interpreter.c:324
eval_value at /buildworker/worker/package_linux64/build/src/interpreter.c:428
eval_stmt_value at /buildworker/worker/package_linux64/build/src/interpreter.c:363 [inlined]
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:686
jl_interpret_toplevel_thunk_callback at /buildworker/worker/package_linux64/build/src/interpreter.c:799
unknown function (ip: 0xfffffffffffffffe)
unknown function (ip: 0x7f98dddd9f4f)
unknown function (ip: 0xffffffffffffffff)
jl_interpret_toplevel_thunk at /buildworker/worker/package_linux64/build/src/interpreter.c:808
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:831
jl_toplevel_eval_in at /buildworker/worker/package_linux64/build/src/builtins.c:633
eval at ./boot.jl:319
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2182
eval_user_input at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/REPL/src/REPL.jl:85
macro expansion at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v0.7/REPL/src/REPL.jl:117 [inlined]
#28 at ./task.jl:262
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2182
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1538 [inlined]
start_task at /buildworker/worker/package_linux64/build/src/task.c:268
unknown function (ip: 0xffffffffffffffff)
Allocations: 735907 (Pool: 735629; Big: 278); GC: 0
Aborted (core dumped)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions