rusi/test/builtin.c

34 lines
2.3 KiB
C
Raw Permalink Normal View History

#включить "тест.з"
#включить "stdvv.c"
цел главн() {
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(цел, цел));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(двойн, двойн));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(цел, длин));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(длин, плав));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(цел *, цел *));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(корот *, цел *));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(цел **, цел *));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(конст цел, цел));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(беззнак, цел));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(знак, цел));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(структ {цел а;}, структ {цел а;}));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(цел (*)(пусто), цел (*)(пусто)));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(пусто (*)(цел), пусто (*)(цел)));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(пусто (*)(цел, двойн), пусто (*)(цел, двойн)));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(цел (*)(плав, двойн), цел (*)(плав, двойн)));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(цел (*)(плав, двойн), цел));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(цел (*)(плав, двойн), цел (*)(плав)));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(цел (*)(плав, двойн), цел (*)(плав, двойн, цел)));
ПРОВЕРИТЬ(1, __builtin_types_compatible_p(двойн (*)(...), двойн (*)(...)));
ПРОВЕРИТЬ(0, __builtin_types_compatible_p(двойн (*)(...), двойн (*)(пусто)));
ПРОВЕРИТЬ(1, ({ типдеф структ {цел а;} Т; __builtin_types_compatible_p(Т, Т); }));
ПРОВЕРИТЬ(1, ({ типдеф структ {цел а;} Т; __builtin_types_compatible_p(Т, конст Т); }));
ПРОВЕРИТЬ(1, ({ структ {цел а; цел б;} х; __builtin_types_compatible_p(типоф(х.а), типоф(х.б)); }));
printf("OK\n");
возврат 0;
}