From e47cc69697b47f69d18d3c767b136c987a943645 Mon Sep 17 00:00:00 2001 From: Ed Schouten Date: Sat, 20 Jan 2018 21:45:35 +0100 Subject: [PATCH] Add testing coverage for assigning to immutable thread-locals. It is currently allowed to perform such assignments when not making use of NLL. NLL already does this right, but let's add a test in place to ensure it never regresses. --- .../nll/constant-thread-locals-issue-47053.rs | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/test/compile-fail/nll/constant-thread-locals-issue-47053.rs diff --git a/src/test/compile-fail/nll/constant-thread-locals-issue-47053.rs b/src/test/compile-fail/nll/constant-thread-locals-issue-47053.rs new file mode 100644 index 0000000000000..c7dc84c1a91c9 --- /dev/null +++ b/src/test/compile-fail/nll/constant-thread-locals-issue-47053.rs @@ -0,0 +1,21 @@ +// Copyright 2018 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 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// Regression test for issue #47053 + +#![feature(nll)] +#![feature(thread_local)] + +#[thread_local] +static FOO: isize = 5; + +fn main() { + FOO = 6; //~ ERROR cannot assign to immutable item `FOO` [E0594] +}