cda-group / arc

Programming Language for Continuous Deep Analytics
https://cda-group.github.io/arc/
44 stars 6 forks source link

Add location info to ICE output #216

Closed segeljakt closed 3 years ago

frej commented 3 years ago

Nice try, we get a backtrace but not a very informative one:

error:    0: arc_script_build::build::save_stacktrace::{{closure}}
             at /var/tmp/arcon/arc/arc-script/arc-script-api/build/src/build.rs:31:44
   1: std::panicking::rust_panic_with_hook
   2: std::panicking::begin_panic_handler::{{closure}}
   3: std::sys_common::backtrace::__rust_end_short_backtrace
   4: rust_begin_unwind
   5: core::panicking::panic_fmt
   6: core::panicking::panic
   7: arc_script_core::compiler::mlir::lower::hir::<impl arc_script_core_shared::lower::Lower<core::option::Option<arc_script_core::compiler::mlir::repr::Item>,arc_script_core::compiler::mlir::lower::hir::Context> for arc_script_core::compiler::hir::repr::Item>::lower
             at /var/tmp/portage/dev-lang/rust-9999/work/rust-git-src/library/core/src/panic.rs:18:9
   8: arc_script_core::compiler::mlir::from::<impl arc_script_core::compiler::mlir::repr::MLIR>::from::{{closure}}
             at /var/tmp/arcon/arc/arc-script/arc-script-core/src/compiler/mlir/from.rs:18:39
   9: core::iter::adapters::filter_map::filter_map_fold::{{closure}}
             at /var/tmp/portage/dev-lang/rust-9999/work/rust-git-src/library/core/src/iter/adapters/filter_map.rs:36:28
[...]
  31: main
  32: __libc_start_main
  33: _start

Error:not yet implemented
  --> /var/scratch-1/arcon/build/llvm-build/cargo/build/debug/build/arc-script-test-compile-a85bcef04a47ad26/out/src/tests/expect_mlir_fail_todo/task_unique.rs:1:1
   |
1  | / compile_error!("   0: arc_script_build::build::save_stacktrace::{{closure}}
2  | |              at /var/tmp/arcon/arc/arc-script/arc-script-api/build/src/build.rs:31:44
3  | |    1: std::panicking::rust_panic_with_hook
4  | |    2: std::panicking::begin_panic_handler::{{closure}}
...  |
57 | |   33: _start
58 | | \nError:not yet implemented");
   | |______________________________^

Regardless of which todo!() we trigger, the backtrace only ever points to arc/arc-script/arc-script-core/src/compiler/mlir/from.rs:18:39