LINUX.ORG.RU

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

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

typedef float Array9[9];

typedef union MAT3 {
    struct {
          float M00, M10, M20, M01, M11, M21, M02, M12, M22;
    };
    float M[9];
} MAT3;

void ff() {
    MAT3 lf; lf.M[10] = 0; <-----вот эта
    Array9 lfff; lfff[10] = 0;
}

кстати прикол. вплоть до clang-15 помеченная строка показывается с варнингом. а начиная с clang-16 - без.

опции - -Wpedantic -Wall -Wextra

это в godbolt. другая строка всегда с варнингом.

Исходная версия alysnix, :

#include <stdio.h>
#include <stdio.h>

typedef float Array9[9];

typedef union MAT3 {
    struct {
          float M00, M10, M20, M01, M11, M21, M02, M12, M22;
    };
    float M[9];
} MAT3;

void ff() {
    MAT3 lf; lf.M[10] = 0; <-----вот эта
    Array9 lfff; lfff[10] = 0;
}

кстати прикол. вплоть до clang-15 помеченная строка показывается с варнингом. а начиная с clang-16 - без.

опции - -Wpedantic -Wall -Wextra

это в godbolt. другая строка всегда с варнингом.