Aug 01 16:35:31.276 INFO checking hansihe/beam_code against 1.27.2 for lazy_static-1 Aug 01 16:35:31.276 INFO running: cargo +1.27.2 check --frozen --all --all-targets Aug 01 16:35:31.277 INFO creating container for: cargo +1.27.2 check --frozen --all --all-targets Aug 01 16:35:31.277 INFO running `"docker" "create" "-v" "/tmp/crater.s0CxyApZlowv:/source:ro,Z" "-v" "/home/ec2-user/crater/./work/local/target-dirs/lazy_static-1/worker-4/1.27.2:/target:rw,Z" "-v" "/home/ec2-user/crater/./work/local/cargo-home:/cargo-home:ro,Z" "-v" "/home/ec2-user/crater/./work/local/rustup-home:/rustup-home:ro,Z" "-v" "/home/ec2-user/crater/./work/local/cargo-home/git:/cargo-home/git:rw,Z" "-e" "USER_ID=500" "-e" "CMD=cargo +1.27.2 check --frozen --all --all-targets" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "crater"` Aug 01 16:35:31.524 INFO blam! 1dba3416594898b6e71bffb1ee6d38bec42263fbdd9edc57c6eb43dc0b50dbaf Aug 01 16:35:31.525 INFO running `"docker" "start" "-a" "1dba3416594898b6e71bffb1ee6d38bec42263fbdd9edc57c6eb43dc0b50dbaf"` Aug 01 16:35:32.446 INFO kablam! Checking itertools v0.6.5 Aug 01 16:35:32.452 INFO kablam! Checking string-intern v0.1.7 Aug 01 16:35:32.453 INFO kablam! Checking beam_file v0.2.3 Aug 01 16:35:32.453 INFO kablam! Checking eetf v0.3.6 Aug 01 16:35:41.085 INFO kablam! Checking beam_code v0.1.0 (file:///source) Aug 01 16:35:42.138 INFO kablam! warning: unused import: `::std::rc::Rc` Aug 01 16:35:42.138 INFO kablam! --> src/op.rs:6:5 Aug 01 16:35:42.138 INFO kablam! | Aug 01 16:35:42.138 INFO kablam! 6 | use ::std::rc::Rc; Aug 01 16:35:42.138 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:42.138 INFO kablam! | Aug 01 16:35:42.139 INFO kablam! = note: #[warn(unused_imports)] on by default Aug 01 16:35:42.139 INFO kablam! Aug 01 16:35:42.146 INFO kablam! warning: unused import: `Literal` Aug 01 16:35:42.146 INFO kablam! --> src/ssa/mod.rs:5:52 Aug 01 16:35:42.146 INFO kablam! | Aug 01 16:35:42.146 INFO kablam! 5 | use ::op::{ Op, LabelId, Register, OpKind, Source, Literal }; Aug 01 16:35:42.146 INFO kablam! | ^^^^^^^ Aug 01 16:35:42.147 INFO kablam! Aug 01 16:35:42.147 INFO kablam! warning: unused import: `::std::hash::Hash` Aug 01 16:35:42.147 INFO kablam! --> src/ssa/representation.rs:5:5 Aug 01 16:35:42.147 INFO kablam! | Aug 01 16:35:42.147 INFO kablam! 5 | use ::std::hash::Hash; Aug 01 16:35:42.147 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:42.147 INFO kablam! Aug 01 16:35:42.161 INFO kablam! warning: unused import: `::std::fmt::Debug` Aug 01 16:35:42.161 INFO kablam! --> src/graph/dfs.rs:2:5 Aug 01 16:35:42.161 INFO kablam! | Aug 01 16:35:42.161 INFO kablam! 2 | use ::std::fmt::Debug; Aug 01 16:35:42.161 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:42.161 INFO kablam! Aug 01 16:35:42.161 INFO kablam! warning: unused import: `GraphAccessor` Aug 01 16:35:42.161 INFO kablam! --> src/graph/dfs.rs:5:14 Aug 01 16:35:42.161 INFO kablam! | Aug 01 16:35:42.161 INFO kablam! 5 | use super::{ GraphAccessor, GraphDfs }; Aug 01 16:35:42.161 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:42.161 INFO kablam! Aug 01 16:35:42.228 INFO kablam! warning: unused import: `::std::rc::Rc` Aug 01 16:35:42.228 INFO kablam! --> src/op.rs:6:5 Aug 01 16:35:42.228 INFO kablam! | Aug 01 16:35:42.228 INFO kablam! 6 | use ::std::rc::Rc; Aug 01 16:35:42.228 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:42.228 INFO kablam! | Aug 01 16:35:42.228 INFO kablam! = note: #[warn(unused_imports)] on by default Aug 01 16:35:42.228 INFO kablam! Aug 01 16:35:42.244 INFO kablam! warning: unused import: `Literal` Aug 01 16:35:42.244 INFO kablam! --> src/ssa/mod.rs:5:52 Aug 01 16:35:42.244 INFO kablam! | Aug 01 16:35:42.244 INFO kablam! 5 | use ::op::{ Op, LabelId, Register, OpKind, Source, Literal }; Aug 01 16:35:42.244 INFO kablam! | ^^^^^^^ Aug 01 16:35:42.244 INFO kablam! Aug 01 16:35:42.244 INFO kablam! warning: unused import: `::std::hash::Hash` Aug 01 16:35:42.244 INFO kablam! --> src/ssa/representation.rs:5:5 Aug 01 16:35:42.244 INFO kablam! | Aug 01 16:35:42.245 INFO kablam! 5 | use ::std::hash::Hash; Aug 01 16:35:42.245 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:42.245 INFO kablam! Aug 01 16:35:42.246 INFO kablam! warning: unused import: `::std::fmt::Debug` Aug 01 16:35:42.246 INFO kablam! --> src/graph/dfs.rs:2:5 Aug 01 16:35:42.246 INFO kablam! | Aug 01 16:35:42.246 INFO kablam! 2 | use ::std::fmt::Debug; Aug 01 16:35:42.246 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:42.246 INFO kablam! Aug 01 16:35:42.247 INFO kablam! warning: unused import: `GraphAccessor` Aug 01 16:35:42.247 INFO kablam! --> src/graph/dfs.rs:5:14 Aug 01 16:35:42.247 INFO kablam! | Aug 01 16:35:42.247 INFO kablam! 5 | use super::{ GraphAccessor, GraphDfs }; Aug 01 16:35:42.247 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:42.247 INFO kablam! Aug 01 16:35:44.795 INFO kablam! warning: unused variable: `atom_num` Aug 01 16:35:44.795 INFO kablam! --> src/beam_module.rs:218:9 Aug 01 16:35:44.795 INFO kablam! | Aug 01 16:35:44.795 INFO kablam! 218 | for atom_num in 0..len { Aug 01 16:35:44.795 INFO kablam! | ^^^^^^^^ help: consider using `_atom_num` instead Aug 01 16:35:44.795 INFO kablam! | Aug 01 16:35:44.795 INFO kablam! = note: #[warn(unused_variables)] on by default Aug 01 16:35:44.795 INFO kablam! Aug 01 16:35:45.769 INFO kablam! warning: method is never used: `x_reg` Aug 01 16:35:45.769 INFO kablam! --> src/op.rs:687:5 Aug 01 16:35:45.769 INFO kablam! | Aug 01 16:35:45.769 INFO kablam! 687 | fn x_reg(num: u32) -> Source { Aug 01 16:35:45.769 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:45.769 INFO kablam! | Aug 01 16:35:45.769 INFO kablam! = note: #[warn(dead_code)] on by default Aug 01 16:35:45.769 INFO kablam! Aug 01 16:35:45.770 INFO kablam! warning: type alias is never used: `GraphAccessor` Aug 01 16:35:45.770 INFO kablam! --> src/graph/mod.rs:14:1 Aug 01 16:35:45.770 INFO kablam! | Aug 01 16:35:45.770 INFO kablam! 14 | pub type GraphAccessor = Fn(NodeId, usize) -> Option; Aug 01 16:35:45.770 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:45.770 INFO kablam! Aug 01 16:35:45.821 INFO kablam! warning: unused variable: `atom_num` Aug 01 16:35:45.821 INFO kablam! --> src/beam_module.rs:218:9 Aug 01 16:35:45.821 INFO kablam! | Aug 01 16:35:45.821 INFO kablam! 218 | for atom_num in 0..len { Aug 01 16:35:45.821 INFO kablam! | ^^^^^^^^ help: consider using `_atom_num` instead Aug 01 16:35:45.821 INFO kablam! | Aug 01 16:35:45.821 INFO kablam! = note: #[warn(unused_variables)] on by default Aug 01 16:35:45.821 INFO kablam! Aug 01 16:35:46.918 INFO kablam! warning: method is never used: `x_reg` Aug 01 16:35:46.918 INFO kablam! --> src/op.rs:687:5 Aug 01 16:35:46.918 INFO kablam! | Aug 01 16:35:46.918 INFO kablam! 687 | fn x_reg(num: u32) -> Source { Aug 01 16:35:46.918 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:46.920 INFO kablam! | Aug 01 16:35:46.920 INFO kablam! = note: #[warn(dead_code)] on by default Aug 01 16:35:46.920 INFO kablam! Aug 01 16:35:46.921 INFO kablam! warning: type alias is never used: `GraphAccessor` Aug 01 16:35:46.921 INFO kablam! --> src/graph/mod.rs:14:1 Aug 01 16:35:46.921 INFO kablam! | Aug 01 16:35:46.921 INFO kablam! 14 | pub type GraphAccessor = Fn(NodeId, usize) -> Option; Aug 01 16:35:46.921 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:46.922 INFO kablam! Aug 01 16:35:48.153 INFO kablam! warning: unused import: `::std::rc::Rc` Aug 01 16:35:48.154 INFO kablam! --> src/op.rs:6:5 Aug 01 16:35:48.154 INFO kablam! | Aug 01 16:35:48.154 INFO kablam! 6 | use ::std::rc::Rc; Aug 01 16:35:48.154 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:48.154 INFO kablam! | Aug 01 16:35:48.154 INFO kablam! = note: #[warn(unused_imports)] on by default Aug 01 16:35:48.154 INFO kablam! Aug 01 16:35:48.162 INFO kablam! warning: unused import: `Literal` Aug 01 16:35:48.162 INFO kablam! --> src/ssa/mod.rs:5:52 Aug 01 16:35:48.162 INFO kablam! | Aug 01 16:35:48.162 INFO kablam! 5 | use ::op::{ Op, LabelId, Register, OpKind, Source, Literal }; Aug 01 16:35:48.162 INFO kablam! | ^^^^^^^ Aug 01 16:35:48.162 INFO kablam! Aug 01 16:35:48.162 INFO kablam! warning: unused import: `::std::hash::Hash` Aug 01 16:35:48.162 INFO kablam! --> src/ssa/representation.rs:5:5 Aug 01 16:35:48.162 INFO kablam! | Aug 01 16:35:48.162 INFO kablam! 5 | use ::std::hash::Hash; Aug 01 16:35:48.162 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:48.162 INFO kablam! Aug 01 16:35:48.165 INFO kablam! warning: unused import: `::std::fmt::Debug` Aug 01 16:35:48.165 INFO kablam! --> src/graph/dfs.rs:2:5 Aug 01 16:35:48.165 INFO kablam! | Aug 01 16:35:48.165 INFO kablam! 2 | use ::std::fmt::Debug; Aug 01 16:35:48.165 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:48.165 INFO kablam! Aug 01 16:35:48.165 INFO kablam! warning: unused import: `GraphAccessor` Aug 01 16:35:48.165 INFO kablam! --> src/graph/dfs.rs:5:14 Aug 01 16:35:48.165 INFO kablam! | Aug 01 16:35:48.165 INFO kablam! 5 | use super::{ GraphAccessor, GraphDfs }; Aug 01 16:35:48.165 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:48.165 INFO kablam! Aug 01 16:35:48.413 INFO kablam! warning: unused import: `::std::rc::Rc` Aug 01 16:35:48.413 INFO kablam! --> src/op.rs:6:5 Aug 01 16:35:48.413 INFO kablam! | Aug 01 16:35:48.413 INFO kablam! 6 | use ::std::rc::Rc; Aug 01 16:35:48.413 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:48.413 INFO kablam! | Aug 01 16:35:48.413 INFO kablam! = note: #[warn(unused_imports)] on by default Aug 01 16:35:48.413 INFO kablam! Aug 01 16:35:48.441 INFO kablam! warning: unused import: `Literal` Aug 01 16:35:48.441 INFO kablam! --> src/ssa/mod.rs:5:52 Aug 01 16:35:48.441 INFO kablam! | Aug 01 16:35:48.441 INFO kablam! 5 | use ::op::{ Op, LabelId, Register, OpKind, Source, Literal }; Aug 01 16:35:48.441 INFO kablam! | ^^^^^^^ Aug 01 16:35:48.441 INFO kablam! Aug 01 16:35:48.442 INFO kablam! warning: unused import: `::std::hash::Hash` Aug 01 16:35:48.442 INFO kablam! --> src/ssa/representation.rs:5:5 Aug 01 16:35:48.442 INFO kablam! | Aug 01 16:35:48.442 INFO kablam! 5 | use ::std::hash::Hash; Aug 01 16:35:48.442 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:48.442 INFO kablam! Aug 01 16:35:48.444 INFO kablam! warning: unused import: `::std::fmt::Debug` Aug 01 16:35:48.444 INFO kablam! --> src/graph/dfs.rs:2:5 Aug 01 16:35:48.444 INFO kablam! | Aug 01 16:35:48.444 INFO kablam! 2 | use ::std::fmt::Debug; Aug 01 16:35:48.444 INFO kablam! | ^^^^^^^^^^^^^^^^^ Aug 01 16:35:48.444 INFO kablam! Aug 01 16:35:48.444 INFO kablam! warning: unused import: `GraphAccessor` Aug 01 16:35:48.444 INFO kablam! --> src/graph/dfs.rs:5:14 Aug 01 16:35:48.444 INFO kablam! | Aug 01 16:35:48.444 INFO kablam! 5 | use super::{ GraphAccessor, GraphDfs }; Aug 01 16:35:48.444 INFO kablam! | ^^^^^^^^^^^^^ Aug 01 16:35:48.444 INFO kablam! Aug 01 16:35:51.170 INFO kablam! warning: unused variable: `atom_num` Aug 01 16:35:51.170 INFO kablam! --> src/beam_module.rs:218:9 Aug 01 16:35:51.170 INFO kablam! | Aug 01 16:35:51.170 INFO kablam! 218 | for atom_num in 0..len { Aug 01 16:35:51.170 INFO kablam! | ^^^^^^^^ help: consider using `_atom_num` instead Aug 01 16:35:51.180 INFO kablam! | Aug 01 16:35:51.181 INFO kablam! = note: #[warn(unused_variables)] on by default Aug 01 16:35:51.181 INFO kablam! Aug 01 16:35:51.295 INFO kablam! warning: unused variable: `atom_num` Aug 01 16:35:51.295 INFO kablam! --> src/beam_module.rs:218:9 Aug 01 16:35:51.295 INFO kablam! | Aug 01 16:35:51.295 INFO kablam! 218 | for atom_num in 0..len { Aug 01 16:35:51.295 INFO kablam! | ^^^^^^^^ help: consider using `_atom_num` instead Aug 01 16:35:51.295 INFO kablam! | Aug 01 16:35:51.295 INFO kablam! = note: #[warn(unused_variables)] on by default Aug 01 16:35:51.295 INFO kablam! Aug 01 16:35:52.703 INFO kablam! warning: method is never used: `with_reads_labels` Aug 01 16:35:52.703 INFO kablam! --> src/op.rs:32:5 Aug 01 16:35:52.703 INFO kablam! | Aug 01 16:35:52.703 INFO kablam! 32 | pub fn with_reads_labels(kind: OpKind, reads: Vec, labels: Vec) -> Self { Aug 01 16:35:52.703 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.703 INFO kablam! | Aug 01 16:35:52.704 INFO kablam! = note: #[warn(dead_code)] on by default Aug 01 16:35:52.704 INFO kablam! Aug 01 16:35:52.704 INFO kablam! warning: variant is never constructed: `CaseEnd` Aug 01 16:35:52.705 INFO kablam! --> src/op.rs:156:5 Aug 01 16:35:52.705 INFO kablam! | Aug 01 16:35:52.705 INFO kablam! 156 | CaseEnd, Aug 01 16:35:52.705 INFO kablam! | ^^^^^^^ Aug 01 16:35:52.705 INFO kablam! Aug 01 16:35:52.706 INFO kablam! warning: method is never used: `x_reg` Aug 01 16:35:52.706 INFO kablam! --> src/op.rs:687:5 Aug 01 16:35:52.706 INFO kablam! | Aug 01 16:35:52.706 INFO kablam! 687 | fn x_reg(num: u32) -> Source { Aug 01 16:35:52.706 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.706 INFO kablam! Aug 01 16:35:52.707 INFO kablam! warning: method is never used: `get_register` Aug 01 16:35:52.707 INFO kablam! --> src/op.rs:691:5 Aug 01 16:35:52.707 INFO kablam! | Aug 01 16:35:52.707 INFO kablam! 691 | pub fn get_register(&self) -> Register { Aug 01 16:35:52.707 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.707 INFO kablam! Aug 01 16:35:52.708 INFO kablam! warning: method is never used: `get_register` Aug 01 16:35:52.708 INFO kablam! --> src/ssa/representation.rs:63:5 Aug 01 16:35:52.708 INFO kablam! | Aug 01 16:35:52.708 INFO kablam! 63 | pub fn get_register(&self) -> SSARegister { Aug 01 16:35:52.708 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.709 INFO kablam! Aug 01 16:35:52.710 INFO kablam! warning: type alias is never used: `GraphAccessor` Aug 01 16:35:52.710 INFO kablam! --> src/graph/mod.rs:14:1 Aug 01 16:35:52.710 INFO kablam! | Aug 01 16:35:52.710 INFO kablam! 14 | pub type GraphAccessor = Fn(NodeId, usize) -> Option; Aug 01 16:35:52.710 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.711 INFO kablam! Aug 01 16:35:52.805 INFO kablam! warning: method is never used: `with_reads_labels` Aug 01 16:35:52.805 INFO kablam! --> src/op.rs:32:5 Aug 01 16:35:52.805 INFO kablam! | Aug 01 16:35:52.805 INFO kablam! 32 | pub fn with_reads_labels(kind: OpKind, reads: Vec, labels: Vec) -> Self { Aug 01 16:35:52.805 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.805 INFO kablam! | Aug 01 16:35:52.805 INFO kablam! = note: #[warn(dead_code)] on by default Aug 01 16:35:52.805 INFO kablam! Aug 01 16:35:52.806 INFO kablam! warning: variant is never constructed: `CaseEnd` Aug 01 16:35:52.806 INFO kablam! --> src/op.rs:156:5 Aug 01 16:35:52.806 INFO kablam! | Aug 01 16:35:52.806 INFO kablam! 156 | CaseEnd, Aug 01 16:35:52.806 INFO kablam! | ^^^^^^^ Aug 01 16:35:52.806 INFO kablam! Aug 01 16:35:52.806 INFO kablam! warning: method is never used: `x_reg` Aug 01 16:35:52.806 INFO kablam! --> src/op.rs:687:5 Aug 01 16:35:52.806 INFO kablam! | Aug 01 16:35:52.806 INFO kablam! 687 | fn x_reg(num: u32) -> Source { Aug 01 16:35:52.806 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.806 INFO kablam! Aug 01 16:35:52.806 INFO kablam! warning: method is never used: `get_register` Aug 01 16:35:52.807 INFO kablam! --> src/op.rs:691:5 Aug 01 16:35:52.807 INFO kablam! | Aug 01 16:35:52.807 INFO kablam! 691 | pub fn get_register(&self) -> Register { Aug 01 16:35:52.807 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.807 INFO kablam! Aug 01 16:35:52.807 INFO kablam! warning: method is never used: `get_register` Aug 01 16:35:52.807 INFO kablam! --> src/ssa/representation.rs:63:5 Aug 01 16:35:52.807 INFO kablam! | Aug 01 16:35:52.807 INFO kablam! 63 | pub fn get_register(&self) -> SSARegister { Aug 01 16:35:52.807 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.807 INFO kablam! Aug 01 16:35:52.808 INFO kablam! warning: type alias is never used: `GraphAccessor` Aug 01 16:35:52.808 INFO kablam! --> src/graph/mod.rs:14:1 Aug 01 16:35:52.808 INFO kablam! | Aug 01 16:35:52.808 INFO kablam! 14 | pub type GraphAccessor = Fn(NodeId, usize) -> Option; Aug 01 16:35:52.808 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Aug 01 16:35:52.808 INFO kablam! Aug 01 16:35:53.000 INFO kablam! Finished dev [unoptimized + debuginfo] target(s) in 20.68s Aug 01 16:35:53.007 INFO kablam! su: No module specific data is present Aug 01 16:35:53.521 INFO running `"docker" "rm" "-f" "1dba3416594898b6e71bffb1ee6d38bec42263fbdd9edc57c6eb43dc0b50dbaf"` Aug 01 16:35:53.677 INFO blam! 1dba3416594898b6e71bffb1ee6d38bec42263fbdd9edc57c6eb43dc0b50dbaf