Мохнатые уроды и моральные пёзды. Войти !bnw Сегодня Клубы
> cat /tmp/1.c #include <stdbool.h> void foo() { bool y = true; void (*x)() = y; } > gcc -c -Wall -Wextra /tmp/1.c /tmp/1.c: In function ‘foo’: /tmp/1.c:4:16: error: incompatible types when initializing type ‘void (*)()’ using type ‘_Bool’ void (*x)() = y; ^ ... > clang -c -Wall -Wextra /tmp/1.c /tmp/1.c:4:9: warning: incompatible integer to pointer conversion initializing 'void (*)()' with an expression of type 'bool' [-Wint-conversion] void (*x)() = y; ^ ~
Рекомендовали: @o01eg
#USXACV / @lexszero / 3536 дней назад

Чо не так?
#USXACV/2AE / @l29ah / 3536 дней назад
@l29ah то, что шланг выдает варнинг, а гцц еррор.
#USXACV/RHS / @lexszero --> #USXACV/2AE / 3536 дней назад
@lexszero Гцц ебанутый прост, к нему там походу бул сбоку прикручен.
#USXACV/HXZ / @l29ah --> #USXACV/RHS / 3536 дней назад
@l29ah Пруф, что ебанутый. Можешь привести пример, когда кастование була к указателю на функцию — не ошибка?
#USXACV/XDN / @anonymous --> #USXACV/HXZ / 3536 дней назад
@anonymous Можешь привести пример, когда кастование инта к указателю на функцию - не ошибка?
#USXACV/C98 / @l29ah --> #USXACV/XDN / 3536 дней назад
идея для стартапа: наклейки для компьютерщиков на системник "я кастую как мудак"
#USXACV/191 / @mugiseyebrows / 3536 дней назад
@l29ah #include <stdio.h> #include <stdint.h> void foo() { printf("foo\n"); }; int main() { intptr_t i = (intptr_t)&foo; void (*f)() = (void(*)())i; // не ошибка f(); return 0; }
#USXACV/30D / @anonymous --> #USXACV/C98 / 3536 дней назад
@l29ah алсо, define `сбоку прикручен`
#USXACV/XHH / @anonymous --> #USXACV/HXZ / 3536 дней назад
@anonymous Ты ебанутый сука.
#USXACV/WT5 / @l29ah --> #USXACV/30D / 3536 дней назад
@l29ah чё
#USXACV/7MV / @anonymous --> #USXACV/WT5 / 3536 дней назад
@anonymous l29ahZl29ah-x201 /tmp ‰ gcc a.c a.c: В функции «foo»: a.c:3:16: предупреждение: при инициализации целое преобразуется в указатель без приведения типа void (*x)() = y; ^ /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../lib64/Scrt1.o: In function `_start': (.text+0x20): undefined reference to `main' collect2: ошибка: выполнение ld завершилось с кодом возврата 1 l29ahZl29ah-x201 /tmp ‰ cat a.c void foo() { int y = 1234; void (*x)() = y; }
#USXACV/GSN / @l29ah --> #USXACV/XHH / 3536 дней назад
@anonymous Это не инт.
#USXACV/TS5 / @l29ah --> #USXACV/7MV / 3536 дней назад
@l29ah лан
#USXACV/NDB / @anonymous --> #USXACV/TS5 / 3536 дней назад
@l29ah можно s/intptr_t/int/, но не на всех архитектурах будет гарантированно работать
#USXACV/9V5 / @anonymous --> #USXACV/TS5 / 3536 дней назад
@anonymous Гарантированно UB; если не считаешь это ошибкой - съеби.
#USXACV/1QC / @l29ah --> #USXACV/9V5 / 3536 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.