Skip to content

Commit 21c245e

Browse files
authored
trimming: improve output on failure (JuliaLang#57657)
Remove the unnecessary stack trace and print the error/warning summary on a single line. Before: ```console ... Trim verify finished with 1 warning. Trim verify finished with 57 errors. fatal: error thrown and no exception handler available. ErrorException("verify_typeinf_trim failed") error at ./error.jl:44 verify_typeinf_trim at ./../usr/share/julia/Compiler/src/verifytrim.jl:341 unknown function (ip: 0x7314d73ccaaa) at (unknown file) jl_apply at /home/user/jc/jh-juliac-mwe/julia/src/julia.h:2320 [inlined] jl_f__call_latest at /home/user/jc/jh-juliac-mwe/julia/src/builtins.c:883 #invokelatest#1 at ./essentials.jl:1090 [inlined] invokelatest at ./essentials.jl:1086 [inlined] verify_typeinf_trim at ./../usr/share/julia/Compiler/src/typeinfer.jl:1371 [inlined] typeinf_ext_toplevel at ./../usr/share/julia/Compiler/src/typeinfer.jl:1365 jfptr_typeinf_ext_toplevel_124479 at /home/user/jc/jh-juliac-mwe/julia/usr/lib/julia/sys.so (unknown line) jl_apply at /home/user/jc/jh-juliac-mwe/julia/src/julia.h:2320 [inlined] jl_create_native_impl at /home/user/jc/jh-juliac-mwe/julia/src/aotcompile.cpp:667 jl_precompile_trimmed at /home/user/jc/jh-juliac-mwe/julia/src/precompile_utils.c:385 [inlined] ijl_create_system_image at /home/user/jc/jh-juliac-mwe/julia/src/staticdata.c:3419 ijl_write_compiler_output at /home/user/jc/jh-juliac-mwe/julia/src/precompile.c:155 ijl_atexit_hook at /home/user/jc/jh-juliac-mwe/julia/src/init.c:278 jl_repl_entrypoint at /home/user/jc/jh-juliac-mwe/julia/src/jlapi.c:1125 main at /home/user/jc/jh-juliac-mwe/julia/cli/loader_exe.c:58 unknown function (ip: 0x7314e1029d8f) at /lib/x86_64-linux-gnu/libc.so.6 __libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) _start at /home/user/jc/jh-juliac-mwe/julia/usr/bin/julia (unknown line) Failed to compile ./test/trimming/hello.jl ``` After: ```console ... Trim verify finished with 57 errors, 1 warning. Failed to compile ./test/trimming/hello.jl ```
1 parent 8b2889e commit 21c245e

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/verifytrim.jl

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -327,16 +327,19 @@ function verify_typeinf_trim(io::IO, codeinfos::Vector{Any}, onlywarn::Bool)
327327
end
328328

329329
let severity = 0
330-
if counts[2] > 0
331-
print("Trim verify finished with ", counts[2], counts[2] == 1 ? " warning.\n\n" : " warnings.\n\n")
330+
if counts[1] > 0 || counts[2] > 0
331+
print("Trim verify finished with ")
332+
print(counts[1], counts[1] == 1 ? " error" : " errors")
333+
print(", ")
334+
print(counts[2], counts[2] == 1 ? " warning" : " warnings")
335+
print(".\n")
332336
severity = 2
333337
end
334338
if counts[1] > 0
335-
print("Trim verify finished with ", counts[1], counts[1] == 1 ? " error.\n\n" : " errors.\n\n")
336339
severity = 1
337340
end
338341
# messages classified as errors are fatal, warnings are not
339-
0 < severity <= 1 && !onlywarn && error("verify_typeinf_trim failed")
342+
0 < severity <= 1 && !onlywarn && throw(Core.TrimFailure())
340343
end
341344
nothing
342345
end

0 commit comments

Comments
 (0)