about summary refs log tree commit diff
path: root/src/test/compile-fail/empty-struct-braces-expr.rs
diff options
context:
space:
mode:
authorVadim Petrochenkov <vadim.petrochenkov@gmail.com>2015-10-02 22:41:24 +0300
committerVadim Petrochenkov <vadim.petrochenkov@gmail.com>2015-10-13 15:19:20 +0300
commit8a12c19171887ea6d7ff708db2e2581ceaf16c14 (patch)
tree2ff02dad84730da28dc96d487d96a442350ee320 /src/test/compile-fail/empty-struct-braces-expr.rs
parentbeda1f88a7d87cf994fe8e3a5b2fe126e31fcae9 (diff)
downloadrust-8a12c19171887ea6d7ff708db2e2581ceaf16c14.tar.gz
rust-8a12c19171887ea6d7ff708db2e2581ceaf16c14.zip
Test and gate empty structures and variants better
Diffstat (limited to 'src/test/compile-fail/empty-struct-braces-expr.rs')
-rw-r--r--src/test/compile-fail/empty-struct-braces-expr.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/test/compile-fail/empty-struct-braces-expr.rs b/src/test/compile-fail/empty-struct-braces-expr.rs
new file mode 100644
index 00000000000..67167086b9c
--- /dev/null
+++ b/src/test/compile-fail/empty-struct-braces-expr.rs
@@ -0,0 +1,26 @@
+// 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.
+
+// Can't use empty braced struct as constant or constructor function
+
+#![feature(braced_empty_structs)]
+
+struct Empty1 {}
+
+enum E {
+    Empty2 {}
+}
+
+fn main() {
+    let e1 = Empty1; //~ ERROR `Empty1` is the name of a struct or struct variant
+    let e1 = Empty1(); //~ ERROR `Empty1` is the name of a struct or struct variant
+    let e2 = E::Empty2; //~ ERROR `E::Empty2` is the name of a struct or struct variant
+    let e2 = E::Empty2(); //~ ERROR `E::Empty2` is the name of a struct or struct variant
+}