Re: GCC генерирует неправильный код?
> Виноват ли gcc-4.3.real (Debian 4.3.2-1.1) 4.3.2, или что-то другое? Может
> процессор не видит связи между участками кода и распаралеливает неправильно? У
> меня amd64, возможно проблема в этом, т.к. параметры в функции передаются не
> через стэк, а через регистры.
>
> Собрал для проверки mingw32 -- работает правильно.
>
http://en.wikipedia.org/wiki/Size_t
Обратите внимание на то, что
"The actual type of size_t is platform-dependent; a common mistake is to assume
size_t is the same as unsigned int, which can lead to programming errors,[3]
particularly as 64-bit architectures become more prevalent.
According to the 1999 ISO C standard (C99), size_t is an unsigned integer type
of at least 16 bit (see sections 7.17 and 7.18.3)."
Вы же при вводе предполагаете, что size_t - unsigned int, при этом если
переменную не инициализировать, то в ней - мусор, который полностью не
перезаписыватся fscanf'ом.
--
С уважением,
Василий Дьяконов (Fireball)
mailto:fireball@programist.ru
Reply to: