Доброго времени суток!
Сейчас набрел на кусок кода:
typedef char * string_t;
typedef const string_t const_string_t;
/* Подразумевалось
* const char * const strings[] = { ... }
*/
static const const_string_t strings[] = { "foo", "bar", "baz" };
GCC (MinGW 4.9.2) с -Wall -Wextra -pedantic
не ругается на:
strings[0][0] = 'E';
Помнится мне, что typedef как-то хитро игнорирует const (в GCC?). Ткните пожалуйста в место стандарте С, чтоб я понял где ошибка!