X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=builtins.c;h=c70936d8d819c5fbb3520495dc89ece86831236a;hb=82be480dce6a0e745bb815107f7e72e2ccd65a81;hp=924b14f3d8d826bf9f9eeaa8a7ba1ffd1726d210;hpb=45e0172f1269ce946cf7ce784b1dd21ebc8659fd;p=cparser diff --git a/builtins.c b/builtins.c index 924b14f..c70936d 100644 --- a/builtins.c +++ b/builtins.c @@ -19,6 +19,7 @@ */ #include "config.h" +#include "adt/strutil.h" #include "type_t.h" #include "types.h" #include "entity_t.h" @@ -234,7 +235,7 @@ void adapt_special_functions(function_t *function) /* Disregard prefix _, __, __x or __builtin_. */ if (name[0] == '_') { - if (!strncmp(name + 1, "_builtin_", 9)) + if (strstart(name + 1, "_builtin_")) name += 10; else if (name[1] == '_' && name[2] == 'x') name += 3; @@ -245,22 +246,22 @@ void adapt_special_functions(function_t *function) } if (name[0] == 's') { - if ((name[1] == 'e' && (!strcmp(name, "setjmp") - || !strcmp(name, "setjmp_syscall"))) - || (name[1] == 'i' && !strcmp(name, "sigsetjmp")) - || (name[1] == 'a' && !strcmp(name, "savectx"))) { + if ((name[1] == 'e' && (streq(name, "setjmp") + || streq(name, "setjmp_syscall"))) + || (name[1] == 'i' && streq(name, "sigsetjmp")) + || (name[1] == 'a' && streq(name, "savectx"))) { function->base.type = add_type_modifier(function->base.type, DM_RETURNS_TWICE); - } else if (name[1] == 'i' && !strcmp(name, "siglongjmp")) { + } else if (name[1] == 'i' && streq(name, "siglongjmp")) { function->base.type = add_type_modifier(function->base.type, DM_NORETURN); } - } else if ((name[0] == 'q' && !strcmp(name, "qsetjmp")) - || (name[0] == 'v' && !strcmp(name, "vfork")) - || (name[0] == 'g' && !strcmp(name, "getcontext"))) { + } else if ((name[0] == 'q' && streq(name, "qsetjmp")) + || (name[0] == 'v' && streq(name, "vfork")) + || (name[0] == 'g' && streq(name, "getcontext"))) { function->base.type = add_type_modifier(function->base.type, DM_RETURNS_TWICE); - } else if (name[0] == 'l' && !strcmp(name, "longjmp")) { + } else if (name[0] == 'l' && streq(name, "longjmp")) { function->base.type = add_type_modifier(function->base.type, DM_NORETURN); }