Do the same things for fulldeps tests
This commit is contained in:
parent
1f5b201aff
commit
3fe1d9c524
9 changed files with 126 additions and 6 deletions
|
@ -14,14 +14,11 @@
|
|||
#![feature(plugin)]
|
||||
#![plugin(lint_plugin_test)]
|
||||
#![forbid(test_lint)]
|
||||
//~^ NOTE lint level defined here
|
||||
//~| NOTE `forbid` level set here
|
||||
|
||||
fn lintme() { } //~ ERROR item is named 'lintme'
|
||||
|
||||
#[allow(test_lint)]
|
||||
//~^ ERROR allow(test_lint) overruled by outer forbid(test_lint)
|
||||
//~| NOTE overruled by previous forbid
|
||||
pub fn main() {
|
||||
lintme();
|
||||
}
|
23
src/test/ui-fulldeps/lint-plugin-forbid-attrs.stderr
Normal file
23
src/test/ui-fulldeps/lint-plugin-forbid-attrs.stderr
Normal file
|
@ -0,0 +1,23 @@
|
|||
error: item is named 'lintme'
|
||||
--> $DIR/lint-plugin-forbid-attrs.rs:18:1
|
||||
|
|
||||
18 | fn lintme() { } //~ ERROR item is named 'lintme'
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: lint level defined here
|
||||
--> $DIR/lint-plugin-forbid-attrs.rs:16:11
|
||||
|
|
||||
16 | #![forbid(test_lint)]
|
||||
| ^^^^^^^^^
|
||||
|
||||
error[E0453]: allow(test_lint) overruled by outer forbid(test_lint)
|
||||
--> $DIR/lint-plugin-forbid-attrs.rs:20:9
|
||||
|
|
||||
16 | #![forbid(test_lint)]
|
||||
| --------- `forbid` level set here
|
||||
...
|
||||
20 | #[allow(test_lint)]
|
||||
| ^^^^^^^^^ overruled by previous forbid
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
|
@ -15,7 +15,6 @@ extern crate derive_panic;
|
|||
|
||||
#[derive(A)]
|
||||
//~^ ERROR: proc-macro derive panicked
|
||||
//~| HELP: message: nope!
|
||||
struct Foo;
|
||||
|
||||
fn main() {}
|
8
src/test/ui-fulldeps/proc-macro/load-panic.stderr
Normal file
8
src/test/ui-fulldeps/proc-macro/load-panic.stderr
Normal file
|
@ -0,0 +1,8 @@
|
|||
error: proc-macro derive panicked
|
||||
--> $DIR/load-panic.rs:16:10
|
||||
|
|
||||
16 | #[derive(A)]
|
||||
| ^
|
||||
|
|
||||
= help: message: nope!
|
||||
|
|
@ -16,7 +16,5 @@ extern crate proc_macro;
|
|||
#[proc_macro_derive(A)]
|
||||
pub unsafe extern fn foo(a: i32, b: u32) -> u32 {
|
||||
//~^ ERROR: mismatched types
|
||||
//~| NOTE: expected normal fn, found unsafe fn
|
||||
//~| NOTE: expected type `fn(proc_macro::TokenStream) -> proc_macro::TokenStream`
|
||||
loop {}
|
||||
}
|
14
src/test/ui-fulldeps/proc-macro/signature.stderr
Normal file
14
src/test/ui-fulldeps/proc-macro/signature.stderr
Normal file
|
@ -0,0 +1,14 @@
|
|||
error[E0308]: mismatched types
|
||||
--> $DIR/signature.rs:17:1
|
||||
|
|
||||
17 | / pub unsafe extern fn foo(a: i32, b: u32) -> u32 {
|
||||
18 | | //~^ ERROR: mismatched types
|
||||
19 | | loop {}
|
||||
20 | | }
|
||||
| |_^ expected normal fn, found unsafe fn
|
||||
|
|
||||
= note: expected type `fn(proc_macro::TokenStream) -> proc_macro::TokenStream`
|
||||
found type `unsafe extern "C" fn(i32, u32) -> u32 {foo}`
|
||||
|
||||
error: aborting due to previous error
|
||||
|
31
src/test/ui-fulldeps/update-all-references.sh
Normal file
31
src/test/ui-fulldeps/update-all-references.sh
Normal file
|
@ -0,0 +1,31 @@
|
|||
#!/usr/bin/env bash
|
||||
#
|
||||
# Copyright 2015 The Rust Project Developers. See the COPYRIGHT
|
||||
# file at the top-level directory of this distribution and at
|
||||
# http://rust-lang.org/COPYRIGHT.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
# option. This file may not be copied, modified, or distributed
|
||||
# except according to those terms.
|
||||
|
||||
# A script to update the references for all tests. The idea is that
|
||||
# you do a run, which will generate files in the build directory
|
||||
# containing the (normalized) actual output of the compiler. You then
|
||||
# run this script, which will copy those files over. If you find
|
||||
# yourself manually editing a foo.stderr file, you're doing it wrong.
|
||||
#
|
||||
# See all `update-references.sh`, if you just want to update a single test.
|
||||
|
||||
if [[ "$1" == "--help" || "$1" == "-h" || "$1" == "" || "$2" != "" ]]; then
|
||||
echo "usage: $0 <build-directory>"
|
||||
echo ""
|
||||
echo "For example:"
|
||||
echo " $0 ../../../build/x86_64-apple-darwin/test/ui"
|
||||
fi
|
||||
|
||||
BUILD_DIR=$PWD/$1
|
||||
MY_DIR=$(dirname $0)
|
||||
cd $MY_DIR
|
||||
find . -name '*.rs' | xargs ./update-references.sh $BUILD_DIR
|
50
src/test/ui-fulldeps/update-references.sh
Normal file
50
src/test/ui-fulldeps/update-references.sh
Normal file
|
@ -0,0 +1,50 @@
|
|||
#!/usr/bin/env bash
|
||||
#
|
||||
# Copyright 2015 The Rust Project Developers. See the COPYRIGHT
|
||||
# file at the top-level directory of this distribution and at
|
||||
# http://rust-lang.org/COPYRIGHT.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
# option. This file may not be copied, modified, or distributed
|
||||
# except according to those terms.
|
||||
|
||||
# A script to update the references for particular tests. The idea is
|
||||
# that you do a run, which will generate files in the build directory
|
||||
# containing the (normalized) actual output of the compiler. This
|
||||
# script will then copy that output and replace the "expected output"
|
||||
# files. You can then commit the changes.
|
||||
#
|
||||
# If you find yourself manually editing a foo.stderr file, you're
|
||||
# doing it wrong.
|
||||
|
||||
if [[ "$1" == "--help" || "$1" == "-h" || "$1" == "" || "$2" == "" ]]; then
|
||||
echo "usage: $0 <build-directory> <relative-path-to-rs-files>"
|
||||
echo ""
|
||||
echo "For example:"
|
||||
echo " $0 ../../../build/x86_64-apple-darwin/test/ui *.rs */*.rs"
|
||||
fi
|
||||
|
||||
MYDIR=$(dirname $0)
|
||||
|
||||
BUILD_DIR="$1"
|
||||
shift
|
||||
|
||||
while [[ "$1" != "" ]]; do
|
||||
STDERR_NAME="${1/%.rs/.stderr}"
|
||||
STDOUT_NAME="${1/%.rs/.stdout}"
|
||||
shift
|
||||
if [ -f $BUILD_DIR/$STDOUT_NAME ] && \
|
||||
! (diff $BUILD_DIR/$STDOUT_NAME $MYDIR/$STDOUT_NAME >& /dev/null); then
|
||||
echo updating $MYDIR/$STDOUT_NAME
|
||||
cp $BUILD_DIR/$STDOUT_NAME $MYDIR/$STDOUT_NAME
|
||||
fi
|
||||
if [ -f $BUILD_DIR/$STDERR_NAME ] && \
|
||||
! (diff $BUILD_DIR/$STDERR_NAME $MYDIR/$STDERR_NAME >& /dev/null); then
|
||||
echo updating $MYDIR/$STDERR_NAME
|
||||
cp $BUILD_DIR/$STDERR_NAME $MYDIR/$STDERR_NAME
|
||||
fi
|
||||
done
|
||||
|
||||
|
Loading…
Reference in a new issue