error: getting the inner pointer of a temporary `CString`
  --> $DIR/lint-temporary-cstring-as-ptr.rs:14:48
   |
LL |     let s = CString::new("some text").unwrap().as_ptr();
   |             ---------------------------------- ^^^^^^ 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: 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
note: the lint level is defined here
  --> $DIR/lint-temporary-cstring-as-ptr.rs:2:9
   |
LL | #![deny(temporary_cstring_as_ptr)]
   |         ^^^^^^^^^^^^^^^^^^^^^^^^

error: getting the inner pointer of a temporary `CString`
  --> $DIR/lint-temporary-cstring-as-ptr.rs:8:52
   |
LL |         let s = CString::new("some text").unwrap().as_ptr();
   |                 ---------------------------------- ^^^^^^ this pointer will be invalid
   |                 |
   |                 this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
...
LL |     mymacro!();
   |     ---------- in this macro invocation
   |
   = 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
   = note: this error originates in the macro `mymacro` (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 2 previous errors

