Поделиться через


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[] );

См. также

Другие ресурсы

ValidElementsConst

ValidBytesConst