This error can be caused by the compiler not finding a matching definition for a function that has been declared. For instance, if a given function is declared taking an int and defined taking a float:
__device__ int myfunc(int a);
...
int b = myfunc(123);
...
__device__ int myfunc(float a) {
...
}
→ External calls are not supported (found non-inlined call to myfunc)