﻿# V3532\. AUTOSAR\. Unary minus operator should not be applied to an expression of the unsigned type\.

Данное диагностическое правило основано на руководстве [AUTOSAR](https://www.autosar.org/) \(AUTomotive Open System ARchitecture\) по разработке программного обеспечения\.

При применении унарного минуса к переменной типа 'unsigned int', 'unsigned long' или 'unsigned long long' тип этой переменной не изменится и останется 'unsigned'\. Таким образом, подобная операция является бессмысленной\.

При применении унарного минуса к меньшему 'unsigned' целочисленному типу в результате целочисленного расширения возможно получение 'signed' числа, однако это не является хорошим подходом, и на такую операцию также будет выдано предупреждение\.

Пример кода, на который анализатор выдаст предупреждение:

```cpp
unsigned int x = 1U;
int y = -x;
```