C6501
Предупреждение C6503: Конфликт аннотации: свойство <имя> конфликтует с ранее указанным свойством
![]() |
---|
Это предупреждение возникает только в коде, который использует нерекомендуемую версию языка заметок исходного кода (SAL).Рекомендуется переносить код для использования последней версии SAL.Для получения дополнительной информации см. Использование аннотаций SAL для сокращения количества дефектов в коде C/C++. |
Данное предупреждение указывает на наличие конфликтующих свойств в аннотации.Как правило, это происходит, когда для аннотации параметра или возвращаемого значения используется несколько свойств с одним назначением.Чтобы устранить это предупреждение, необходимо выбрать одно свойство, наиболее полно отвечающее своему назначению.
Пример
В следующем коде создается данное предупреждение, поскольку два свойства — ValidElementsConst и ValidBytesConst — предоставляют механизм чтения допустимых данных:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void fd([SA_Pre(ValidElementsConst =4, ValidBytesConst =4)] char pch[]);
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f( [Pre(ValidElementsConst=4, ValidBytesConst=4 )] char pch[] );
Для устранения этого предупреждения используйте наиболее оптимальное свойство, как указано в следующем коде:
// C
#include <CodeAnalysis\SourceAnnotations.h>
void f( [SA_Pre(ValidElementsConst=4)] char pch[] );
// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f( [Pre(ValidElementsConst=4)] char pch[] );