about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorDylan DPC <dylan.dpc@gmail.com>2020-05-11 22:21:01 +0200
committerGitHub <noreply@github.com>2020-05-11 22:21:01 +0200
commitd9c3110ae84919d43004561490d50fac58f36299 (patch)
treede2977bf9058a3de6ed96457e8928d5bce301e1b /src
parenta14af7fff8e3ef503a141d0ea725d025ef168a77 (diff)
parent62116c31cd863c8aab35e5c7acfb8ded41ca28a1 (diff)
downloadrust-d9c3110ae84919d43004561490d50fac58f36299.tar.gz
rust-d9c3110ae84919d43004561490d50fac58f36299.zip
Rollup merge of #72067 - jonas-schievink:fuel-warn, r=varkor
Emit a warning when optimization fuel runs out

`eprintln!` gets swallowed by Cargo too easily.
Diffstat (limited to 'src')
-rw-r--r--src/librustc_session/session.rs2
-rw-r--r--src/test/ui/optimization-fuel-0.rs3
-rw-r--r--src/test/ui/optimization-fuel-0.stderr5
-rw-r--r--src/test/ui/optimization-fuel-1.rs3
-rw-r--r--src/test/ui/optimization-fuel-1.stderr5
5 files changed, 11 insertions, 7 deletions
diff --git a/src/librustc_session/session.rs b/src/librustc_session/session.rs
index 4b1cc71c822..b39b15dc244 100644
--- a/src/librustc_session/session.rs
+++ b/src/librustc_session/session.rs
@@ -808,7 +808,7 @@ impl Session {
                 let mut fuel = self.optimization_fuel.lock();
                 ret = fuel.remaining != 0;
                 if fuel.remaining == 0 && !fuel.out_of_fuel {
-                    eprintln!("optimization-fuel-exhausted: {}", msg());
+                    self.warn(&format!("optimization-fuel-exhausted: {}", msg()));
                     fuel.out_of_fuel = true;
                 } else if fuel.remaining > 0 {
                     fuel.remaining -= 1;
diff --git a/src/test/ui/optimization-fuel-0.rs b/src/test/ui/optimization-fuel-0.rs
index f86972b7348..a97c5750f94 100644
--- a/src/test/ui/optimization-fuel-0.rs
+++ b/src/test/ui/optimization-fuel-0.rs
@@ -4,8 +4,7 @@
 
 use std::mem::size_of;
 
-// (#55495: The --error-format is to sidestep an issue in our test harness)
-// compile-flags: --error-format human -Z fuel=foo=0
+// compile-flags: -Z fuel=foo=0
 
 struct S1(u8, u16, u8);
 struct S2(u8, u16, u8);
diff --git a/src/test/ui/optimization-fuel-0.stderr b/src/test/ui/optimization-fuel-0.stderr
index 3ad405b2b50..f0e2ebfc37a 100644
--- a/src/test/ui/optimization-fuel-0.stderr
+++ b/src/test/ui/optimization-fuel-0.stderr
@@ -1 +1,4 @@
-optimization-fuel-exhausted: Reorder fields of "S1"
+warning: optimization-fuel-exhausted: Reorder fields of "S1"
+
+warning: 1 warning emitted
+
diff --git a/src/test/ui/optimization-fuel-1.rs b/src/test/ui/optimization-fuel-1.rs
index 98283066361..a09f91c68ab 100644
--- a/src/test/ui/optimization-fuel-1.rs
+++ b/src/test/ui/optimization-fuel-1.rs
@@ -4,8 +4,7 @@
 
 use std::mem::size_of;
 
-// (#55495: The --error-format is to sidestep an issue in our test harness)
-// compile-flags: --error-format human -Z fuel=foo=1
+// compile-flags: -Z fuel=foo=1
 
 struct S1(u8, u16, u8);
 struct S2(u8, u16, u8);
diff --git a/src/test/ui/optimization-fuel-1.stderr b/src/test/ui/optimization-fuel-1.stderr
index 197e45219c3..53eafb05830 100644
--- a/src/test/ui/optimization-fuel-1.stderr
+++ b/src/test/ui/optimization-fuel-1.stderr
@@ -1 +1,4 @@
-optimization-fuel-exhausted: Reorder fields of "S2"
+warning: optimization-fuel-exhausted: Reorder fields of "S2"
+
+warning: 1 warning emitted
+