C6509
경고 C6509: 주석이 잘못되었습니다. 'return'은 사전 조건에서 참조될 수 없습니다.
이 경고는 return [expression] 문을 사전 조건에서 사용할 수 없음을 나타냅니다. return 문은 함수의 실행을 종료하고 호출한 함수로 제어를 반환하는 데 사용됩니다. 식이 있는 경우 식의 값이 호출한 함수로 반환됩니다.
함수가 return 문을 사용하여 값을 반환할 수 있기 때문에 이 문은 사후 조건에 사용할 속성 값으로 지정할 수 있습니다.
예제
다음 코드에서는 사전 조건에 'return'이 사용되었기 때문에 이 경고가 생성됩니다.
// C
#include <CodeAnalysis\SourceAnnotations.h>
int f([SA_Pre(ValidElements="return")] char *pc);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
int f([Pre(ValidElements="return")] char *pc);
이 경고를 해결하려면 다음 샘플 코드에서처럼 사후 조건에 'return'을 사용합니다.
// C
#include <CodeAnalysis\SourceAnnotations.h>
[returnvalue:SA_Post(MustCheck=SA_Yes)]int f(
[SA_Post(ValidElements="return")] char *pc
);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
[returnvalue:Post(MustCheck=Yes)]int f(
[Post(ValidElements="return")] char *pc
);