Наличие этого кода:
typedef volatile int COUNT;
COUNT functionOne( COUNT *number );
int functionTwo( int *number );
Я не могу избавиться от некоторых предупреждений.
Я получаю это предупреждение 1 на прототипе functionOne
[Предупреждение] возвращаемый тип функции
и я получаю это предупреждение 2, где я вызываю functionTwo с аргументом COUNT указатель вместо указателя int
[Предупреждение] листы отбрасывают квалификаторы из целевого типа указателя
очевидно, что переменные/указатели не могут быть "приведены" во volatile/un-volatile. но все аргументы должны быть указаны как изменчивые тоже? так как я могу использовать любую библиотечную функцию, если она уже определена для нелетучей переменной?
EDIT: с помощью gcc -std=c99 -pedantic -Wall -Wshadow -Wpointer-arith -Wcast-qual -Wextra -Wstrict-prototypes -Wmissing-prototypes …
РЕДАКТИРОВАТЬ: после консультации Jukka Suomela это пример кода для предупреждения двух
typedef volatile int COUNT;
static int functionTwo(int *number) {
return *number + 1;
}
int main(void) {
COUNT count= 10;
count = functionTwo(&count);
return 0;
}