diff options
| author | Tim Chevalier <chevalier@alum.wellesley.edu> | 2012-03-11 20:55:19 -0700 |
|---|---|---|
| committer | Tim Chevalier <chevalier@alum.wellesley.edu> | 2012-03-11 20:55:19 -0700 |
| commit | 664d71f1f0c0e7ec70c6c521117bde95e027bfcf (patch) | |
| tree | 64494a4dff86e3b92e344972f01f3c18ed086a3d /src/rustc | |
| parent | fde4c1efbbe2c3fbd29b50a9fe61283714cd8769 (diff) | |
| download | rust-664d71f1f0c0e7ec70c6c521117bde95e027bfcf.tar.gz rust-664d71f1f0c0e7ec70c6c521117bde95e027bfcf.zip | |
Improve a typechecker error message (wrong type for main())
As per #1903, state what type is expected for main(). Closes #1903
Diffstat (limited to 'src/rustc')
| -rw-r--r-- | src/rustc/middle/typeck.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/rustc/middle/typeck.rs b/src/rustc/middle/typeck.rs index 7bc779429fb..36511d88ef4 100644 --- a/src/rustc/middle/typeck.rs +++ b/src/rustc/middle/typeck.rs @@ -3122,10 +3122,11 @@ fn check_main_fn_ty(tcx: ty::ctxt, main_id: ast::node_id, main_span: span) { ok &= num_args == 0u || num_args == 1u && arg_is_argv_ty(tcx, inputs[0]); if !ok { - tcx.sess.span_err(main_span, - "wrong type in main function: found `" + - ty_to_str(tcx, main_t) + "`"); - } + tcx.sess.span_err(main_span, + #fmt("Wrong type in main function: found `%s`, \ + expecting `native fn([str]) -> ()` or `native fn() -> ()`", + ty_to_str(tcx, main_t))); + } } _ { tcx.sess.span_bug(main_span, |
