Skip to content
This repository was archived by the owner on Feb 18, 2025. It is now read-only.
This repository was archived by the owner on Feb 18, 2025. It is now read-only.

invalid code Some[Int64] crashes compiler #54

Open
@soc

Description

@soc
thread 'main' panicked at 'index out of bounds: the len is 0 but the index is 0', dora/src/language/sem_analysis/classes.rs:385:9
stack backtrace:
   0: rust_begin_unwind
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/std/src/panicking.rs:584:5
   1: core::panicking::panic_fmt
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/panicking.rs:142:14
   2: core::panicking::panic_bounds_check
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/panicking.rs:84:5
   3: <usize as core::slice::index::SliceIndex<[T]>>::index
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/slice/index.rs:242:10
   4: core::slice::index::<impl core::ops::index::Index<I> for [T]>::index
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/slice/index.rs:18:9
   5: <alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/mod.rs:2624:9
   6: dora::language::sem_analysis::classes::TypeParamDefinition::name
             at ./dora/src/language/sem_analysis/classes.rs:385:9
   7: dora::language::ty::SourceTypePrinter::name
             at ./dora/src/language/ty.rs:745:42
   8: dora::language::ty::SourceType::name_fct
             at ./dora/src/language/ty.rs:296:9
   9: dora::language::fctbodyck::body::TypeCheck::check_enum_value_without_args_id::{{closure}}
             at ./dora/src/language/fctbodyck/body.rs:2986:26
  10: core::iter::adapters::map::map_fold::{{closure}}
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/adapters/map.rs:84:28
  11: core::iter::traits::iterator::Iterator::fold
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:2370:21
  12: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/adapters/map.rs:124:9
  13: core::iter::traits::iterator::Iterator::for_each
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:787:9
  14: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_extend.rs:40:17
  15: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_from_iter_nested.rs:62:9
  16: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_from_iter.rs:33:9
  17: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/mod.rs:2645:9
  18: core::iter::traits::iterator::Iterator::collect
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:1792:9
  19: dora::language::fctbodyck::body::TypeCheck::check_enum_value_without_args_id
             at ./dora/src/language/fctbodyck/body.rs:2983:33
  20: dora::language::fctbodyck::body::TypeCheck::check_expr_type_param
             at ./dora/src/language/fctbodyck/body.rs:2870:65
  21: dora::language::fctbodyck::body::TypeCheck::check_expr
             at ./dora/src/language/fctbodyck/body.rs:3387:47
  22: dora::language::fctbodyck::body::TypeCheck::check
             at ./dora/src/language/fctbodyck/body.rs:82:13
  23: dora::language::fctbodyck::body::TypeCheck::check_expr_lambda
             at ./dora/src/language/fctbodyck/body.rs:3211:17
  24: dora::language::fctbodyck::body::TypeCheck::check_expr
             at ./dora/src/language/fctbodyck/body.rs:3392:44
  25: dora::language::fctbodyck::body::TypeCheck::check_expr_call::{{closure}}
             at ./dora/src/language/fctbodyck/body.rs:1466:24
  26: core::iter::adapters::map::map_fold::{{closure}}
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/adapters/map.rs:84:28
  27: core::iter::traits::iterator::Iterator::fold
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:2370:21
  28: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/adapters/map.rs:124:9
  29: core::iter::traits::iterator::Iterator::for_each
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:787:9
  30: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_extend.rs:40:17
  31: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_from_iter_nested.rs:62:9
  32: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_from_iter.rs:33:9
  33: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/mod.rs:2645:9
  34: core::iter::traits::iterator::Iterator::collect
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:1792:9
  35: dora::language::fctbodyck::body::TypeCheck::check_expr_call
             at ./dora/src/language/fctbodyck/body.rs:1463:42
  36: dora::language::fctbodyck::body::TypeCheck::check_expr
             at ./dora/src/language/fctbodyck/body.rs:3386:42
  37: dora::language::fctbodyck::body::TypeCheck::check_expr_call
             at ./dora/src/language/fctbodyck/body.rs:1474:31
  38: dora::language::fctbodyck::body::TypeCheck::check_expr
             at ./dora/src/language/fctbodyck/body.rs:3386:42
  39: dora::language::fctbodyck::body::TypeCheck::check_expr_call::{{closure}}
             at ./dora/src/language/fctbodyck/body.rs:1466:24
  40: core::iter::adapters::map::map_fold::{{closure}}
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/adapters/map.rs:84:28
  41: core::iter::traits::iterator::Iterator::fold
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:2370:21
  42: <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/adapters/map.rs:124:9
  43: core::iter::traits::iterator::Iterator::for_each
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:787:9
  44: <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_extend.rs:40:17
  45: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_from_iter_nested.rs:62:9
  46: <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/spec_from_iter.rs:33:9
  47: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/alloc/src/vec/mod.rs:2645:9
  48: core::iter::traits::iterator::Iterator::collect
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/iter/traits/iterator.rs:1792:9
  49: dora::language::fctbodyck::body::TypeCheck::check_expr_call
             at ./dora/src/language/fctbodyck/body.rs:1463:42
  50: dora::language::fctbodyck::body::TypeCheck::check_expr
             at ./dora/src/language/fctbodyck/body.rs:3386:42
  51: <dora::language::fctbodyck::body::TypeCheck as dora_parser::ast::visit::Visitor>::visit_stmt
             at ./dora/src/language/fctbodyck/body.rs:3414:17
  52: dora::language::fctbodyck::body::TypeCheck::check
             at ./dora/src/language/fctbodyck/body.rs:69:13
  53: dora::language::fctbodyck::check_function
             at ./dora/src/language/fctbodyck.rs:72:9
  54: dora::language::fctbodyck::check
             at ./dora/src/language/fctbodyck.rs:16:9
  55: dora::language::check
             at ./dora/src/language.rs:106:5
  56: dora::driver::start::start
             at ./dora/src/driver/start.rs:35:19
  57: dora::run
             at ./dora/src/lib.rs:42:5
  58: dora::main
             at ./dora/src/main.rs:6:10
  59: core::ops::function::FnOnce::call_once
             at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library/core/src/ops/function.rs:248:5

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugsomething isn't working

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions