Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ICH: Enable some cases in trait definition hashing. #37072

Merged
merged 1 commit into from
Oct 12, 2016
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
176 changes: 85 additions & 91 deletions src/test/incremental/hashes/trait_defs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -46,16 +46,15 @@ pub trait TraitVisibility { }


// Change trait unsafety ----------------------------------------------------------
// FIXME: this should work but doesn't yet.
// #[cfg(cfail1)]
// trait TraitUnsafety { }
#[cfg(cfail1)]
trait TraitUnsafety { }

// #[cfg(not(cfail1))]
// #[rustc_dirty(label="Hir", cfg="cfail2")]
// #[rustc_clean(label="Hir", cfg="cfail3")]
// #[rustc_metadata_dirty(cfg="cfail2")]
// #[rustc_metadata_clean(cfg="cfail3")]
// unsafe trait TraitUnsafety { }
#[cfg(not(cfail1))]
#[rustc_dirty(label="Hir", cfg="cfail2")]
#[rustc_clean(label="Hir", cfg="cfail3")]
#[rustc_metadata_dirty(cfg="cfail2")]
#[rustc_metadata_clean(cfg="cfail3")]
unsafe trait TraitUnsafety { }



Expand Down Expand Up @@ -178,20 +177,19 @@ trait TraitChangeMethodParameterType {


// Change type of method parameter (&i32 => &mut i32) -----------------------------
// FIXME: this should work but doesn't yet.
// #[cfg(cfail1)]
// trait TraitChangeMethodParameterTypeRef {
// fn method(a: &i32);
// }
#[cfg(cfail1)]
trait TraitChangeMethodParameterTypeRef {
fn method(a: &i32);
}

// #[cfg(not(cfail1))]
// #[rustc_dirty(label="Hir", cfg="cfail2")]
// #[rustc_clean(label="Hir", cfg="cfail3")]
// #[rustc_metadata_dirty(cfg="cfail2")]
// #[rustc_metadata_clean(cfg="cfail3")]
// trait TraitChangeMethodParameterTypeRef {
// fn method(a: &mut i32);
// }
#[cfg(not(cfail1))]
#[rustc_dirty(label="Hir", cfg="cfail2")]
#[rustc_clean(label="Hir", cfg="cfail3")]
#[rustc_metadata_dirty(cfg="cfail2")]
#[rustc_metadata_clean(cfg="cfail3")]
trait TraitChangeMethodParameterTypeRef {
fn method(a: &mut i32);
}



Expand Down Expand Up @@ -249,35 +247,35 @@ trait TraitChangeOrderOfMethods {


// Change mode of self parameter --------------------------------------------------
// FIXME: this should work but doesn't yet.
// #[cfg(cfail1)]
// trait TraitChangeModeSelfRefToMut {
// fn method(&self);
// }

// #[cfg(not(cfail1))]
// #[rustc_dirty(label="Hir", cfg="cfail2")]
// #[rustc_clean(label="Hir", cfg="cfail3")]
// #[rustc_metadata_dirty(cfg="cfail2")]
// #[rustc_metadata_clean(cfg="cfail3")]
// trait TraitChangeModeSelfRefToMut {
// fn method(&mut self);
// }

// FIXME: this should work but doesn't yet.
// #[cfg(cfail1)]
// trait TraitChangeModeSelfOwnToMut {
// fn method(self);
// }

// #[cfg(not(cfail1))]
// #[rustc_dirty(label="Hir", cfg="cfail2")]
// #[rustc_clean(label="Hir", cfg="cfail3")]
// #[rustc_metadata_dirty(cfg="cfail2")]
// #[rustc_metadata_clean(cfg="cfail3")]
// trait TraitChangeModeSelfOwnToMut {
// fn method(mut self);
// }
#[cfg(cfail1)]
trait TraitChangeModeSelfRefToMut {
fn method(&self);
}

#[cfg(not(cfail1))]
#[rustc_dirty(label="Hir", cfg="cfail2")]
#[rustc_clean(label="Hir", cfg="cfail3")]
#[rustc_metadata_dirty(cfg="cfail2")]
#[rustc_metadata_clean(cfg="cfail3")]
trait TraitChangeModeSelfRefToMut {
fn method(&mut self);
}



#[cfg(cfail1)]
trait TraitChangeModeSelfOwnToMut {
fn method(self);
}

#[cfg(not(cfail1))]
#[rustc_dirty(label="Hir", cfg="cfail2")]
#[rustc_clean(label="Hir", cfg="cfail3")]
#[rustc_metadata_dirty(cfg="cfail2")]
#[rustc_metadata_clean(cfg="cfail3")]
trait TraitChangeModeSelfOwnToMut {
fn method(mut self);
}



Expand All @@ -298,56 +296,53 @@ trait TraitChangeModeSelfOwnToRef {


// Add unsafe modifier to method --------------------------------------------------
// FIXME: this should work but doesn't yet.
// #[cfg(cfail1)]
// trait TraitAddUnsafeModifier {
// fn method();
// }
#[cfg(cfail1)]
trait TraitAddUnsafeModifier {
fn method();
}

// #[cfg(not(cfail1))]
// #[rustc_dirty(label="Hir", cfg="cfail2")]
// #[rustc_clean(label="Hir", cfg="cfail3")]
// #[rustc_metadata_dirty(cfg="cfail2")]
// #[rustc_metadata_clean(cfg="cfail3")]
// trait TraitAddUnsafeModifier {
// unsafe fn method();
// }
#[cfg(not(cfail1))]
#[rustc_dirty(label="Hir", cfg="cfail2")]
#[rustc_clean(label="Hir", cfg="cfail3")]
#[rustc_metadata_dirty(cfg="cfail2")]
#[rustc_metadata_clean(cfg="cfail3")]
trait TraitAddUnsafeModifier {
unsafe fn method();
}



// Add extern modifier to method --------------------------------------------------
// FIXME: this should work but doesn't yet.
// #[cfg(cfail1)]
// trait TraitAddExternModifier {
// fn method();
// }
#[cfg(cfail1)]
trait TraitAddExternModifier {
fn method();
}

// #[cfg(not(cfail1))]
// #[rustc_dirty(label="Hir", cfg="cfail2")]
// #[rustc_clean(label="Hir", cfg="cfail3")]
// #[rustc_metadata_dirty(cfg="cfail2")]
// #[rustc_metadata_clean(cfg="cfail3")]
// trait TraitAddExternModifier {
// extern fn method();
// }
#[cfg(not(cfail1))]
#[rustc_dirty(label="Hir", cfg="cfail2")]
#[rustc_clean(label="Hir", cfg="cfail3")]
#[rustc_metadata_dirty(cfg="cfail2")]
#[rustc_metadata_clean(cfg="cfail3")]
trait TraitAddExternModifier {
extern fn method();
}



// Change extern "C" to extern "rust-intrinsic" -----------------------------------
// FIXME: this should work but doesn't yet.
// #[cfg(cfail1)]
// trait TraitChangeExternCToRustIntrinsic {
// extern "C" fn method();
// }
#[cfg(cfail1)]
trait TraitChangeExternCToRustIntrinsic {
extern "C" fn method();
}

// #[cfg(not(cfail1))]
// #[rustc_dirty(label="Hir", cfg="cfail2")]
// #[rustc_clean(label="Hir", cfg="cfail3")]
// #[rustc_metadata_dirty(cfg="cfail2")]
// #[rustc_metadata_clean(cfg="cfail3")]
// trait TraitChangeExternCToRustIntrinsic {
// extern "rust-intrinsic" fn method();
// }
#[cfg(not(cfail1))]
#[rustc_dirty(label="Hir", cfg="cfail2")]
#[rustc_clean(label="Hir", cfg="cfail3")]
#[rustc_metadata_dirty(cfg="cfail2")]
#[rustc_metadata_clean(cfg="cfail3")]
trait TraitChangeExternCToRustIntrinsic {
extern "rust-intrinsic" fn method();
}



Expand Down Expand Up @@ -1118,4 +1113,3 @@ mod change_method_type_parameter_bound_indirectly_where {
fn method(a: T);
}
}