Assume xfail-stage0 implies stage1 and stage2 in tests, for now.

This commit is contained in:
Graydon Hoare 2011-05-03 18:13:51 -07:00
parent 846068046d
commit c36645b358
99 changed files with 198 additions and 0 deletions

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
/* -*- mode: rust; indent-tabs-mode: nil -*-
* Implementation of 'fasta' benchmark from
* Computer Language Benchmarks Game

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: Unexpected token 'x'
fn main() {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: attempted dynamic environment-capture
fn foo() {
let int x;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: bad type signature
fn main(int x) {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: malformed name

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: mismatched types
fn main() {

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: mismatched types
fn main() {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: attempted dynamic environment-capture
fn foo[T]() { obj bar(T b) {} }
fn main() {}

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: binding alias slot
fn f(&int x) {}

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: non-type context
type base =
obj {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: dead

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: dead

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: is not a mod

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: does nothing
fn main() {
log "doing";

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: unknown module item
// rustboot has a different error message than rustc

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: tag of infinite size

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: infinite recursive type definition

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: name

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: return
fn f() -> int {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: unresolved identifier
obj oT() {
fn get() -> int {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: mismatched types

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: Unsatisfied .* lt(a, c)

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: iterator function
fn f() -> int {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: mismatched types

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: mismatched types
fn f(int x) -> int {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: token

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern: writing to immutable type

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: writing to immutable type
obj objy(int x) {
fn foo() -> () {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: writing to immutable type
fn main() {
let rec(int x) r = rec(x=1);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: writing to immutable type
fn main() {
let tup(int) t = tup(1);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern: writing to immutable type
fn main() {
let vec[int] v = vec(1, 2, 3);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern:explicit
fn main() {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// error-pattern:1 == 2
fn main() {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern:1 == 2

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern:non-exhaustive match failure

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern:predicate check

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern:bounds check

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
io fn main() {
let port[int] po = port();

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern:bounds check

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// error-pattern:bounds check

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn f(chan[int] c)

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn altsimple(any x) {
alt type (f) {
case (int i) { print("int"); }

View File

@ -1,6 +1,8 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// xfail-stage1
// xfail-stage2
fn f() -> int {
{ ret 3; }
}

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn a(chan[int] c) {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn a(chan[int] c) {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn a(chan[int] c) {

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// Reported as issue #126, child leaks the string.
fn child2(str s) {

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn f(@rec(int a, int b) x) {
assert (x.a == 10);
assert (x.b == 12);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn main() {

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
// Reported as issue #141, as a parse error. Ought to work in full though.

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// This test checks that destructors run in the right order. Because
// stateful objects can't have destructors, we have the destructors
// record their expected order into a channel when they execute (so

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
iter x() -> int {
}

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn main() {

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
use std;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
use std;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
use std;

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn sub(chan[int] parent, int id) {

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
use std;

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
tag mlist {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
mod multi = "multi-src" {
mod foo; // implicitly = "foo.rs"

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
native mod libc = target_libc {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
native "rust" mod rustrt {

View File

@ -1,6 +1,8 @@
// xfail-boot
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
obj big() {
fn one() -> int { ret 1; }

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
obj worker(chan[int] c) {
drop {
log "in dtor";

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn f(int a, int b) : lt(a,b) {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// This checks that preemption works.
fn starve_main(chan[int] alive) {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn x(str s, int n) {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() {
auto x = spawn m.child(10);
join x;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn main() {

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
use std;
import std._str;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() {
auto s = #shell { uname -a };
log s;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
test05();
}

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
test00();
}

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn start(chan[chan[str]] c) {
let port[str] p = port();
c <| chan(p);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn start(chan[chan[str]] c) {
let port[str] p = port();
c <| chan(p);

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
use std;
import std._task;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
use std;
import std._task;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
use std;
import std._task;

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn start(chan[int] c, int n) {
let int i = n;

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
log "===== SPAWNING and JOINING TASKS =====";
test00(false);

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
log "===== WITHOUT THREADS =====";
test00(false);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
test00();
}

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
test00();
}

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
test00();
}

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
test00(true);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// Create a task that is supervised by another task,
// join the supervised task from the supervising task,
// then fail the supervised task. The supervised task

View File

@ -1,5 +1,7 @@
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() -> () {
spawn child("Hello");
}

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn main() {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
import size_of = std.sys.rustrt.size_of;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
mod foo {
export x;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
use std;
use libc();
use zed(name = "std");

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
use std (name = "std",

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() {
let char yen = '¥'; // 0xa5
let char c_cedilla = 'ç'; // 0xe7

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
use std;
import std._str;
import std._vec;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// This is a test for issue #109.
use std;

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
use std;

View File

@ -1,6 +1,8 @@
// xfail-boot
// xfail-boot
// xfail-stage0
// xfail-stage1
// xfail-stage2
fn main() {
let vec[int] v = vec(1,2,3,4,5);
auto v2 = v.(1,2);

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn main() {

View File

@ -1,4 +1,6 @@
// xfail-stage0
// xfail-stage1
// xfail-stage2
// -*- rust -*-
fn main() {