Project

General

Profile

Actions

Bug #4189

closed

Rustc nightly warning getting the inner pointer of a temporary `CString`

Added by Shivani Bhardwaj about 2 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Target version:
Affected Versions:
Effort:
Difficulty:
Label:

Description

My compiler is rustc 1.50.0-nightly (603ab5bd6 2020-11-15)

The full warning text is

warning: getting the inner pointer of a temporary `CString`
  --> src/conf.rs:38:47
   |
38 |         if ConfGet(CString::new(key).unwrap().as_ptr(), &mut vptr) != 1 {
   |                    -------------------------- ^^^^^^ this pointer will be invalid
   |                    |
   |                    this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
   |
   = note: `#[warn(temporary_cstring_as_ptr)]` on by default
   = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
   = help: for more information, see https://doc.rust-lang.org/reference/destructors.html


Related issues 1 (0 open1 closed)

Copied from Bug #4177: Rustc nightly warning getting the inner pointer of a temporary `CString`ClosedPhilippe AntoineActions
Actions #1

Updated by Shivani Bhardwaj about 2 years ago

  • Copied from Bug #4177: Rustc nightly warning getting the inner pointer of a temporary `CString` added
Actions #2

Updated by Shivani Bhardwaj about 2 years ago

  • Status changed from Assigned to In Review
  • Label deleted (Needs backport, Needs backport to 4.1, Needs backport to 5.0, Needs backport to 6.0)
Actions #3

Updated by Victor Julien about 2 years ago

  • Status changed from In Review to Closed
Actions

Also available in: Atom PDF