Compiler Warning (level 1) C4715
TOC
Collapse the table of content
Expand the table of content
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer

Compiler Warning (level 1) C4715

Error Message

'function' : not all control paths return a value

The specified function can potentially not return a value.

Example

// C4715a.cpp
// compile with: /W1 /LD
int func1( int i )
{
   if( i )
   return 3;  // C4715 warning, nothing returned if i == 0
}

To prevent this warning, modify the code so that all paths assign a return value to the function:

// C4715b.cpp
// compile with: /LD
int func1( int i )
{
   if( i ) return 3;
   else return 0;     // OK, always returns a value
}

It is possible that your code may contain a call to a function that never returns, as in the following example:

// C4715c.cpp
// compile with: /W1 /LD
void fatal()
{
}
int glue()
{
   if(0)
      return 1;
   else if(0)
      return 0;
   else
      fatal();   // C4715
}

This code also generates a warning, because the compiler does not know that fatal never returns. To prevent this code from generating an error message, declare fatal using __declspec(noreturn).

Show:
© 2016 Microsoft