about summary refs log tree commit diff
path: root/src/comp/middle
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2011-05-17 14:12:49 -0700
committerPatrick Walton <pcwalton@mimiga.net>2011-05-17 14:12:49 -0700
commitf300de2963a35047fbd317002efea9b017cbb916 (patch)
treee444f9c1bd46fcb15ee752d4c9d4886e341964e3 /src/comp/middle
parent5047ab0b0cc84af577d1a0816d2496986397e967 (diff)
downloadrust-f300de2963a35047fbd317002efea9b017cbb916.tar.gz
rust-f300de2963a35047fbd317002efea9b017cbb916.zip
rustc: Make return value checking warnings a little prettier. Also introduce a new "note" diagnostic level.
Diffstat (limited to 'src/comp/middle')
-rw-r--r--src/comp/middle/tstate/ck.rs8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/comp/middle/tstate/ck.rs b/src/comp/middle/tstate/ck.rs
index af2455c9a6e..f9e8416a322 100644
--- a/src/comp/middle/tstate/ck.rs
+++ b/src/comp/middle/tstate/ck.rs
@@ -141,9 +141,11 @@ fn check_states_against_conditions(&fn_ctxt fcx, &_fn f, &ann a) -> () {
         /* fcx.ccx.tcx.sess.span_err(f.body.span, "Function " +
            fcx.name + " may not return. Its declared return type is "
            + util.common.ty_to_str(*f.decl.output)); */
-        log_err("WARNING: Function " +
-           fcx.name + " may not return. Its declared return type is "
-                + ty_to_str(*f.decl.output));
+        fcx.ccx.tcx.sess.span_warn(f.body.span, "not all control paths " +
+            "return a value");
+        fcx.ccx.tcx.sess.span_note(f.decl.output.span,
+            "see declared return type of '" + ty_to_str(*f.decl.output) +
+            "'");
     }
 
 }