Skip to content
This repository has been archived by the owner on Jan 29, 2023. It is now read-only.

panic when using the =+ field separator on. an array that was substituted #27

Closed
mockersf opened this issue Aug 24, 2020 · 0 comments
Closed

Comments

@mockersf
Copy link
Owner

the following document:

{
    "array1": [1],
    "v": ${array1}
    "v" += 2
}

panics:

RUST_BACKTRACE=1 cargo run --example hocon2json -- tests/data/error.conf
    Finished dev [unoptimized + debuginfo] target(s) in 0.16s
     Running `target/debug/examples/hocon2json tests/data/basic.conf`
thread 'main' panicked at 'index 2 out of range for slice of length 1', src/internals/internal.rs:377:45
stack backtrace:
   0: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
   1: core::fmt::write
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
   2: std::io::Write::write_fmt
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
   3: std::panicking::default_hook::{{closure}}
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
   4: std::panicking::default_hook
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
   5: std::panicking::rust_panic_with_hook
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
   6: rust_begin_unwind
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
   7: core::panicking::panic_fmt
             at src/libcore/panicking.rs:101
   8: core::slice::slice_index_len_fail
             at src/libcore/slice/mod.rs:2751
   9: <core::ops::range::Range<usize> as core::slice::SliceIndex<[T]>>::index
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libcore/slice/mod.rs:2919
  10: core::slice::<impl core::ops::index::Index<I> for [T]>::index
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libcore/slice/mod.rs:2732
  11: <alloc::vec::Vec<T> as core::ops::index::Index<I>>::index
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/liballoc/vec.rs:1942
  12: hocon::internals::internal::HoconInternal::merge
             at src/internals/internal.rs:377
  13: hocon::HoconLoader::hocon
             at src/lib.rs:452
  14: hocon2json::parse_to_json
             at examples/hocon2json.rs:33
  15: hocon2json::main
             at examples/hocon2json.rs:43
  16: std::rt::lang_start::{{closure}}
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/rt.rs:67
  17: std::rt::lang_start_internal
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/panicking.rs:0
  18: std::rt::lang_start
             at /Users/francois/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src/libstd/rt.rs:67
  19: main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant