]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: Improve byte vector to string conversion
authorOwen Avery <powerboat9.gamer@gmail.com>
Wed, 2 Aug 2023 20:45:42 +0000 (16:45 -0400)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 16 Jan 2024 18:00:33 +0000 (19:00 +0100)
gcc/rust/ChangeLog:

* expand/rust-macro-builtins.cc
(MacroBuiltin::include_str_handler): Use vector::data.

Signed-off-by: Owen Avery <powerboat9.gamer@gmail.com>
gcc/rust/expand/rust-macro-builtins.cc

index 718d740b1dc7ab58f7e1a78226573c192ab977f9..b36a46f0affdee47d59e65901a6c68247d8e9dae 100644 (file)
@@ -576,10 +576,8 @@ MacroBuiltin::include_str_handler (location_t invoc_locus,
   if (expect_single)
     rust_error_at (invoc_locus, "%s was not a valid utf-8 file",
                   target_filename.c_str ());
-  else if (!bytes.empty ())
-    str = std::string ((const char *) &bytes[0], bytes.size ());
   else
-    return tl::nullopt;
+    str = std::string ((const char *) bytes.data (), bytes.size ());
 
   auto node = AST::SingleASTNode (make_string (invoc_locus, str));
   auto str_tok = make_token (Token::make_string (invoc_locus, std::move (str)));