Error map

E0271: type mismatch resolving associated type Rust: error[E0271]: type mismatch resolving `<impl Iterator as Iterator>::Item == i32`

Rust · layer 4, Application & API

Open the full error page →

Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.

E0271: type mismatch resolving associated type — Rust: error[E0271]: type mismatch resolving `<impl Iterator as Iterator>::Item == i32` (Rust)E0271: type…invalid conversion from — C++: error: invalid conversion from 'const char*' to 'char*' [-fpermissive] (C/C++)invalid conversion …call of overloaded is ambiguous — C++: error: call of overloaded 'f(int)' is ambiguous (C/C++)call of overloaded …does not name a type — C++: error: 'string' does not name a type (C/C++)does not name a typecomparison of integers of different signs — C/C++: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' [-Wsign-compare] (C/C++)comparison of integ…E0308 — Rust: error[E0308]: mismatched types — expected `X`, found `Y` (Rust)E0308ISO C++ forbids comparison between pointer and integer — C++: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] (C/C++)ISO C++ forbids com…narrowing conversion — C++: error: narrowing conversion of 'x' from 'int' to 'char' inside { } [-Wnarrowing] (C/C++)narrowing conversiontemplate argument deduction/substitution failed — C++: error: template argument deduction/substitution failed / couldn't deduce template parameter (C/C++)template argument d…E0277: the trait bound is not satisfied — Rust: error[E0277]: the trait bound `Foo: Display` is not satisfied / `Rc<RefCell<T>>` cannot be sent between threads safely (Rust)E0277: the trait bo…Blocking waiting for file lock on package cache / build directory — Cargo: Blocking waiting for file lock on package cache / on build directory (Rust)Blocking waiting fo…invalid operation: mismatched types — Go: invalid operation: a + b (mismatched types int and float64) (Go)invalid operation: …cannot use x as type in assignment/argument — Go: cannot use "5" (untyped string constant) as int value in argument to f (Go)cannot use x as typ…no matching function for call to — C++: error: no matching function for call to 'f(int, const char*)' (C/C++)no matching functio…discards qualifiers — C++: error: passing 'const X' as 'this' argument discards qualifiers [-fpermissive] (C/C++)discards qualifiersE0412: cannot find type in this scope — Rust: error[E0412]: cannot find type `User` in this scope (Rust)E0412: cannot find …no match for 'operator' — C++: error: no match for 'operator<<' (operand types are 'std::ostream' and 'X') (C/C++)no match for 'opera…use of deleted function — C++: error: use of deleted function 'X::X(const X&)' — copying a non-copyable type (C/C++)use of deleted func…is private within this context — C++: error: 'int X::secret' is private within this context (C/C++)is private within t…declared and not used — Go: declared and not used: x / "fmt" imported and not used (Go)declared and not us…expected ';' before — C/C++: error: expected ';' before 'x' — missing semicolon (C/C++)expected ';' beforewas not declared in this scope — C++: error: 'x' was not declared in this scope (undeclared identifier) (C/C++)was not declared in…control reaches end of non-void function — C/C++: warning: control reaches end of non-void function [-Wreturn-type] (C/C++)control reaches end…format expects argument of type — C: warning: format '%d' expects argument of type 'int', but argument 2 has type 'long int' [-Wformat=] (C/C++)format expects argu…implicit declaration of function — C: warning: implicit declaration of function 'foo' [-Wimplicit-function-declaration] (C/C++)implicit declaratio…AttributeError — AttributeError: 'X' object has no attribute 'y' (Python)AttributeErrorClassCastException — java.lang.ClassCastException: class A cannot be cast to class B (Java)ClassCastExceptionTS7016 — TS7016: Could not find a declaration file for module 'x'. 'x.js' implicitly has an 'any' type. (Node.js)TS7016E0369: binary operation cannot be applied to type — Rust: error[E0369]: binary operation `+` cannot be applied to type `Foo` / cannot add `&str` to `&str` (Rust)E0369: binary opera…runtime error: — C/C++: runtime error: signed integer overflow / null pointer / shift exponent too large (UndefinedBehaviorSanitizer) (C/C++)runtime error:need typename before dependent name — C++: error: need 'typename' before 'T::iterator' because 'T' is a dependent scope (C/C++)need typename befor…E0599: no method named found for type — Rust: error[E0599]: no method named `push_str` found for struct `Vec<String>` in the current scope (Rust)E0599: no method na…E0004: non-exhaustive patterns — Rust: error[E0004]: non-exhaustive patterns: `None` not covered (Rust)E0004: non-exhausti…E0061: this function takes N arguments but M were supplied — Rust: error[E0061]: this function takes 2 arguments but 1 argument was supplied (Rust)E0061: this functio…E0499: cannot borrow as mutable more than once at a time — Rust: error[E0499]: cannot borrow `v` as mutable more than once at a time (Rust)E0499: cannot borro…E0505: cannot move out of value because it is borrowed — Rust: error[E0505]: cannot move out of `s` because it is borrowed (Rust)E0505: cannot move …E0507: cannot move out of a shared reference / index — Rust: error[E0507]: cannot move out of `self.name` which is behind a shared reference (Rust)E0507: cannot move …imported and not used — Go: ./main.go:5:2: "os" imported and not used (Go)imported and not us…cannot assign to struct field m[k].f in map — Go: cannot assign to struct field users["bob"].Age in map (Go)cannot assign to st…does not implement interface (missing method) — Go: cannot use &Dog{} (value of type *Dog) as Animal value: *Dog does not implement Animal (missing method Speak) (Go)does not implement …undefined: x — Go: ./main.go:12:2: undefined: handler (Go)undefined: xmissing return — Go: ./main.go:18:1: missing return (Go)missing returnno new variables on left side of := — Go: ./main.go:9:6: no new variables on left side of := (Go)no new variables on…

