[INFO] cloning repository Marwes/haskell-compiler [INFO] running `"git" "clone" "--bare" "git://github.com/Marwes/haskell-compiler.git" "work/cache/sources/gh/Marwes/haskell-compiler"` [INFO] [stderr] Cloning into bare repository 'work/cache/sources/gh/Marwes/haskell-compiler'... [INFO] running `"git" "clone" "work/cache/sources/gh/Marwes/haskell-compiler" "work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/gh/Marwes/haskell-compiler"` [INFO] [stderr] Cloning into 'work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/gh/Marwes/haskell-compiler'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Marwes/haskell-compiler" "work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/Marwes/haskell-compiler"` [INFO] [stderr] Cloning into 'work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/Marwes/haskell-compiler'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 997a8b64ea57d27a547caba964081b680b1c5152 [INFO] sha for GitHub repo Marwes/haskell-compiler: 997a8b64ea57d27a547caba964081b680b1c5152 [INFO] validating manifest of Marwes/haskell-compiler on toolchain master#c8865d8e195813ade6b84434ac9f8850e7112d1a [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of Marwes/haskell-compiler on toolchain try#e212b7d492c96d3837691ba29d32d5f468933fb8 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing Marwes/haskell-compiler [INFO] finished frobbing Marwes/haskell-compiler [INFO] frobbed toml for Marwes/haskell-compiler written to work/ex/pr-61629/sources/master#c8865d8e195813ade6b84434ac9f8850e7112d1a/gh/Marwes/haskell-compiler/Cargo.toml [INFO] started frobbing Marwes/haskell-compiler [INFO] finished frobbing Marwes/haskell-compiler [INFO] frobbed toml for Marwes/haskell-compiler written to work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/Marwes/haskell-compiler/Cargo.toml [INFO] crate Marwes/haskell-compiler already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c8865d8e195813ade6b84434ac9f8850e7112d1a-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing Marwes/haskell-compiler against try#e212b7d492c96d3837691ba29d32d5f468933fb8 for pr-61629 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61629/worker-3/try#e212b7d492c96d3837691ba29d32d5f468933fb8:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/Marwes/haskell-compiler:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "build" "--frozen"` [INFO] [stdout] 896dff7c2b14ad486d6582c35b4682459c5f6e020763215b6f2e34a124ab0372 [INFO] running `"docker" "start" "-a" "896dff7c2b14ad486d6582c35b4682459c5f6e020763215b6f2e34a124ab0372"` [INFO] [stderr] Compiling haskell-compiler v0.0.1 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/compiler.rs:552:33 [INFO] [stderr] | [INFO] [stderr] 552 | fn scope(&mut self, f: &mut FnMut(&mut Compiler)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Compiler)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(bare_trait_objects)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/compiler.rs:903:52 [INFO] [stderr] | [INFO] [stderr] 903 | fn walk_classes(&self, class: Name, f: &mut FnMut(&[TypeDeclaration]) -> Option) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[TypeDeclaration]) -> Option` [INFO] [stderr] [INFO] [stderr] warning: the item `Compiler` is imported redundantly [INFO] [stderr] --> src/compiler.rs:1066:9 [INFO] [stderr] | [INFO] [stderr] 353 | / pub struct Compiler<'a> { [INFO] [stderr] 354 | | ///Hashmap containging class names mapped to the functions it contains [INFO] [stderr] 355 | | pub instance_dictionaries: Vec<(Vec<(Name, Type)>, Vec)>, [INFO] [stderr] 356 | | pub stack_size : usize, [INFO] [stderr] ... | [INFO] [stderr] 361 | | context: Vec> [INFO] [stderr] 362 | | } [INFO] [stderr] | |_- the item `Compiler` is already defined here [INFO] [stderr] ... [INFO] [stderr] 1066 | use compiler::Compiler; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:92:26 [INFO] [stderr] | [INFO] [stderr] 92 | assemblies: Vec<&'a (DataTypes + 'a)>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn DataTypes + 'a` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:139:39 [INFO] [stderr] | [INFO] [stderr] 139 | fn each_binding(&self, func: &mut FnMut(&[Binding], (usize, usize))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[Binding], (usize, usize))` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:156:39 [INFO] [stderr] | [INFO] [stderr] 156 | fn each_binding(&self, func: &mut FnMut(&[Binding], (usize, usize))) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[Binding], (usize, usize))` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:197:39 [INFO] [stderr] | [INFO] [stderr] 197 | fn each_binding(&self, func: &mut FnMut(&[Binding], (usize, usize))) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[Binding], (usize, usize))` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:270:44 [INFO] [stderr] | [INFO] [stderr] 270 | pub fn add_types(&mut self, types: &'a DataTypes) { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:889:30 [INFO] [stderr] | [INFO] [stderr] 889 | , bindings: &mut Bindings [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:957:84 [INFO] [stderr] | [INFO] [stderr] 957 | fn typecheck_local_bindings(&mut self, subs: &mut Substitution, bindings: &mut Bindings) { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:962:107 [INFO] [stderr] | [INFO] [stderr] 962 | fn typecheck_global_bindings(&mut self, start_var_age: isize, subs: &mut Substitution, bindings: &mut Bindings) { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:1463:27 [INFO] [stderr] | [INFO] [stderr] 1463 | fn build_graph(bindings: &Bindings) -> Graph<(usize, usize)> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:1514:48 [INFO] [stderr] | [INFO] [stderr] 1514 | fn each_type_(typ: &Type, var_fn: &mut FnMut(&TypeVariable), op_fn: &mut FnMut(&TypeConstructor)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&TypeVariable)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:1514:82 [INFO] [stderr] | [INFO] [stderr] 1514 | fn each_type_(typ: &Type, var_fn: &mut FnMut(&TypeVariable), op_fn: &mut FnMut(&TypeConstructor)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&TypeConstructor)` [INFO] [stderr] [INFO] [stderr] warning: the item `rename_modules` is imported redundantly [INFO] [stderr] --> src/typecheck.rs:1629:9 [INFO] [stderr] | [INFO] [stderr] 12 | use renamer::*; [INFO] [stderr] | ---------- the item `rename_modules` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1629 | use renamer::rename_modules; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused macro definition [INFO] [stderr] --> src/parser.rs:79:1 [INFO] [stderr] | [INFO] [stderr] 79 | / macro_rules! expect1 { [INFO] [stderr] 80 | | ($e: expr, $p: ident ($x: ident)) => ({ [INFO] [stderr] 81 | | match $e.next().token { [INFO] [stderr] 82 | | $p($x) => $x, [INFO] [stderr] ... | [INFO] [stderr] 85 | | }) [INFO] [stderr] 86 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_macros)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused macro definition [INFO] [stderr] --> src/parser.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | / macro_rules! matches { [INFO] [stderr] 89 | | ($e: expr, $p: pat) => ( [INFO] [stderr] 90 | | match $e { [INFO] [stderr] 91 | | $p => true, [INFO] [stderr] ... | [INFO] [stderr] 94 | | ) [INFO] [stderr] 95 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `interner::*` [INFO] [stderr] --> src/core.rs:403:9 [INFO] [stderr] | [INFO] [stderr] 403 | use interner::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core.rs:411:38 [INFO] [stderr] | [INFO] [stderr] 411 | functions_in_class: &'a mut (FnMut(Name) -> (&'a TypeVariable, &'a [TypeDeclaration]) + 'a) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Name) -> (&'a TypeVariable, &'a [TypeDeclaration]) + 'a` [INFO] [stderr] [INFO] [stderr] warning: unused import: `name` [INFO] [stderr] --> src/lambda_lift.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use renamer::{name, NameSupply}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lambda_lift.rs:18:58 [INFO] [stderr] | [INFO] [stderr] 18 | fn each_pattern_variables(pattern: &Pattern, f: &mut FnMut(&Name)) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Name)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/renamer.rs:159:81 [INFO] [stderr] | [INFO] [stderr] 159 | fn import_globals(&mut self, module: &Module, str_fn: &mut FnMut(T) -> InternedStr, uid: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(T) -> InternedStr` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/deriving.rs:93:99 [INFO] [stderr] | [INFO] [stderr] 93 | fn make_binop(&mut self, class: &str, funcname: &str, data: &DataDefinition, func: &mut FnMut(&mut DerivingGen, Id, Id) -> Expr>) -> Binding> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DerivingGen, Id, Id) -> Expr>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/deriving.rs:132:97 [INFO] [stderr] | [INFO] [stderr] 132 | fn match_same_constructors(&mut self, data: &DataDefinition, id_r: &Id, f: &mut FnMut(&mut DerivingGen, &[Id], &[Id]) -> Expr>) -> Vec>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DerivingGen, &[Id], &[Id]) -> Expr>` [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Application`, `Constructor` [INFO] [stderr] --> src/repl.rs:8:18 [INFO] [stderr] | [INFO] [stderr] 8 | use core::Type::{Application, Constructor}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/repl.rs:33:36 [INFO] [stderr] | [INFO] [stderr] 33 | type_env.add_types(prelude as &DataTypes); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: private type `typecheck::Substitution` in public interface (error E0446) [INFO] [stderr] --> src/typecheck.rs:885:5 [INFO] [stderr] | [INFO] [stderr] 885 | / pub fn typecheck_mutually_recursive_bindings [INFO] [stderr] 886 | | (&mut self [INFO] [stderr] 887 | | , start_var_age: isize [INFO] [stderr] 888 | | , subs: &mut Substitution [INFO] [stderr] ... | [INFO] [stderr] 954 | | } [INFO] [stderr] 955 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(private_in_public)] on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private trait `typecheck::Bindings` in public interface (error E0445) [INFO] [stderr] --> src/typecheck.rs:885:5 [INFO] [stderr] | [INFO] [stderr] 885 | / pub fn typecheck_mutually_recursive_bindings [INFO] [stderr] 886 | | (&mut self [INFO] [stderr] 887 | | , start_var_age: isize [INFO] [stderr] 888 | | , subs: &mut Substitution [INFO] [stderr] ... | [INFO] [stderr] 954 | | } [INFO] [stderr] 955 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `graph::Edge` in public interface (error E0446) [INFO] [stderr] --> src/graph.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | / pub fn get_edge<'a>(&'a self, edge: EdgeIndex) -> &'a Edge { [INFO] [stderr] 56 | | &self.edges[edge.get()] [INFO] [stderr] 57 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `vm::InstanceDictionary` in public interface (error E0446) [INFO] [stderr] --> src/vm.rs:39:16 [INFO] [stderr] | [INFO] [stderr] 39 | Dictionary(InstanceDictionary), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: function is never used: `tuple_type` [INFO] [stderr] --> src/types.rs:184:1 [INFO] [stderr] | [INFO] [stderr] 184 | pub fn tuple_type(n: usize) -> (String, Type) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `char_type` [INFO] [stderr] --> src/types.rs:205:1 [INFO] [stderr] | [INFO] [stderr] 205 | pub fn char_type() -> Type { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `int_type` [INFO] [stderr] --> src/types.rs:209:1 [INFO] [stderr] | [INFO] [stderr] 209 | pub fn int_type() -> Type { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bool_type` [INFO] [stderr] --> src/types.rs:213:1 [INFO] [stderr] | [INFO] [stderr] 213 | pub fn bool_type() -> Type { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `double_type` [INFO] [stderr] --> src/types.rs:217:1 [INFO] [stderr] | [INFO] [stderr] 217 | pub fn double_type() -> Type { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `function_type` [INFO] [stderr] --> src/types.rs:221:1 [INFO] [stderr] | [INFO] [stderr] 221 | pub fn function_type(arg: &Type, result: &Type) -> Type { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `io` [INFO] [stderr] --> src/types.rs:231:1 [INFO] [stderr] | [INFO] [stderr] 231 | pub fn io(typ: Type) -> Type { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `unit` [INFO] [stderr] --> src/types.rs:235:1 [INFO] [stderr] | [INFO] [stderr] 235 | pub fn unit() -> Type { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_module` [INFO] [stderr] --> src/module.rs:300:1 [INFO] [stderr] | [INFO] [stderr] 300 | pub fn walk_module>(visitor: &mut V, module: &Module) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `compile_string` [INFO] [stderr] --> src/compiler.rs:1051:1 [INFO] [stderr] | [INFO] [stderr] 1051 | pub fn compile_string(module: &str) -> Result, ::std::string::String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `typecheck_module_` [INFO] [stderr] --> src/typecheck.rs:434:5 [INFO] [stderr] | [INFO] [stderr] 434 | pub fn typecheck_module_(&mut self, module: &mut Module) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `typecheck_expr_` [INFO] [stderr] --> src/typecheck.rs:437:5 [INFO] [stderr] | [INFO] [stderr] 437 | pub fn typecheck_expr_(&mut self, expr: &mut TypedExpr) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `typecheck_string` [INFO] [stderr] --> src/typecheck.rs:1613:1 [INFO] [stderr] | [INFO] [stderr] 1613 | pub fn typecheck_string(module: &str) -> Result>, ::std::string::String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `valid` [INFO] [stderr] --> src/lexer.rs:251:5 [INFO] [stderr] | [INFO] [stderr] 251 | pub fn valid(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `parse_string` [INFO] [stderr] --> src/parser.rs:1136:1 [INFO] [stderr] | [INFO] [stderr] 1136 | pub fn parse_string(contents: &str) -> ParseResult> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `from` [INFO] [stderr] --> src/graph.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | from: VertexIndex, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `execute_main_string` [INFO] [stderr] --> src/vm.rs:609:1 [INFO] [stderr] | [INFO] [stderr] 609 | pub fn execute_main_string(module: &str) -> Result, String> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_module` [INFO] [stderr] --> src/core.rs:228:5 [INFO] [stderr] | [INFO] [stderr] 228 | pub fn walk_module, Ident>(visitor: &mut V, module: &Module) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_binding` [INFO] [stderr] --> src/core.rs:234:5 [INFO] [stderr] | [INFO] [stderr] 234 | pub fn walk_binding, Ident>(visitor: &mut V, binding: &Binding) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_expr` [INFO] [stderr] --> src/core.rs:238:5 [INFO] [stderr] | [INFO] [stderr] 238 | pub fn walk_expr, Ident>(visitor: &mut V, expr: &Expr) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_alternative` [INFO] [stderr] --> src/core.rs:261:5 [INFO] [stderr] | [INFO] [stderr] 261 | pub fn walk_alternative, Ident>(visitor: &mut V, alt: &Alternative) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_module` [INFO] [stderr] --> src/core.rs:349:5 [INFO] [stderr] | [INFO] [stderr] 349 | pub fn walk_module, Ident>(visitor: &mut V, mut module: Module) -> Module { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_binding` [INFO] [stderr] --> src/core.rs:358:5 [INFO] [stderr] | [INFO] [stderr] 358 | pub fn walk_binding, Ident>(visitor: &mut V, binding: Binding) -> Binding { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_expr` [INFO] [stderr] --> src/core.rs:366:5 [INFO] [stderr] | [INFO] [stderr] 366 | pub fn walk_expr, Ident>(visitor: &mut V, expr: Expr) -> Expr { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_alternative` [INFO] [stderr] --> src/core.rs:391:5 [INFO] [stderr] | [INFO] [stderr] 391 | pub fn walk_alternative, Ident>(visitor: &mut V, alt: Alternative) -> Alternative { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 19.74s [INFO] running `"docker" "inspect" "896dff7c2b14ad486d6582c35b4682459c5f6e020763215b6f2e34a124ab0372"` [INFO] running `"docker" "rm" "-f" "896dff7c2b14ad486d6582c35b4682459c5f6e020763215b6f2e34a124ab0372"` [INFO] [stdout] 896dff7c2b14ad486d6582c35b4682459c5f6e020763215b6f2e34a124ab0372 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61629/worker-3/try#e212b7d492c96d3837691ba29d32d5f468933fb8:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/Marwes/haskell-compiler:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "test" "--frozen" "--no-run"` [INFO] [stdout] 4122a468738993b5a7576b42ba2500fd5355f5eb7d6a1e03b946d4de11a72361 [INFO] running `"docker" "start" "-a" "4122a468738993b5a7576b42ba2500fd5355f5eb7d6a1e03b946d4de11a72361"` [INFO] [stderr] Compiling haskell-compiler v0.0.1 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/compiler.rs:552:33 [INFO] [stderr] | [INFO] [stderr] 552 | fn scope(&mut self, f: &mut FnMut(&mut Compiler)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Compiler)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(bare_trait_objects)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/compiler.rs:903:52 [INFO] [stderr] | [INFO] [stderr] 903 | fn walk_classes(&self, class: Name, f: &mut FnMut(&[TypeDeclaration]) -> Option) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[TypeDeclaration]) -> Option` [INFO] [stderr] [INFO] [stderr] warning: the item `Compiler` is imported redundantly [INFO] [stderr] --> src/compiler.rs:1066:9 [INFO] [stderr] | [INFO] [stderr] 353 | / pub struct Compiler<'a> { [INFO] [stderr] 354 | | ///Hashmap containging class names mapped to the functions it contains [INFO] [stderr] 355 | | pub instance_dictionaries: Vec<(Vec<(Name, Type)>, Vec)>, [INFO] [stderr] 356 | | pub stack_size : usize, [INFO] [stderr] ... | [INFO] [stderr] 361 | | context: Vec> [INFO] [stderr] 362 | | } [INFO] [stderr] | |_- the item `Compiler` is already defined here [INFO] [stderr] ... [INFO] [stderr] 1066 | use compiler::Compiler; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:92:26 [INFO] [stderr] | [INFO] [stderr] 92 | assemblies: Vec<&'a (DataTypes + 'a)>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn DataTypes + 'a` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:139:39 [INFO] [stderr] | [INFO] [stderr] 139 | fn each_binding(&self, func: &mut FnMut(&[Binding], (usize, usize))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[Binding], (usize, usize))` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:156:39 [INFO] [stderr] | [INFO] [stderr] 156 | fn each_binding(&self, func: &mut FnMut(&[Binding], (usize, usize))) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[Binding], (usize, usize))` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:197:39 [INFO] [stderr] | [INFO] [stderr] 197 | fn each_binding(&self, func: &mut FnMut(&[Binding], (usize, usize))) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&[Binding], (usize, usize))` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:270:44 [INFO] [stderr] | [INFO] [stderr] 270 | pub fn add_types(&mut self, types: &'a DataTypes) { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:889:30 [INFO] [stderr] | [INFO] [stderr] 889 | , bindings: &mut Bindings [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:957:84 [INFO] [stderr] | [INFO] [stderr] 957 | fn typecheck_local_bindings(&mut self, subs: &mut Substitution, bindings: &mut Bindings) { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:962:107 [INFO] [stderr] | [INFO] [stderr] 962 | fn typecheck_global_bindings(&mut self, start_var_age: isize, subs: &mut Substitution, bindings: &mut Bindings) { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:1463:27 [INFO] [stderr] | [INFO] [stderr] 1463 | fn build_graph(bindings: &Bindings) -> Graph<(usize, usize)> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Bindings` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:1514:48 [INFO] [stderr] | [INFO] [stderr] 1514 | fn each_type_(typ: &Type, var_fn: &mut FnMut(&TypeVariable), op_fn: &mut FnMut(&TypeConstructor)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&TypeVariable)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:1514:82 [INFO] [stderr] | [INFO] [stderr] 1514 | fn each_type_(typ: &Type, var_fn: &mut FnMut(&TypeVariable), op_fn: &mut FnMut(&TypeConstructor)) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&TypeConstructor)` [INFO] [stderr] [INFO] [stderr] warning: the item `rename_modules` is imported redundantly [INFO] [stderr] --> src/typecheck.rs:1629:9 [INFO] [stderr] | [INFO] [stderr] 12 | use renamer::*; [INFO] [stderr] | ---------- the item `rename_modules` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1629 | use renamer::rename_modules; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `module::Expr::*` [INFO] [stderr] --> src/typecheck.rs:1653:5 [INFO] [stderr] | [INFO] [stderr] 1653 | use module::Expr::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:1668:49 [INFO] [stderr] | [INFO] [stderr] 1668 | pub fn do_typecheck_with(input: &str, types: &[&DataTypes]) -> Module { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:2062:57 [INFO] [stderr] | [INFO] [stderr] 2062 | let module = do_typecheck_with(file, &[&prelude as &DataTypes]); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:2106:57 [INFO] [stderr] | [INFO] [stderr] 2106 | let module = do_typecheck_with(file, &[&prelude as &DataTypes]); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:2127:57 [INFO] [stderr] | [INFO] [stderr] 2127 | let module = do_typecheck_with(file, &[&prelude as &DataTypes]); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/typecheck.rs:2245:44 [INFO] [stderr] | [INFO] [stderr] 2245 | do_typecheck_with(file, &[&prelude as &DataTypes]); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn DataTypes` [INFO] [stderr] [INFO] [stderr] warning: unused import: `lexer::TokenEnum::*` [INFO] [stderr] --> src/lexer.rs:590:5 [INFO] [stderr] | [INFO] [stderr] 590 | use lexer::TokenEnum::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused macro definition [INFO] [stderr] --> src/parser.rs:79:1 [INFO] [stderr] | [INFO] [stderr] 79 | / macro_rules! expect1 { [INFO] [stderr] 80 | | ($e: expr, $p: ident ($x: ident)) => ({ [INFO] [stderr] 81 | | match $e.next().token { [INFO] [stderr] 82 | | $p($x) => $x, [INFO] [stderr] ... | [INFO] [stderr] 85 | | }) [INFO] [stderr] 86 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_macros)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused macro definition [INFO] [stderr] --> src/parser.rs:88:1 [INFO] [stderr] | [INFO] [stderr] 88 | / macro_rules! matches { [INFO] [stderr] 89 | | ($e: expr, $p: pat) => ( [INFO] [stderr] 90 | | match $e { [INFO] [stderr] 91 | | $p => true, [INFO] [stderr] ... | [INFO] [stderr] 94 | | ) [INFO] [stderr] 95 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `module::*` [INFO] [stderr] --> src/parser.rs:1189:5 [INFO] [stderr] | [INFO] [stderr] 1189 | use module::*; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `module::Expr::*` [INFO] [stderr] --> src/parser.rs:1190:5 [INFO] [stderr] | [INFO] [stderr] 1190 | use module::Expr::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Constructor`, `Double`, `Int` [INFO] [stderr] --> src/vm.rs:790:20 [INFO] [stderr] | [INFO] [stderr] 790 | use vm::VMResult::{Int, Double, Constructor}; [INFO] [stderr] | ^^^ ^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `interner::*` [INFO] [stderr] --> src/core.rs:403:9 [INFO] [stderr] | [INFO] [stderr] 403 | use interner::*; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/core.rs:411:38 [INFO] [stderr] | [INFO] [stderr] 411 | functions_in_class: &'a mut (FnMut(Name) -> (&'a TypeVariable, &'a [TypeDeclaration]) + 'a) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(Name) -> (&'a TypeVariable, &'a [TypeDeclaration]) + 'a` [INFO] [stderr] [INFO] [stderr] warning: unused import: `name` [INFO] [stderr] --> src/lambda_lift.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use renamer::{name, NameSupply}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lambda_lift.rs:18:58 [INFO] [stderr] | [INFO] [stderr] 18 | fn each_pattern_variables(pattern: &Pattern, f: &mut FnMut(&Name)) { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Name)` [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::*` [INFO] [stderr] --> src/lambda_lift.rs:210:9 [INFO] [stderr] | [INFO] [stderr] 210 | use core::*; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `core::Expr::*` [INFO] [stderr] --> src/lambda_lift.rs:211:9 [INFO] [stderr] | [INFO] [stderr] 211 | use core::Expr::*; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/renamer.rs:159:81 [INFO] [stderr] | [INFO] [stderr] 159 | fn import_globals(&mut self, module: &Module, str_fn: &mut FnMut(T) -> InternedStr, uid: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(T) -> InternedStr` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/deriving.rs:93:99 [INFO] [stderr] | [INFO] [stderr] 93 | fn make_binop(&mut self, class: &str, funcname: &str, data: &DataDefinition, func: &mut FnMut(&mut DerivingGen, Id, Id) -> Expr>) -> Binding> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DerivingGen, Id, Id) -> Expr>` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/deriving.rs:132:97 [INFO] [stderr] | [INFO] [stderr] 132 | fn match_same_constructors(&mut self, data: &DataDefinition, id_r: &Id, f: &mut FnMut(&mut DerivingGen, &[Id], &[Id]) -> Expr>) -> Vec>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut DerivingGen, &[Id], &[Id]) -> Expr>` [INFO] [stderr] [INFO] [stderr] warning: private type `typecheck::Substitution` in public interface (error E0446) [INFO] [stderr] --> src/typecheck.rs:885:5 [INFO] [stderr] | [INFO] [stderr] 885 | / pub fn typecheck_mutually_recursive_bindings [INFO] [stderr] 886 | | (&mut self [INFO] [stderr] 887 | | , start_var_age: isize [INFO] [stderr] 888 | | , subs: &mut Substitution [INFO] [stderr] ... | [INFO] [stderr] 954 | | } [INFO] [stderr] 955 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(private_in_public)] on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private trait `typecheck::Bindings` in public interface (error E0445) [INFO] [stderr] --> src/typecheck.rs:885:5 [INFO] [stderr] | [INFO] [stderr] 885 | / pub fn typecheck_mutually_recursive_bindings [INFO] [stderr] 886 | | (&mut self [INFO] [stderr] 887 | | , start_var_age: isize [INFO] [stderr] 888 | | , subs: &mut Substitution [INFO] [stderr] ... | [INFO] [stderr] 954 | | } [INFO] [stderr] 955 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `graph::Edge` in public interface (error E0446) [INFO] [stderr] --> src/graph.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | / pub fn get_edge<'a>(&'a self, edge: EdgeIndex) -> &'a Edge { [INFO] [stderr] 56 | | &self.edges[edge.get()] [INFO] [stderr] 57 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `vm::InstanceDictionary` in public interface (error E0446) [INFO] [stderr] --> src/vm.rs:39:16 [INFO] [stderr] | [INFO] [stderr] 39 | Dictionary(InstanceDictionary), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: function is never used: `tuple_type` [INFO] [stderr] --> src/types.rs:184:1 [INFO] [stderr] | [INFO] [stderr] 184 | pub fn tuple_type(n: usize) -> (String, Type) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_module` [INFO] [stderr] --> src/module.rs:300:1 [INFO] [stderr] | [INFO] [stderr] 300 | pub fn walk_module>(visitor: &mut V, module: &Module) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `valid` [INFO] [stderr] --> src/lexer.rs:251:5 [INFO] [stderr] | [INFO] [stderr] 251 | pub fn valid(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `from` [INFO] [stderr] --> src/graph.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | from: VertexIndex, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_assembly` [INFO] [stderr] --> src/vm.rs:178:5 [INFO] [stderr] | [INFO] [stderr] 178 | pub fn get_assembly(&self, index: usize) -> &Assembly { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `from_expr` [INFO] [stderr] --> src/core.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn from_expr(expr: Expr) -> Module { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_module` [INFO] [stderr] --> src/core.rs:349:5 [INFO] [stderr] | [INFO] [stderr] 349 | pub fn walk_module, Ident>(visitor: &mut V, mut module: Module) -> Module { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_binding` [INFO] [stderr] --> src/core.rs:358:5 [INFO] [stderr] | [INFO] [stderr] 358 | pub fn walk_binding, Ident>(visitor: &mut V, binding: Binding) -> Binding { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_expr` [INFO] [stderr] --> src/core.rs:366:5 [INFO] [stderr] | [INFO] [stderr] 366 | pub fn walk_expr, Ident>(visitor: &mut V, expr: Expr) -> Expr { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `walk_alternative` [INFO] [stderr] --> src/core.rs:391:5 [INFO] [stderr] | [INFO] [stderr] 391 | pub fn walk_alternative, Ident>(visitor: &mut V, alt: Alternative) -> Alternative { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `translate_expr` [INFO] [stderr] --> src/core.rs:417:5 [INFO] [stderr] | [INFO] [stderr] 417 | pub fn translate_expr(expr: module::TypedExpr) -> Expr> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 23.98s [INFO] running `"docker" "inspect" "4122a468738993b5a7576b42ba2500fd5355f5eb7d6a1e03b946d4de11a72361"` [INFO] running `"docker" "rm" "-f" "4122a468738993b5a7576b42ba2500fd5355f5eb7d6a1e03b946d4de11a72361"` [INFO] [stdout] 4122a468738993b5a7576b42ba2500fd5355f5eb7d6a1e03b946d4de11a72361 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61629/worker-3/try#e212b7d492c96d3837691ba29d32d5f468933fb8:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61629/sources/try#e212b7d492c96d3837691ba29d32d5f468933fb8/gh/Marwes/haskell-compiler:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+e212b7d492c96d3837691ba29d32d5f468933fb8-alt" "test" "--frozen"` [INFO] [stdout] 1d0e1c51169b3f8208af95b03c125517c421de538a1978801d0fc3c414edeb77 [INFO] running `"docker" "start" "-a" "1d0e1c51169b3f8208af95b03c125517c421de538a1978801d0fc3c414edeb77"` [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running /opt/crater/target/debug/deps/haskell_compiler-cd71aa27b0f3f8c9 [INFO] [stdout] [INFO] [stdout] running 120 tests [INFO] [stdout] test compiler::tests::compile_class_constraints_unknown ... ok [INFO] [stdout] test compiler::tests::compile_case ... ok [INFO] [stdout] test compiler::tests::binding_pattern ... ok [INFO] [stdout] test compiler::tests::compile_class_constraints ... ok [INFO] [stdout] test compiler::tests::compile_constructor ... ok [INFO] [stdout] test compiler::tests::application ... ok [INFO] [stdout] test compiler::tests::push_num_double ... ok [INFO] [stdout] test graph::test_tarjan ... ok [INFO] [stdout] test compiler::tests::add ... ok [INFO] [stdout] test graph::test_tarjan3 ... ok [INFO] [stdout] test graph::test_tarjan2 ... ok [INFO] [stdout] test compiler::tests::add_double ... ok [INFO] [stdout] test compiler::tests::compile_tuple ... ok [INFO] [stdout] test infix::tests::rewrite_operators ... ok [INFO] [stdout] test compiler::tests::newtype ... ok [INFO] [stdout] test compiler::tests::generics_do_not_propagate ... ok [INFO] [stdout] test lambda_lift::tests::all_uniques ... ok [INFO] [stdout] test lambda_lift::tests::all_free_vars ... ok [INFO] [stdout] test lexer::tests::let_bind ... ok [INFO] [stdout] test lambda_lift::tests::no_local_lambdas ... ok [INFO] [stdout] test lexer::tests::simple ... ok [INFO] [stdout] test parser::tests::binding ... ok [INFO] [stdout] test parser::tests::deriving ... ok [INFO] [stdout] test parser::tests::double ... ok [INFO] [stdout] test parser::tests::lambda_pattern ... ok [INFO] [stdout] test parser::tests::parse_data ... ok [INFO] [stdout] test parser::tests::parse_data_2 ... ok [INFO] [stdout] test parser::tests::parse_case ... ok [INFO] [stdout] test parser::tests::parse_fixity ... ok [INFO] [stdout] test parser::tests::parse_guards ... ok [INFO] [stdout] test parser::tests::parse_imports ... ok [INFO] [stdout] test parser::tests::parse_do_expr ... ok [INFO] [stdout] test parser::tests::parse_instance_class ... ok [INFO] [stdout] test infix::tests::operator_precedence ... ok [INFO] [stdout] test infix::tests::operator_precedence_parens ... ok [INFO] [stdout] test parser::tests::parse_newtype ... ok [INFO] [stdout] test parser::tests::parse_let ... ok [INFO] [stdout] test parser::tests::parse_super_class ... ok [INFO] [stdout] test parser::tests::bench_prelude ... ok [INFO] [stdout] test parser::tests::parse_type ... ok [INFO] [stdout] test parser::tests::parse_tuple ... ok [INFO] [stdout] test parser::tests::simple ... ok [INFO] [stdout] test parser::tests::parse_unit ... ok [INFO] [stdout] test parser::tests::test_if_else ... ok [INFO] [stdout] test parser::tests::test_operators ... ok [INFO] [stdout] test parser::tests::where_bindings ... ok [INFO] [stdout] test parser::tests::parse_module_imports ... ok [INFO] [stdout] test parser::tests::parse_prelude ... ok [INFO] [stdout] test scoped_map::tests::test ... ok [INFO] [stdout] test typecheck::test::application ... ok [INFO] [stdout] test renamer::tests::import_binding ... ok [INFO] [stdout] test lambda_lift::tests::bench ... ok [INFO] [stdout] test typecheck::test::binding_pattern ... ok [INFO] [stdout] test compiler::tests::bench_prelude ... ok [INFO] [stdout] test compiler::tests::compile_prelude ... ok [INFO] [stdout] test typecheck::test::argument_count_error ... ok [INFO] [stdout] test renamer::tests::duplicate_binding ... ok [INFO] [stdout] test typecheck::test::case_alternative_error ... ok [INFO] [stdout] test typecheck::test::all_constraints_match ... ok [INFO] [stdout] test renamer::tests::missing_import ... ok [INFO] [stdout] test typecheck::test::guards ... ok [INFO] [stdout] test typecheck::test::bench_prelude ... ok [INFO] [stdout] test typecheck::test::test_typecheck_string ... ok [INFO] [stdout] test typecheck::test::type_declaration ... ok [INFO] [stdout] test typecheck::test::deriving ... ok [INFO] [stdout] test typecheck::test::typecheck_case ... ok [INFO] [stdout] test typecheck::test::typecheck_constraints ... ok [INFO] [stdout] test typecheck::test::type_declaration_error ... ok [INFO] [stdout] test typecheck::test::typecheck_constraints2 ... ok [INFO] [stdout] test typecheck::test::typecheck_functor ... ok [INFO] [stdout] test typecheck::test::typecheck_constraints_no_instance ... ok [INFO] [stdout] test typecheck::test::typecheck_functor_error ... ok [INFO] [stdout] test typecheck::test::typecheck_instance_super_class ... ok [INFO] [stdout] test typecheck::test::typecheck_lambda ... ok [INFO] [stdout] test typecheck::test::typecheck_let ... ok [INFO] [stdout] test typecheck::test::typecheck_list ... ok [INFO] [stdout] test typecheck::test::typecheck_missing_super_class ... ok [INFO] [stdout] test typecheck::test::typecheck_module_ ... ok [INFO] [stdout] test typecheck::test::typecheck_num_double ... ok [INFO] [stdout] test typecheck::test::do_expr_pattern ... ok [INFO] [stdout] test typecheck::test::typecheck_recursive_let ... ok [INFO] [stdout] test typecheck::test::newtype_wrong_arg ... ok [INFO] [stdout] test typecheck::test::typecheck_super_class ... ok [INFO] [stdout] test typecheck::test::do_expr_wrong_monad ... ok [INFO] [stdout] test typecheck::test::typedeclaration_on_expression ... ok [INFO] [stdout] test typecheck::test::where_binding ... ok [INFO] [stdout] test typecheck::test::instance_constraints_propagate ... ok [INFO] [stdout] test typecheck::test::typedeclaration_to_general ... ok [INFO] [stdout] test typecheck::test::typecheck_tuple ... ok [INFO] [stdout] test typecheck::test::do_expr_simple ... ok [INFO] [stdout] test typecheck::test::wrong_type ... ok [INFO] [stdout] test typecheck::test::newtype ... ok [INFO] [stdout] test typecheck::test::typecheck_import ... ok [INFO] [stdout] test typecheck::test::typecheck_prelude ... ok [INFO] [stdout] test vm::tests::deriving_eq ... ok [INFO] [stdout] test vm::tests::local_function ... ok [INFO] [stdout] test vm::tests::if_else ... ok [INFO] [stdout] test vm::tests::import ... ok [INFO] [stdout] test vm::tests::build_dictionary ... ok [INFO] [stdout] test vm::tests::deriving_ord ... ok [INFO] [stdout] test vm::tests::instance_eq_list ... ok [INFO] [stdout] test vm::tests::implement_class ... ok [INFO] [stdout] test vm::tests::test_case ... ok [INFO] [stdout] test vm::tests::test_data_types ... ok [INFO] [stdout] test vm::tests::test_class_default_function ... ok [INFO] [stdout] test vm::tests::instance_super_class ... ok [INFO] [stdout] test vm::tests::test_nested_case ... ok [INFO] [stdout] test vm::tests::test_function ... ok [INFO] [stdout] test vm::tests::test_nested_case2 ... ok [INFO] [stdout] test vm::tests::test_typeclasses_known_types ... ok [INFO] [stdout] test vm::tests::test_primitive ... ok [INFO] [stdout] test vm::tests::test_typeclasses_unknown ... ok [INFO] [stdout] test vm::tests::pattern_bind ... ok [INFO] [stdout] test vm::tests::pattern_guards_nested ... ok [INFO] [stdout] test vm::tests::monad_do ... ok [INFO] [stdout] test vm::tests::newtype ... ok [INFO] [stdout] test vm::tests::pattern_guards ... ok [INFO] [stdout] test vm::tests::use_super_class ... ok [INFO] [stdout] test vm::tests::test_run_prelude ... ok [INFO] [stdout] test vm::tests::where_bindings ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 120 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "1d0e1c51169b3f8208af95b03c125517c421de538a1978801d0fc3c414edeb77"` [INFO] running `"docker" "rm" "-f" "1d0e1c51169b3f8208af95b03c125517c421de538a1978801d0fc3c414edeb77"` [INFO] [stdout] 1d0e1c51169b3f8208af95b03c125517c421de538a1978801d0fc3c414edeb77