summaryrefslogtreecommitdiffstats
path: root/tests/ui/associated-consts/auxiliary
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/associated-consts/auxiliary')
-rw-r--r--tests/ui/associated-consts/auxiliary/associated-const-cc-lib.rs34
-rw-r--r--tests/ui/associated-consts/auxiliary/empty-struct.rs9
2 files changed, 43 insertions, 0 deletions
diff --git a/tests/ui/associated-consts/auxiliary/associated-const-cc-lib.rs b/tests/ui/associated-consts/auxiliary/associated-const-cc-lib.rs
new file mode 100644
index 000000000..4fcefe32c
--- /dev/null
+++ b/tests/ui/associated-consts/auxiliary/associated-const-cc-lib.rs
@@ -0,0 +1,34 @@
+#![crate_type="lib"]
+
+// These items are for testing that associated consts work cross-crate.
+pub trait Foo {
+ const BAR: usize;
+}
+
+pub struct FooNoDefault;
+
+impl Foo for FooNoDefault {
+ const BAR: usize = 0;
+}
+
+// These test that defaults and default resolution work cross-crate.
+pub trait FooDefault {
+ const BAR: usize = 1;
+}
+
+pub struct FooOverwriteDefault;
+
+impl FooDefault for FooOverwriteDefault {
+ const BAR: usize = 2;
+}
+
+pub struct FooUseDefault;
+
+impl FooDefault for FooUseDefault {}
+
+// Test inherent impls.
+pub struct InherentBar;
+
+impl InherentBar {
+ pub const BAR: usize = 3;
+}
diff --git a/tests/ui/associated-consts/auxiliary/empty-struct.rs b/tests/ui/associated-consts/auxiliary/empty-struct.rs
new file mode 100644
index 000000000..93275e714
--- /dev/null
+++ b/tests/ui/associated-consts/auxiliary/empty-struct.rs
@@ -0,0 +1,9 @@
+pub struct XEmpty1 {}
+pub struct XEmpty2;
+pub struct XEmpty7();
+
+pub enum XE {
+ XEmpty3 {},
+ XEmpty4,
+ XEmpty6(),
+}