Directly related (12)

invalid conversion fromC/C++

C++: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]

C++ forbids silently dropping `const` or converting between unrelated pointer types — typically a string literal assigned to `cha…

call of overloaded is ambiguousC/C++

C++: error: call of overloaded 'f(int)' is ambiguous

Two or more overloads fit equally well, so the compiler refuses to guess which function you meant.

does not name a typeC/C++

C++: error: 'string' does not name a type

Where the compiler expected a type, it found a name it does not know as one — a missing header, namespace, or class declared late…

comparison of integers of different signsC/C++

C/C++: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' [-Wsign-compare]

A signed integer is compared with an unsigned one; the signed value is converted to unsigned, so a negative number becomes huge.

E0308Rust

Rust: error[E0308]: mismatched types — expected `X`, found `Y`

A value’s type doesn’t match what the context expects — common with &str vs String, Option/Result vs plain values, and integer ty…

ISO C++ forbids comparison between pointer and integerC/C++

C++: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]

You compared a string literal or pointer with a character or integer — typically `ch == "y"` instead of `ch == 'y'`.

narrowing conversionC/C++

C++: error: narrowing conversion of 'x' from 'int' to 'char' inside { } [-Wnarrowing]

Brace initialisation `{}` refuses conversions that can lose data, such as `double` to `int` or a runtime `int` to `char`.

template argument deduction/substitution failedC/C++

C++: error: template argument deduction/substitution failed / couldn't deduce template parameter

The compiler could not work out the template arguments from your call — the arguments disagree, the type can't be deduced, or a c…

E0277: the trait bound is not satisfiedRust

Rust: error[E0277]: the trait bound `Foo: Display` is not satisfied / `Rc<RefCell<T>>` cannot be sent between threads safely

A type doesn't implement a trait required by a function, macro or generic bound.

Blocking waiting for file lock on package cache / build directoryRust

Cargo: Blocking waiting for file lock on package cache / on build directory

Another cargo process (or rust-analyzer/IDE) holds the lock, so this command waits.

invalid operation: mismatched typesGo

Go: invalid operation: a + b (mismatched types int and float64)

You combined two values of different types; Go never converts numeric types implicitly.

cannot use x as type in assignment/argumentGo

Go: cannot use "5" (untyped string constant) as int value in argument to f

A value's type is not assignable to the type required by the variable, parameter or return value.

Two steps away (30)

no matching function for call toC/C++

C++: error: no matching function for call to 'f(int, const char*)'

No overload of the function accepts the arguments you passed — wrong count, wrong types, or a missing conversion.

discards qualifiersC/C++

C++: error: passing 'const X' as 'this' argument discards qualifiers [-fpermissive]

A const object (or const reference) is calling a method that is not declared const, which could modify it.

E0412: cannot find type in this scopeRust

Rust: error[E0412]: cannot find type `User` in this scope

A type name isn't defined or imported in the current module.

no match for 'operator'C/C++

C++: error: no match for 'operator<<' (operand types are 'std::ostream' and 'X')

You used an operator on a type that does not define it — most often printing your own class with `

use of deleted functionC/C++

C++: error: use of deleted function 'X::X(const X&)' — copying a non-copyable type

