Incremental compilation

Testing for regressions with incremental compilation may require running a command multiple times. The following illustrates an example for #87384 which only generates a warning the second time a build is run with incremental. Previously no warning was emitted.

foo.rs:

#![type_length_limit = "95595489"] pub fn main() { println!("Hello, world!"); }

Create a script test.sh:

#!/bin/sh # Exit if any command fails. set -e rm -rf incremental rustc foo.rs --crate-type lib -C incremental=incremental echo second OUTPUT=`rustc foo.rs --crate-type lib -C incremental=incremental 2>&1` echo $OUTPUT ! echo "$OUTPUT" | grep \ "crate-level attribute should be in the root module"

Run this script with:

cargo-bisect-rustc --start 1.54.0 --end 1.55.0 --script ./test.sh