История изменений
Исправление KennyMinigun, (текущая версия) :
То есть надо использовать int для буля? О_О
ЕМНИП, в x86 нет стековых операций (т.е. pop) для байта. По этому (казалось бы) байтовый аргумент на стеке апгрейдится аж до целого слова (int для x86). Хотя, стоит проверить, а под рукой компилятора нет.
Посмотри у себя выхлоп от gcc -O0 -S
от такого кода:
void func(char flag) {
char inner = flag; // чтоб посмотреть откуда возьмется значение
}
void main() { func(1); }
Исходная версия KennyMinigun, :
То есть надо использовать int для буля? О_О
ЕМНИП, в x86 нет стековых операций (т.е. pop) для байта. По этому (казалось бы) байтовый аргумент на стеке апгрейдится аж до целого слова (int для x86). Хотя, стоит проверить, а под рукой компилятора нет.
Посмотри у себя выхлоп от gcc -O0 -S
от такого кода:
void func(char flag) {}
void main() { func(1); }