diff options
Diffstat (limited to 'src/test/ui/statics/static-function-pointer-xc.rs')
-rw-r--r-- | src/test/ui/statics/static-function-pointer-xc.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/test/ui/statics/static-function-pointer-xc.rs b/src/test/ui/statics/static-function-pointer-xc.rs new file mode 100644 index 000000000..2d063a751 --- /dev/null +++ b/src/test/ui/statics/static-function-pointer-xc.rs @@ -0,0 +1,17 @@ +// run-pass +// aux-build:static-function-pointer-aux.rs + +extern crate static_function_pointer_aux as aux; + +fn f(x: isize) -> isize { x } + +pub fn main() { + assert_eq!(aux::F(42), -42); + unsafe { + assert_eq!(aux::MutF(42), -42); + aux::MutF = f; + assert_eq!(aux::MutF(42), 42); + aux::MutF = aux::f; + assert_eq!(aux::MutF(42), -42); + } +} |