Error map

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

C/C++ · 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.

call of overloaded is ambiguous — C++: error: call of overloaded 'f(int)' is ambiguous (C/C++)call of ove…C2065 — MSVC: error C2065: 'x': undeclared identifier (C/C++)C2065stray in program — C/C++: error: stray '\342' in program (smart quotes or invisible characters) (C/C++)stray in programinvalid conversion from — C++: error: invalid conversion from 'const char*' to 'char*' [-fpermissive] (C/C++)invalid conversion …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…does not name a type — C++: error: 'string' does not name a type (C/C++)does not name a typediscards qualifiers — C++: error: passing 'const X' as 'this' argument discards qualifiers [-fpermissive] (C/C++)discards qualifierscomparison 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…Assertion failed — C/C++: Assertion `x > 0' failed. Aborted (core dumped) — assert() condition was false (C/C++)Assertion failedE0308 — Rust: error[E0308]: mismatched types — expected `X`, found `Y` (Rust)E0308use of deleted function — C++: error: use of deleted function 'X::X(const X&)' — copying a non-copyable type (C/C++)use of deleted func…terminate called without an active exception — C++: terminate called without an active exception — std::thread destroyed while joinable (C/C++)terminate called wi…no match for 'operator' — C++: error: no match for 'operator<<' (operand types are 'std::ostream' and 'X') (C/C++)no match for 'opera…was not declared in this scope — C++: error: 'x' was not declared in this scope (undeclared identifier) (C/C++)was not declared in…cannot declare variable to be of abstract type — C++: error: cannot declare variable 'x' to be of abstract type 'Shape' (pure virtual functions) (C/C++)cannot declare vari…AddressSanitizer: heap-buffer-overflow — C/C++: ==ERROR: AddressSanitizer: heap-buffer-overflow on address — READ/WRITE of size N (C/C++)AddressSanitizer: h…expected ';' before — C/C++: error: expected ';' before 'x' — missing semicolon (C/C++)expected ';' beforeexpected primary-expression before — C++: error: expected primary-expression before ')' token (C/C++)expected primary-ex…need typename before dependent name — C++: error: need 'typename' before 'T::iterator' because 'T' is a dependent scope (C/C++)need typename befor…no matching function for call to — C++: error: no matching function for call to 'f(int, const char*)' (C/C++)no matching functio…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…control reaches end of non-void function — C/C++: warning: control reaches end of non-void function [-Wreturn-type] (C/C++)control reaches end…implicit declaration of function — C: warning: implicit declaration of function 'foo' [-Wimplicit-function-declaration] (C/C++)implicit declaratio…stack smashing detected — C/C++: *** stack smashing detected ***: terminated — buffer overflow on the stack (C/C++)stack smashing dete…declared and not used — Go: declared and not used: x / "fmt" imported and not used (Go)declared and not us…incomplete type — C++: error: invalid use of incomplete type 'class X' — forward declaration only (C/C++)incomplete typeexpected unqualified-id before — C++: error: expected unqualified-id before 'return' / before ')' token (C/C++)expected unqualifie…is private within this context — C++: error: 'int X::secret' is private within this context (C/C++)is private within t…ISO C++ forbids comparison between pointer and integer — C++: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] (C/C++)ISO C++ forbids com…C4996 — MSVC: error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead (C/C++)C4996terminate called after throwing an instance of — C++: terminate called after throwing an instance of 'std::out_of_range' — what(): vector::_M_range_check (C/C++)terminate called af…Segmentation fault — C/C++: Segmentation fault (core dumped) — SIGSEGV from a null, dangling or out-of-bounds pointer (C/C++)Segmentation faultpure virtual method called — C++: pure virtual method called — terminate called without an active exception (C/C++)pure virtual method…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)TS7016double free or corruption — C/C++: free(): double free detected / double free or corruption (out) — Aborted (core dumped) (C/C++)double free or corr…undefined reference to pthread_create — C/C++: undefined reference to `pthread_create' — missing -pthread (also `dlopen`, `clock_gettime`) (C/C++)undefined reference…std::bad_alloc — C++: terminate called after throwing an instance of 'std::bad_alloc' — what(): std::bad_alloc (C/C++)std::bad_alloc

