summary refs log tree commit diff
path: root/src/liballoc
diff options
context:
space:
mode:
authorkennytm <kennytm@gmail.com>2018-05-09 17:25:53 +0800
committerkennytm <kennytm@gmail.com>2018-05-09 20:29:42 +0800
commit1f4718a5c1ae842d119b2a0399ce07a4ee78c28c (patch)
tree6c360ee03585f6a63746937ff64d49b75195c3ab /src/liballoc
parentdea03f1239a5c9ce44daff36473c7d258c4aef1d (diff)
parent160063aad2206a35e6312bfaa159f0f4475af0ae (diff)
downloadrust-1f4718a5c1ae842d119b2a0399ce07a4ee78c28c.tar.gz
rust-1f4718a5c1ae842d119b2a0399ce07a4ee78c28c.zip
Rollup merge of #50460 - F001:const_string, r=kennytm
Make `String::new()` const

Following the steps of https://github.com/rust-lang/rust/pull/50233 , make `String::new()` a `const fn`.
Diffstat (limited to 'src/liballoc')
-rw-r--r--src/liballoc/lib.rs1
-rw-r--r--src/liballoc/string.rs3
2 files changed, 3 insertions, 1 deletions
diff --git a/src/liballoc/lib.rs b/src/liballoc/lib.rs
index da4b76a4d52..bb78c14b905 100644
--- a/src/liballoc/lib.rs
+++ b/src/liballoc/lib.rs
@@ -125,6 +125,7 @@
 #![feature(inclusive_range_methods)]
 #![cfg_attr(stage0, feature(generic_param_attrs))]
 #![feature(rustc_const_unstable)]
+#![feature(const_vec_new)]
 
 #![cfg_attr(not(test), feature(fn_traits, i128))]
 #![cfg_attr(test, feature(test))]
diff --git a/src/liballoc/string.rs b/src/liballoc/string.rs
index 2f84d5f7f86..da9afdd2ca3 100644
--- a/src/liballoc/string.rs
+++ b/src/liballoc/string.rs
@@ -380,7 +380,8 @@ impl String {
     /// ```
     #[inline]
     #[stable(feature = "rust1", since = "1.0.0")]
-    pub fn new() -> String {
+    #[rustc_const_unstable(feature = "const_string_new")]
+    pub const fn new() -> String {
         String { vec: Vec::new() }
     }