# Julia script segfault on errors

**URL:** <https://discourse.julialang.org/t/julia-script-segfault-on-errors/8484>\
**Category:** General Usage\
**Created:** [January 19, 2018, 9:23pm UTC](https://discourse.julialang.org/t/julia-script-segfault-on-errors/8484 "2018-01-19T21:23:31Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![nico202](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nico202/32/1009_2.png) [@nico202](https://discourse.julialang.org/u/nico202)\
**Post date:** [January 19, 2018, 9:23pm UTC](https://discourse.julialang.org/t/julia-script-segfault-on-errors/8484/1 "2018-01-19T21:23:31Z")

</div>

Hi, I have a strange behaviour with julia on NixOS

REPL:

> versioninfo()  
> Julia Version 0.6.0  
> Commit 903644385b\* (2017-06-19 13:05 UTC)  
> println(undef)  
> ERROR: UndefVarError: undef not defined

Script:  
cat test.jl  
println(undef)

julia test.jl

signal (11): Segmentation fault  
while loading no file, in expression starting on line 0  
get at /nix/store/n88r1nlkykqq73z4gr50fk0cdc9mr7w7-gfortran-6.4.0/include/c++/6.4.0/bits/unique\_ptr.h:308 [inlined]  
getBinary at /nix/store/hrnlixqvhzibzggrbp6qpcwfalsh14zp-llvm-3.9.1/include/llvm/Object/Binary.h:181 [inlined]  
jl\_dylib\_DI\_for\_fptr at /build/source/src/debuginfo.cpp:1242  
jl\_getDylibFunctionInfo at /build/source/src/debuginfo.cpp:1397 [inlined]  
jl\_getFunctionInfo at /build/source/src/debuginfo.cpp:1633  
jl\_lookup\_code\_address at /build/source/src/stackwalk.c:348  
lookup at ./stacktraces.jl:125  
collect\_to! at ./array.jl:474  
\_collect at ./array.jl:455  
stacktrace at ./stacktraces.jl:151  
display\_error at ./client.jl:126  
unknown function (ip: 0x7fe142ebb6dd)  
jl\_call\_fptr\_internal at /build/source/src/julia\_internal.h:339 [inlined]  
jl\_call\_method\_internal at /build/source/src/julia\_internal.h:358 [inlined]  
jl\_apply\_generic at /build/source/src/gf.c:1933  
display\_error at ./client.jl:140  
unknown function (ip: 0x7fe142ebb146)  
jl\_call\_fptr\_internal at /build/source/src/julia\_internal.h:339 [inlined]  
jl\_call\_method\_internal at /build/source/src/julia\_internal.h:358 [inlined]  
jl\_apply\_generic at /build/source/src/gf.c:1933  
do\_call at /build/source/src/interpreter.c:75  
eval at /build/source/src/interpreter.c:242  
eval\_body at /build/source/src/interpreter.c:539  
jl\_toplevel\_eval\_body at /build/source/src/interpreter.c:511  
jl\_toplevel\_eval\_flex at /build/source/src/toplevel.c:571  
jl\_toplevel\_eval\_in at /build/source/src/builtins.c:496  
eval at ./boot.jl:235  
unknown function (ip: 0x7fe158504d2f)  
jl\_call\_fptr\_internal at /build/source/src/julia\_internal.h:339 [inlined]  
jl\_call\_method\_internal at /build/source/src/julia\_internal.h:358 [inlined]  
jl\_apply\_generic at /build/source/src/gf.c:1933  
\_start at ./client.jl:417  
unknown function (ip: 0x7fe158546fd8)  
jl\_call\_fptr\_internal at /build/source/src/julia\_internal.h:339 [inlined]  
jl\_call\_method\_internal at /build/source/src/julia\_internal.h:358 [inlined]  
jl\_apply\_generic at /build/source/src/gf.c:1933  
[1] 2618 julia --color=yes test.jl

Should I report this on github? any cues on why is this happening?

Thanks, Nicolò

---

<div class="post-metadata">

**Author:** ![jameson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jameson/32/23_2.png) [@jameson](https://discourse.julialang.org/u/jameson)\
**Post date:** [January 19, 2018, 9:59pm UTC](https://discourse.julialang.org/t/julia-script-segfault-on-errors/8484/2 "2018-01-19T21:59:26Z")

</div>

Is there perhaps a compiler mismatch between the gcc ABI version used to compile LLVM and to compile Julia? The path there looks a bit odd:  
`...gfortran-6.4.0/include/c++/...`  
I also wouldn’t be too surprised if this is simply a gcc bug 😢 and you might just have to compile with a different version of gcc.

---

<div class="post-metadata">

**Author:** ![nico202](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nico202/32/1009_2.png) [@nico202](https://discourse.julialang.org/u/nico202)\
**Post date:** [January 22, 2018, 9:17am UTC](https://discourse.julialang.org/t/julia-script-segfault-on-errors/8484/3 "2018-01-22T09:17:56Z")

</div>

Thanks, I opened an issue on the nixpkgs repository, I’ll keep this open until it gets fixed there. I don’t think it’s a gcc bug, the compiler version mismatch is more probable IMHO

---

<div class="post-metadata">

**Author:** ![currymj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/currymj/32/3398_2.png) [@currymj](https://discourse.julialang.org/u/currymj)\
**Post date:** [February 9, 2018, 2:21am UTC](https://discourse.julialang.org/t/julia-script-segfault-on-errors/8484/4 "2018-02-09T02:21:23Z")

</div>

Interestingly, this bug seems to only show up when invoking a Julia script. So I can do

```julia
julia> error("this is an error")

```

at the REPL and it works fine. But if I put `error("this is an error")` in a file `test.jl` and run `julia test.jl`, it’s a segfault.

Is there an obvious thing that would cause this (like a particular dependency mismatch or something)?