Directly related (12)

C2065C/C++

MSVC: error C2065: 'x': undeclared identifier

Visual C++ met a name it has not seen declared — a typo, a missing header or namespace, or use outside its scope.

stray in programC/C++

C/C++: error: stray '\342' in program (smart quotes or invisible characters)

The source file contains a character the compiler does not recognise, typically curly quotes or a non-breaking space pasted from…

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…

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…

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…

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.

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.

Assertion failedC/C++

C/C++: Assertion `x > 0' failed. Aborted (core dumped) — assert() condition was false

An `assert()` in your code or in a library found its condition false and aborted the program on purpose.

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…

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…

terminate called without an active exceptionC/C++

C++: terminate called without an active exception — std::thread destroyed while joinable

A `std::thread` object was destroyed (or reassigned) while its thread was still running, so the C++ runtime called `std::terminat…

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 `

Two steps away (27)

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.

cannot declare variable to be of abstract typeC/C++

C++: error: cannot declare variable 'x' to be of abstract type 'Shape' (pure virtual functions)

You tried to create an object of a class that still has pure virtual functions; only a derived class that overrides all of them c…

AddressSanitizer: heap-buffer-overflowC/C++

C/C++: ==ERROR: AddressSanitizer: heap-buffer-overflow on address — READ/WRITE of size N

AddressSanitizer caught a read or write just outside a heap block — an array index or length that is off by one or more.

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.

expected primary-expression beforeC/C++

C++: error: expected primary-expression before ')' token

The parser expected a value or expression and found a token that cannot start one — often a type name passed where a value belong…

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…

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.

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…

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++.

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…

stack smashing detectedC/C++

C/C++: *** stack smashing detected ***: terminated — buffer overflow on the stack

GCC's stack protector noticed that a local buffer overflowed and overwrote the function's canary value, so it aborted the program.

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.

incomplete typeC/C++

C++: error: invalid use of incomplete type 'class X' — forward declaration only

You used a class that has only been forward-declared (so its size and members are unknown) where the full definition is required.

expected unqualified-id beforeC/C++

C++: error: expected unqualified-id before 'return' / before ')' token

The parser found a token where a name (declaration) was required — often a missing brace, a stray `)`, or a statement placed in a…

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.

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'`.

C4996C/C++

MSVC: error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead

Visual C++ treats classic C library functions such as `strcpy`, `sprintf`, `fopen` and `scanf` as deprecated or unsafe and, with…

terminate called after throwing an instance ofC/C++

C++: terminate called after throwing an instance of 'std::out_of_range' — what(): vector::_M_range_check

A C++ exception wasn’t caught anywhere, so std::terminate aborted the program. what() tells you the reason.

Segmentation faultC/C++

C/C++: Segmentation fault (core dumped) — SIGSEGV from a null, dangling or out-of-bounds pointer

The program touched memory it is not allowed to access — a null or dangling pointer, an out-of-range array index, or a stack over…

pure virtual method calledC/C++

C++: pure virtual method called — terminate called without an active exception

A pure virtual function was called on an object that is being constructed or destroyed, where the derived part no longer exists.

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.

double free or corruptionC/C++

C/C++: free(): double free detected / double free or corruption (out) — Aborted (core dumped)

Memory was freed twice or the heap was corrupted (buffer overflow, freeing a non-heap pointer), so glibc aborted the program.

undefined reference to pthread_createC/C++

C/C++: undefined reference to `pthread_create' — missing -pthread (also `dlopen`, `clock_gettime`)

Your program uses threads (or another system library) but the linker was not told to link it.

std::bad_allocC/C++

C++: terminate called after throwing an instance of 'std::bad_alloc' — what(): std::bad_alloc

`new` or a container could not get the memory requested — either the system is out of memory or the size was absurdly large (ofte…