LINUX.ORG.RU

История изменений

Исправление i-rinat, (текущая версия) :

Как компилировать код на C, чтобы компилятор меня бил по рукам за плохие вещи?

Никак. В одной из твоих недавних тем был в титульно сообщении пример кода, который формально корректный, но плохой. Сколько бы в опции предупреждений не напихал, компилятор ничего говорить не станет — код корректен.

Вот кусок, про который я говорю:

int f (int *p, int *q) {
    static int a = 3;

    if (--a)
        return *p-- += *q--;
    return *q++ -= *p++;
}

Исходная версия i-rinat, :

Как компилировать код на C, чтобы компилятор меня бил по рукам за плохие вещи?

Никак. В одной из твоих недавних тем был в титульно сообщении пример кода, который формально корректный, не плохой. Сколько бы в опции предупреждений не напихал, компилятор ничего говорить не станет, код корректен.

Вот кусок, про который я говорю:

int f (int *p, int *q) {
    static int a = 3;

    if (--a)
        return *p-- += *q--;
    return *q++ -= *p++;
}