Switch from colored to termcolor
diff --git a/tests/zzz_stable.rs b/tests/zzz_stable.rs
index 87bac22..a81b3df 100644
--- a/tests/zzz_stable.rs
+++ b/tests/zzz_stable.rs
@@ -1,10 +1,11 @@
 #![cfg(syn_disable_nightly_tests)]
 
-extern crate colored;
+extern crate termcolor;
 
-use colored::Colorize;
+use std::io::{self, Write};
+use termcolor::{Color, ColorChoice, ColorSpec, StandardStream, WriteColor};
 
-const MSG: &str = "
+const MSG: &str = "\

 ‖   WARNING:
 ‖   This is not a nightly compiler so not all tests were able to
@@ -15,9 +16,20 @@
 ";
 
 #[test]
-fn notice() {
-    panic!(MSG
-        .replace("WARNING", &"WARNING".bold().to_string())
-        .yellow()
-        .to_string());
+fn notice() -> io::Result<()> {
+    let header = "WARNING";
+    let index_of_header = MSG.find(header).unwrap();
+    let before = &MSG[..index_of_header];
+    let after = &MSG[index_of_header + header.len()..];
+
+    let mut stderr = StandardStream::stderr(ColorChoice::Auto);
+    stderr.set_color(ColorSpec::new().set_fg(Some(Color::Yellow)))?;
+    write!(&mut stderr, "{}", before)?;
+    stderr.set_color(ColorSpec::new().set_bold(true).set_fg(Some(Color::Yellow)))?;
+    write!(&mut stderr, "{}", header)?;
+    stderr.set_color(ColorSpec::new().set_fg(Some(Color::Yellow)))?;
+    write!(&mut stderr, "{}", after)?;
+    stderr.reset()?;
+
+    Ok(())
 }