Rust errors / Everything else
Rust compiler error · checked with rustc 1.99.0
Rust error E0699: #### Note: this error code is no longer emitted by the compiler
What it means#### Note: this error code is no longer emitted by the compiler.
Retired: rustc no longer emits this error code. You may still see it in old answers, books and CI logs from older toolchains; the explanation below is kept for reference.
The compiler team's explanation
Note: this error code is no longer emitted by the compiler.
A method was called on a raw pointer whose inner type wasn't completely known.
Erroneous code example:
let foo = &1;
let bar = foo as *const _;
if bar.is_null() {
// ...
}
Here, the type of bar isn't known; it could be a pointer to anything. Instead, specify a type for the pointer (preferably something that makes sense for the thing you're pointing to):
let foo = &1;
let bar = foo as *const i32;
if bar.is_null() {
// ...
}
Even though is_null() exists as a method on any raw pointer, Rust shows this error because Rust allows for self to have arbitrary types (behind the arbitrary_self_types feature flag).
This means that someone can specify such a function:
impl Foo {
fn is_null(self: *const Self) -> bool {
// do something else
}
}
and now when you call .is_null() on a raw pointer to Foo, there's ambiguity.
Given that we don't know what type the pointer is, and there's potential ambiguity for some types, we disallow calling methods on raw pointers when the type is unknown.
From rustc --explain E0699 (1.99.0), part of the Rust project, MIT or Apache-2.0. Official page.
Related errors
- E0061this function takes N arguments but M were supplied
- E0412cannot find type in this scope
- E0515cannot return reference to local variable
- E0728await is only allowed inside async functions and blocks
- E0695unlabeled `break` inside of a labeled block
- E0696`continue` pointing to a labeled block
- E0703invalid ABI: found `invalid`
- E0704incorrect visibility restriction
Up next
Often hit nextE0061: this function takes N arguments but M were suppliedA related error from the same family.Read it next →Did this answer your question?