The code needs a function (usually a copy constructor or assignment) that was deleted explicitly or implicitly, as for `std::uniq…

is private within this contextC/C++

C++: error: 'int X::secret' is private within this context

Code outside the class tried to use a private (or protected) member.

declared and not usedGo

Go: declared and not used: x / "fmt" imported and not used

Go refuses to compile code with unused local variables or unused imports.

expected ';' beforeC/C++

C/C++: error: expected ';' before 'x' — missing semicolon

The compiler reached a token where a statement should have ended — almost always a missing semicolon on the line above.

was not declared in this scopeC/C++

C++: error: 'x' was not declared in this scope (undeclared identifier)

The compiler met a name it has never seen: it is misspelled, declared later, out of scope, or its header or namespace is missing.

control reaches end of non-void functionC/C++

C/C++: warning: control reaches end of non-void function [-Wreturn-type]

A function that promises a return value can finish without returning one on some path — undefined behaviour in C++.

format expects argument of typeC/C++

C: warning: format '%d' expects argument of type 'int', but argument 2 has type 'long int' [-Wformat=]

The `printf`/`scanf` format specifier does not match the argument's type, which is undefined behaviour and prints garbage or cras…

implicit declaration of functionC/C++

C: warning: implicit declaration of function 'foo' [-Wimplicit-function-declaration]

In C you called a function the compiler has not seen declared — usually a missing `#include`. Newer compilers treat it as an erro…

AttributeErrorPython

AttributeError: 'X' object has no attribute 'y'

You accessed an attribute or method that doesn’t exist on that object type.

ClassCastExceptionJava

java.lang.ClassCastException: class A cannot be cast to class B

An object was cast to a type it isn’t.

TS7016Node.js

TS7016: Could not find a declaration file for module 'x'. 'x.js' implicitly has an 'any' type.

The JavaScript package has no TypeScript types bundled and no @types package installed.

E0369: binary operation cannot be applied to typeRust

Rust: error[E0369]: binary operation `+` cannot be applied to type `Foo` / cannot add `&str` to `&str`

An operator (`+`, `==`, `

runtime error:C/C++

C/C++: runtime error: signed integer overflow / null pointer / shift exponent too large (UndefinedBehaviorSanitizer)

UBSan detected code that triggers undefined behaviour (overflow, null dereference, out-of-bounds index, bad shift, misaligned acc…

need typename before dependent nameC/C++

C++: error: need 'typename' before 'T::iterator' because 'T' is a dependent scope

Inside a template, a name like `T::iterator` could be a type or a value, so C++ requires the `typename` keyword to say it is a ty…

E0599: no method named found for typeRust

Rust: error[E0599]: no method named `push_str` found for struct `Vec<String>` in the current scope

The type doesn't have that method — wrong type, trait not in scope, or missing derive/feature.

E0004: non-exhaustive patternsRust

Rust: error[E0004]: non-exhaustive patterns: `None` not covered

A `match` doesn't handle every possible value of the type.

E0061: this function takes N arguments but M were suppliedRust

Rust: error[E0061]: this function takes 2 arguments but 1 argument was supplied

A call has too few or too many arguments for the function signature.

E0499: cannot borrow as mutable more than once at a timeRust

Rust: error[E0499]: cannot borrow `v` as mutable more than once at a time

Two mutable references to the same value were alive at once, which Rust forbids.

E0505: cannot move out of value because it is borrowedRust

Rust: error[E0505]: cannot move out of `s` because it is borrowed

You moved a value while a reference to it was still in use.

E0507: cannot move out of a shared reference / indexRust

Rust: error[E0507]: cannot move out of `self.name` which is behind a shared reference

You tried to take ownership of a value through a reference (or from a Vec/Option behind `&`).

imported and not usedGo

Go: ./main.go:5:2: "os" imported and not used

The file imports a package that no code in that file uses; Go treats this as a compile error, not a warning.

cannot assign to struct field m[k].f in mapGo

Go: cannot assign to struct field users["bob"].Age in map

Map values are not addressable, so you cannot modify a field of a struct stored directly in a map.

does not implement interface (missing method)Go

Go: cannot use &Dog{} (value of type *Dog) as Animal value: *Dog does not implement Animal (missing method Speak)

A type was used as an interface but lacks a method or has it with a different signature or receiver type.

undefined: xGo

Go: ./main.go:12:2: undefined: handler

The compiler cannot find an identifier — a typo, a missing import, or it lives in another file/package that wasn't built.

missing returnGo

Go: ./main.go:18:1: missing return

A function with a return type can reach its end without a return statement on some path.

no new variables on left side of :=Go

Go: ./main.go:9:6: no new variables on left side of :=

`:=` declares variables, but all names on the left already exist in the same scope.