Project

General

Profile

Actions

Bug #4188

closed

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

Added by Shivani Bhardwaj almost 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
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 Suricata - Bug #4177: Rustc nightly warning getting the inner pointer of a temporary `CString`ClosedPhilippe AntoineActions
Actions

Also available in: Atom PDF