Предупреждение C28205

"function": _Success_ или _On_failure_ используется в незаконном контексте

_On_failure_ Заметки _Success_ и заметки можно использовать только для возвращаемых значений функции.

Примеры

В этом примере показано, как предупреждение находит неуместную заметку SAL:

#include <sal.h>

// Oops, _Success_ is not valid in parameter lists, should be moved to return value.
bool GetValue( _Success_(return != false) _Out_ int *pInt, bool flag)
{
   if(flag) {
      *pInt = 5;
      return true;
   } else {
      return false;
   }
}

Чтобы исправить проблему, переместите заметку SAL в возвращаемое значение:

#include <sal.h>

_Success_(return != false)
bool GetValue(_Out_ int *pInt, bool flag)
{
   if(flag) {
      *pInt = 5;
      return true;
   } else {
      return false;
   }
}

См. также

Основные сведения о языке SAL