about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoe Neeman <joeneeman@gmail.com>2016-11-21 22:02:03 +0100
committerJoe Neeman <joeneeman@gmail.com>2016-11-21 22:02:03 +0100
commite795d38270fe11195be761efb52f4acef0ad197d (patch)
treef2e242ce050b228ad53770ad81ef22e52e65f2f6
parentebec55406ba94faf8b2cd23b27a8f74df97d1ca4 (diff)
downloadrust-e795d38270fe11195be761efb52f4acef0ad197d.tar.gz
rust-e795d38270fe11195be761efb52f4acef0ad197d.zip
Add regression test for issue 23699.
-rw-r--r--src/test/run-pass/issue-23699.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/test/run-pass/issue-23699.rs b/src/test/run-pass/issue-23699.rs
new file mode 100644
index 00000000000..1909be4df7b
--- /dev/null
+++ b/src/test/run-pass/issue-23699.rs
@@ -0,0 +1,23 @@
+// Copyright 2016 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.
+
+fn gimme_a_raw_pointer<T>(_: *const T) { }
+
+fn test<T>(t: T) { }
+
+fn main() {
+    // Clearly `pointer` must be of type `*const ()`.
+    let pointer = &() as *const _;
+    gimme_a_raw_pointer(pointer);
+
+    let t = test as fn (i32);
+    t(0i32);
+}
+