cppcheck/cfg/std.cfg

4714 lines
125 KiB
INI
Raw Normal View History

<?xml version="1.0"?>
<def format="2">
<!-- void abort(void); -->
<function name="abort,std::abort">
<noreturn>true</noreturn>
</function>
2015-08-15 10:44:52 +02:00
<!-- int abs(int j); -->
2015-08-13 11:03:21 +02:00
<function name="abs,std::abs">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int">arg1&gt;0?arg1:-arg1</returnValue>
<arg nr="1">
<not-uninit/>
<not-bool/>
</arg>
</function>
<!-- intmax_t imaxabs(intmax_t n); -->
<function name="imaxabs,std::imaxabs">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<returnValue>arg1&gt;0?arg1:-arg1</returnValue>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- std::proj(std::complex) -->
<function name="std::proj">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex cproj(double complex x); -->
<!-- float complex cprojf(float complex x); -->
<!-- long double complex cprojl(long double complex x); -->
<function name="cproj,cprojf,cprojl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double creal(double complex x); -->
<!-- float crealf(float complex x); -->
<!-- long double creall(long double complex x); -->
<function name="creal,crealf,creall">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double acos(double x); -->
<!-- float acosf(float x); -->
<!-- long double acosl(long double x); -->
<function name="acos,std::acos,acosf,acosl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double acosh(double x); -->
<!-- float acoshf(float x); -->
<!-- long double acoshl(long double x); -->
<function name="acosh,std::acosh,acoshf,std::acoshf,acoshl,std::acoshl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- char *asctime(const struct tm *tm) -->
<function name="asctime,std::asctime">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<warn severity="style" cstd="c99" alternatives="strftime" reason="Obsolete"/>
</function>
2015-08-15 10:44:52 +02:00
<!-- void assert(int expression) -->
<function name="assert">
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double sqrt(double x); -->
<!-- float sqrtf(float x); -->
<!-- long double sqrtl(long double x); -->
<function name="sqrt,std::sqrt,sqrtf,sqrtl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
2014-09-11 16:57:44 +02:00
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-09-11 16:57:44 +02:00
</function>
<!-- double complex csqrt(double complex x); -->
<!-- float complex csqrtf(float complex x); -->
<!-- long double complex csqrtl(long double complex x); -->
<function name="csqrt,csqrtf,csqrtl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double sinh(double x); -->
<!-- float sinhf(float x); -->
<!-- long double sinhl(long double x); -->
<function name="sinh,std::sinh,sinhf,sinhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double sin(double x); -->
<!-- float sinf(float f); -->
<!-- long double sinl(long double x); -->
<function name="sin,std::sin,sinf,sinl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex csin(double complex x); -->
<!-- float complex csinf(float complex f); -->
<!-- long double complex csinl(long double complex x); -->
<function name="csin,csinf,csinl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex csinh(double complex x); -->
<!-- float complex csinhf(float complex f); -->
<!-- long double complex csinhl(long double complex x); -->
<function name="csinh,csinhf,csinhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double asin(double x); -->
<!-- float asinf(float x); -->
<!-- long double asinl(long double x); -->
<function name="asin,std::asin,asinf,asinl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
2015-08-13 11:03:21 +02:00
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex casin(double complex x); -->
<!-- float complex casinf(float complex x); -->
<!-- long double complex casinl(long double complex x); -->
<function name="casin,casinf,casinl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double asinh(double x); -->
<!-- float asinhf(float x); -->
<!-- long double asinhl(long double x); -->
<function name="asinh,std::asinh,asinhf,std::asinhf,asinhl,std::asinhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex casinh(double complex x); -->
<!-- float complex casinhf(float complex x); -->
<!-- long double complex casinhl(long double complex x); -->
<function name="casinh,casinhf,casinhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- size_t wcsftime(wchar_t* ptr, size_t maxsize, const wchar_t* format, const struct tm* timeptr); -->
<function name="wcsftime,std::wcsftime">
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- double tan(double x); -->
<!-- float tanf(float x); -->
<!-- long double tanl(long double x); -->
<function name="tan,std::tan,tanf,tanl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex ctan(double complex x); -->
<!-- float complex ctanf(float complex x); -->
<!-- long double complex ctanl(long double complex x); -->
<function name="ctan,ctanf,ctanl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double tanh(double x); -->
<!-- float tanhf(float x); -->
<!-- long double tanhl(long double x); -->
<function name="tanh,std::tanh,tanhf,tanhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex ctanh(double complex x); -->
<!-- float complex ctanhf(float complex x); -->
<!-- long double complex ctanhl(long double complex x); -->
<function name="ctanh,ctanhf,ctanhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int feclearexcept(int excepts); -->
<function name="feclearexcept,std::feclearexcept">
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-03-20 00:59:52 +01:00
</function>
2015-08-15 10:44:52 +02:00
<!-- int fegetenv(fenv_t* envp); -->
<function name="fegetenv,std::fegetenv">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fegetexceptflag(fexcept_t* flagp, int excepts); -->
<function name="fegetexceptflag,std::fegetexceptflag">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
2014-03-20 02:13:41 +01:00
</function>
2015-08-15 10:44:52 +02:00
<!-- int fegetround(void); -->
<function name="fegetround,std::fegetround">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
</function>
2015-08-15 10:44:52 +02:00
<!-- int feholdexcept(fenv_t* envp); -->
<function name="feholdexcept,std::feholdexcept">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
2015-08-15 10:44:52 +02:00
<!-- int feraiseexcept(int excepts); -->
<function name="feraiseexcept,std::feraiseexcept">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fesetenv(const fenv_t* envp); -->
<function name="fesetenv,std::fesetenv">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fesetexceptflag(const fexcept_t* flagp, int excepts); -->
<function name="fesetexceptflag,std::fesetexceptflag">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fesetround(int rdir); -->
<function name="fesetround,std::fesetround">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fetestexcept(int excepts); -->
<function name="fetestexcept,std::fetestexcept">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int feupdateenv(const fenv_t* envp); -->
<function name="feupdateenv,std::feupdateenv">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- double atan(double x); -->
<!-- float atanf(float x); -->
<!-- long double atanl(long double x); -->
<function name="atan,std::atan,atanf,atanl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-03-21 21:31:12 +01:00
</function>
<!-- double complex catan(double complex x); -->
<!-- float complex catanf(float complex x); -->
<!-- long double complex catanl(long double complex x); -->
<function name="catan,catanf,catanl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double tgamma(double x); -->
<!-- float tgammaf(float x); -->
<!-- long double tgammal(long double x); -->
<function name="tgamma,std::tgamma,tgammaf,std::tgammaf,tgammal,std::tgammal">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-03-21 21:31:12 +01:00
</function>
<!-- double trunc(double x); -->
<!-- float truncf(float x); -->
<!-- long double truncl(long double x); -->
<function name="trunc,std::trunc,truncf,std::truncf,truncl,std::truncl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double atanh(double x); -->
<!-- float atanhf(float x); -->
<!-- long double atanhl(long double x); -->
<function name="atanh,std::atanh,atanhf,std::atanhf,atanhl,std::atanhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-03-21 21:31:12 +01:00
</function>
<!-- double complex catanh(double complex x); -->
<!-- float complex catanhf(float complex x); -->
<!-- long double complex catanhl(long double complex x); -->
<function name="catanh,catanhf,catanhl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double atan2(double x, double y); -->
<!-- float atan2f(float x, float y); -->
<!-- long double atan2l(long double x, long double y); -->
<function name="atan2,std::atan2,atan2f,atan2l">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
2014-03-21 21:37:09 +01:00
</function>
<!-- int atexit(void (*func)(void)); -->
<function name="atexit,std::atexit">
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
</function>
<!-- int atoi(const char *s); -->
<!-- long int atol(const char *s); -->
<!-- long long int atoll(const char *s); -->
<!-- double atof(const char *s); -->
<function name="atoi,atol,atoll,std::atoi,std::atol,std::atoll,atof,std::atof">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<strz/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- void * calloc(size_t nitems, size_t size); -->
<function name="calloc">
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>1:</valid>
</arg>
<arg nr="2">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
</function>
<!-- double ceil(double x); -->
<!-- float ceilf(float x); -->
<!-- long double ceill(long double x); -->
2015-08-28 17:04:47 +02:00
<function name="ceil,std::ceil,ceilf,ceill">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-03-21 21:31:12 +01:00
</function>
<!-- double copysign(double x, double y); -->
<!-- float copysignf(float x, float y); -->
<!-- long double copysign(long double x, long double y); -->
<function name="copysign,std::copysign,copysignf,std::copysignf,copysignl,std::copysignl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
2014-03-21 21:31:12 +01:00
</function>
2015-08-28 17:04:47 +02:00
<!-- void clearerr(FILE * stream); -->
<function name="clearerr,std::clearerr">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
2014-03-20 06:49:44 +01:00
</function>
<!-- clock_t clock(void); -->
<function name="clock">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
</function>
<!-- double cbrt(double x); -->
<!-- float cbrtf(float x); -->
<!-- long double cbrtl(long double x); -->
<function name="cbrt,std::cbrt,cbrtf,std::cbrtf,cbrtl,std::cbrtl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double cos(double x); -->
2015-08-15 10:44:52 +02:00
<!-- float cosf(float x); -->
<!-- long double cosl(long double x); -->
2015-08-28 17:04:47 +02:00
<function name="cos,std::cos,cosf,cosl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-03-21 21:31:12 +01:00
</function>
<!-- double complex ccos(double complex x); -->
2015-08-15 10:44:52 +02:00
<!-- float complex ccosf(float complex x); -->
<!-- long double complex ccosl(long double complex x); -->
<function name="ccos,ccosf,ccosl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double cosh(double x); -->
<!-- float coshf(float x); -->
<!-- long double coshl(long double x); -->
2015-08-28 17:04:47 +02:00
<function name="cosh,std::cosh,coshf,coshl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex ccosh(double complex x); -->
<!-- float complex ccoshf(float complex x); -->
<!-- long double ccoshl(long double complex x); -->
<function name="ccosh,ccoshf,ccoshl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- char * ctime(const time_t *tp); -->
2015-08-29 00:09:33 +02:00
<function name="ctime,std::ctime">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- double difftime(time_t time2, time_t time1); -->
2015-08-29 00:09:33 +02:00
<function name="difftime,std::difftime">
<use-retval/>
2015-01-09 13:39:46 +01:00
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- div_t div(int num, int denom); -->
2015-08-29 00:09:33 +02:00
<function name="div,std::div">
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>:-1,1:</valid>
</arg>
</function>
<!-- imaxdiv_t imaxdiv (intmax_t numer, intmax_t denom); -->
<function name="imaxdiv,std::imaxdiv">
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>:-1,1:</valid>
</arg>
</function>
<!-- void exit(int status); -->
2015-08-29 00:09:33 +02:00
<function name="exit,std::exit">
<noreturn>true</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double erf(double x); -->
<!-- float erff(float f); -->
<!-- long double erfl(long double x); -->
<function name="erf,std::erf,erff,std::erff,erfl,std::erfl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double erfc(double x); -->
<!-- float erfcf(float x); -->
<!-- long double erfcl(long double x); -->
<function name="erfc,std::erfc,erfcf,std::erfcf,erfcl,std::erfcl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double carg(double complex z);-->
<!-- float cargf(float complex z);-->
<!-- long double cargl(long double complex z);-->
<function name="carg,cargf,cargl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
2014-09-11 21:37:39 +02:00
</function>
<!-- double exp(double x); -->
<!-- float expf(float x); -->
<!-- long double expl(long double x); -->
<function name="exp,std::exp,expf,expl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex cexp(double complex x); -->
<!-- float complex cexpf(float complex x); -->
<!-- long double complex cexpl(long double complex x); -->
<function name="cexp,cexpf,cexpl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex cimag(double complex x); -->
<!-- float complex cimagf(float complex x); -->
<!-- long double complex cimagl(long double complex x); -->
<function name="cimag,cimagf,cimagl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double exp2(double x); -->
<!-- float exp2f(float x); -->
<!-- long double exp2l(long double x);-->
<function name="exp2,std::exp2,exp2f,std::exp2f,exp2l,std::exp2l">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double expm1(double x); -->
<!-- float expm1f(float x); -->
<!-- long double expm1l(long double x); -->
<function name="expm1,std::expm1,expm1f,std::expm1f,expm1l,std::expm1l">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double fabs(double x); -->
<!-- float fabsf(float x); -->
<!-- long double fabsl(long double x); -->
<function name="fabs,std::fabs,fabsf,fabsl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double fdim(double x, double y); -->
<!-- float fdimf(float x, float y); -->
<!-- long double fdiml(long double x, long double y); -->
<function name="fdim,std::fdim,fdimf,std::fdimf,fdiml,std::fdiml">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int fclose(FILE * stream); -->
<function name="fclose,std::fclose">
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int feof(FILE *stream); -->
<function name="feof,std::feof">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int ferror(FILE *stream);-->
<function name="ferror,std::ferror">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int fflush(FILE *stream); -->
<function name="fflush,std::fflush">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int fgetc(FILE *stream); -->
2015-08-15 10:44:52 +02:00
<!-- wint_t fgetwc(FILE * stream); -->
<!-- int getc(FILE *stream); -->
<!-- wint_t getwc(FILE* stream); -->
<function name="fgetc,std::fgetc,fgetwc,std::fgetwc,getc,std::getc,getwc,std::getwc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int fgetpos(FILE* stream, fpos_t *ptr); -->
<function name="fgetpos,std::fgetpos">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- double floor(double x); -->
<!-- float floorf(float x); -->
<!-- long double floorl(long double x); -->
<function name="floor,std::floor,floorf,floorl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double fma(double x, double y, double z); -->
<!-- float fmaf(float x, float y, float z); -->
<!-- long double fmal(long double x, long double y, long double z); -->
<function name="fma,std::fma,fmaf,std::fmaf,fmal,std::fmal">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- double fmax(double x, double y); -->
<!-- float fmaxf(float x, float y); -->
<!-- long double fmaxl(long double x, long double y); -->
<function name="fmax,std::fmax,fmaxf,std::fmaxf,fmaxl,std::fmaxl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double fmin(double x, double y); -->
<!-- float fminf(float x, float y); -->
<!-- long double fminl(long double x, long double y); -->
<function name="fmin,std::fmin,fminf,std::fminf,fminl,std::fminl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double fmod(double x, double y); -->
<!-- float fmodf(float x, float y); -->
<!-- long double fmodl(long double x, long double y); -->
<function name="fmod,std::fmod,fmodf,fmodl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- FILE * fopen(const char *filename, const char* mode); -->
<function name="fopen,std::fopen">
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- errno_t fopen_s(FILE *restrict *restrict streamptr,
const char *restrict filename,
const char *restrict mode); -->
<function name="fopen_s">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
<strz/>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int fprintf(FILE *stream, const char *format, ...); -->
<function name="fprintf,std::fprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<formatstr/>
<arg nr="2">
<formatstr/>
2015-08-31 17:10:10 +02:00
<not-uninit/>
</arg>
</function>
<!-- int vfprintf(FILE *stream, const char *format, va_list arg); -->
<function name="vfprintf,std::vfprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
2015-08-31 17:10:10 +02:00
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- int vfwprintf(FILE *stream, const wchar_t *format, va_list arg); -->
<function name="vfwprintf,std::vfwprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
2015-08-31 17:10:10 +02:00
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- int fputc(int c, FILE *stream); -->
<function name="fputc,std::fputc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- wint_t fputwc(wchar_t wc, FILE * stream); -->
<function name="fputwc,std::fputwc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-bool/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int fputs(const char *string, FILE* stream); -->
<function name="fputs,std::fputs">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fputws(const wchar_t* ws, FILE* stream); -->
<function name="fputws,std::fputws">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- size_t fread(void *ptr, size_t size, size_t nobj, FILE *stream); -->
<function name="fread,std::fread">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="mul" arg="2" arg2="3"/>
</arg>
<arg nr="2">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
<arg nr="3">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
<arg nr="4">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- void free(void *block); -->
<function name="free,std::free">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- FILE *freopen(const char *filename, const char *mode, FILE *stream); -->
<function name="freopen,std::freopen">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- errno_t freopen_s(FILE *restrict *restrict newstreamptr, const char *restrict filename, const char *restrict mode, FILE *restrict stream) -->
<function name="freopen_s">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
<arg nr="4">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- double frexp(double x, int *exp); -->
<!-- float frexpf(float x, int *exp); -->
<!-- long double frexpl(long double x, int *exp); -->
<function name="frexp,std::frexp,frexpf,frexpl">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- double hypot(double x, double y); -->
<!-- double hypot(double x, double y, double z); -->
<!-- float hypotf(float x, float y); -->
<!-- long double hypotl(long double x, long double y); -->
<function name="hypot,std::hypot,hypotf,std::hypotf,hypotl,std::hypotl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3" default="0">
<not-uninit/>
</arg>
</function>
<!-- int fscanf(FILE *stream, const char *format, ...); -->
2015-08-31 17:10:10 +02:00
<function name="fscanf,std::fscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<formatstr scan="true"/>
<arg nr="2">
<formatstr/>
2015-08-31 17:10:10 +02:00
<not-uninit/>
</arg>
</function>
<!-- int vfscanf(FILE *stream, const char * format, va_list arg); -->
<function name="vfscanf,std::vfscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- int vfwscanf(FILE *stream, const wchar_t * format, va_list arg); -->
<function name="vfwscanf,std::vfwscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- int fseek(FILE* stream, long int offset, int origin); -->
<function name="fseek,std::fseek">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- int fsetpos(FILE *stream, const fpos_t *ptr); -->
<function name="fsetpos,std::fsetpos">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- char * fgets(char *buffer, int n, FILE *stream); -->
<function name="fgets,std::fgets">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- wchar_t* fgetws(wchar_t* ws, int num, FILE* stream); -->
<function name="fgetws,std::fgetws">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- long int ftell(FILE *stream); -->
<function name="ftell,std::ftell">
<noreturn>false</noreturn>
<use-retval/>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fwide(FILE* stream, int mode); -->
<function name="fwide,std::fwide">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- size_t fwrite(const void *ptr, size_t size, size_t nobj, FILE *stream); -->
<function name="fwrite,std::fwrite">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<minsize type="mul" arg="2" arg2="3"/>
</arg>
<arg nr="2">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
<arg nr="3">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
<arg nr="4">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int mblen(const char *string, size_t size); -->
<function name="mblen,std::mblen">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
</function>
<!-- int mbtowc(wchar_t* pwc, const char* pmb, size_t max); -->
<function name="mbtowc,std::mbtowc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- size_t mbrlen(const char* pmb, size_t max, mbstate_t* ps); -->
<function name="mbrlen,std::mbrlen">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- wint_t btowc(int c); -->
<function name="btowc,std::btowc">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
2016-12-12 13:45:16 +01:00
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int mbsinit(const mbstate_t* ps); -->
<function name="mbsinit,std::mbsinit">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- wint_t getwchar(void); -->
<function name="getwchar">
<noreturn>false</noreturn>
<leak-ignore/>
</function>
<!-- size_t mbstowcs(wchar_t *ws, const char *s, size_t n); -->
<function name="mbstowcs,std::mbstowcs">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- size_t mbsrtowcs(wchar_t* dest, const char** src, size_t max, mbstate_t* ps); -->
<function name="mbsrtowcs,std::mbsrtowcs">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-null/>
</arg>
</function>
<!-- int wctob(wint_t wc); -->
<function name="wctob,std::wctob">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int wctomb(char *s, wchar_t wchar); -->
<function name="wctomb,std::wctomb">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- size_t wcstombs(char *mbstr, const wchar_t *wcstr, size_t n);-->
<function name="wcstombs,std::wcstombs">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- int getchar(void); -->
<function name="getchar">
<noreturn>false</noreturn>
<leak-ignore/>
</function>
<!-- int ungetc(int c, FILE *stream); -->
<function name="ungetc,std::ungetc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:255</valid>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- wint_t ungetwc(wint_t c, FILE *stream); -->
<function name="ungetwc,std::ungetwc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- char * getenv(const char *name); -->
<function name="getenv,std::getenv">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<strz/>
</arg>
</function>
<!-- char *gets(char *buffer); -->
<function name="gets,std::gets">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<warn severity="warning">Obsolete function 'gets' called. It is recommended to use 'fgets' or 'gets_s' instead.
The obsolete function 'gets' is called. With 'gets' you'll get a buffer overrun if the input data exceeds the size of the buffer. It is recommended to use the functions 'fgets' or 'gets_s' instead.</warn>
</function>
<!-- char *gets_s(char *buffer, rsize_t size); -->
<function name="gets_s,std::gets_s">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<!-- struct tm * gmtime(const time_t *tp); -->
<function name="gmtime,std::gmtime">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isalnum(int c); -->
<function name="isalnum,std::isalnum">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x30 && arg1<=0x39 || arg1>=0x41 && arg1 <=0x5A || arg1>=0x61 && arg1 <=0x7A]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswalnum(wint_t c); -->
<function name="iswalnum,std::iswalnum">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x30 && arg1<=0x39 || arg1>=0x41 && arg1 <=0x5A || arg1>=0x61 && arg1 <=0x7A]]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isalpha(int c); -->
<function name="isalpha,std::isalpha">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<!-- ((c>='A' AND c<='Z') OR (c>='a' AND c<='z' )) -->
<returnValue type="int"><![CDATA[arg1>='A' && arg1<='Z' || arg1>='a' && arg1 <='z']]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswalpha(wint_t c);-->
<function name="iswalpha,std::iswalpha">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<!-- ((c>='A' AND c<='Z') OR (c>='a' AND c<='z' )) -->
<returnValue type="int"><![CDATA[arg1>='A' && arg1<='Z' || arg1>='a' && arg1 <='z']]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isblank(int c); -->
<function name="isblank,std::isblank">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1==' ' || arg1=='\t']]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswblank(wint_t c); -->
<function name="iswblank,std::iswblank">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1==' ' || arg1=='\t']]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iscntrl(int c); -->
<function name="iscntrl,std::iscntrl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1==0x7F || arg1<=0x1F]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswcntrl(wint_t c); -->
<function name="iswcntrl,std::iswcntrl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1==0x7F || arg1<=0x1F]]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int iswcntrl(wint_t c, wctype_t desc); -->
<function name="iswctype,std::iswctype">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isdigit(int c); -->
<function name="isdigit,std::isdigit">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>='0' && arg1<='9']]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswdigit(wint_t c); -->
<function name="iswdigit,std::iswdigit">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>='0' && arg1<='9']]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isgraph(int c); -->
<function name="isgraph,std::isgraph">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x21 && arg1<=0x7E]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswgraph(wint_t c); -->
<function name="iswgraph,std::iswgraph">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x21 && arg1<=0x7E]]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int islower(int c); -->
<function name="islower,std::islower">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x61 && arg1<=0x7A]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswlower(wint_t c); -->
<function name="iswlower,std::iswlower">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x61 && arg1<=0x7A]]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isprint(int c); -->
<function name="isprint,std::isprint">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x20 && arg1<=0x7E]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswprint(wint_t c); -->
<function name="iswprint,std::iswprint">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x20 && arg1<=0x7E]]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int ispunct(int c); -->
<function name="ispunct,std::ispunct">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x21 && arg1<=0x2F || arg1>=0x3A && arg1<=0x40 || arg1>=0x5B && arg1<=0x60 || arg1>=0x7B && arg1<=0x7E]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswpunct(wint_t c); -->
<function name="iswpunct,std::iswpunct">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x21 && arg1<=0x2F || arg1>=0x3A && arg1<=0x40 || arg1>=0x5B && arg1<=0x60 || arg1>=0x7B && arg1<=0x7E]]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isspace(int c); -->
<function name="isspace,std::isspace">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x09 && arg1<=0x0D || arg1==0x20]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswspace(wint_t c); -->
<function name="iswspace,std::iswspace">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<returnValue type="int"><![CDATA[arg1>=0x09 && arg1<=0x0D || arg1==0x20]]></returnValue>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isupper(int c); -->
<function name="isupper,std::isupper">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x41 && arg1<=0x5A]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswupper(wint_t c); -->
<function name="iswupper,std::iswupper">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x41 && arg1<=0x5A]]></returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isxdigit(int c); -->
<function name="isxdigit,std::isxdigit">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue type="int"><![CDATA[arg1>=0x30 && arg1<=0x39 || arg1>=0x41 && arg1<=0x46 || arg1>=0x61 && arg1<=0x66]]></returnValue>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int iswxdigit(wint_t c); -->
<function name="iswxdigit,std::iswxdigit">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<returnValue type="int"><![CDATA[arg1>=0x30 && arg1<=0x39 || arg1>=0x41 && arg1<=0x46 || arg1>=0x61 && arg1<=0x66]]></returnValue>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- wint_t towctrans(wint_t c, wctrans_t desc); -->
<function name="towctrans,std::towctrans">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- wint_t towlower(wint_t c); -->
<function name="towlower,std::towlower">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- wint_t towupper(wint_t c); -->
<function name="towupper,std::towupper">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- wctrans_t wctrans(const char* property); -->
<function name="wctrans,std::wctrans">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- wctype_t wctype(const char* property); -->
<function name="wctype,std::wctype">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- double complex cabs(double complex z); -->
<!-- float complex cabsf(float complex z); -->
<!-- long double complex cabsl(long double complex z); -->
<function name="cabs,cabsf,cabsl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- double complex cacos(double complex z); -->
<!-- float complex cacosf(float complex z); -->
<!-- long double complex cacosl(long double complex z); -->
<function name="cacos,cacosf,cacosl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- double complex cacosh(double complex z); -->
<!-- float complex cacoshf(float complex z); -->
<!-- long double complex cacoshl(long double complex z); -->
<function name="cacosh,cacoshf,cacoshl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- long int labs(long int x); -->
<!-- long long int llabs(long long int x);-->
<function name="labs,llabs,std::labs,std::llabs">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue>arg1&gt;0?arg1:-arg1</returnValue>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double ldexp(double x, int exp); -->
<!-- float ldexpf(float x, int exp); -->
<!-- long double ldexpl(long double x, int exp); -->
<function name="ldexp,std::ldexp,ldexpf,ldexpl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double lgamma(double x); -->
<!-- float lgammaf(float x); -->
<!-- long double lgammal(long double x); -->
<function name="lgamma,std::lgamma,lgammaf,std::lgammaf,lgammal,std::lgammal">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double rint(double x); -->
<!-- float rintf(float x); -->
<!-- long double rintl(long double x); -->
<function name="rint,std::rint,rintf,std::rintf,rintl,std::rintl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- long int lrint(double x); -->
<!-- long int lrintf(float x); -->
<!-- long int lrintl(long double x); -->
<function name="lrint,std::lrint,lrintf,std::lrintf,lrintl,std::lrintl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- long long int llrint(double x); -->
<!-- long long int llrintf(float x); -->
<!-- long long int llrintl(long double x); -->
<function name="llrint,std::llrint,llrintf,std::llrintf,llrintl,std::llrintl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- long long int llround(double x); -->
<!-- long long int llroundf(float x); -->
<!-- long long int llroundl(long double x); -->
<function name="llround,std::llround,llroundf,std::llroundf,llroundl,std::llroundl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- long int lround(double x); -->
<!-- long int lroundf(float x); -->
<!-- long int lroundl(long double x); -->
<function name="lround,std::lround,lroundf,std::lroundf,lroundl,std::lroundl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int rand(void); -->
<function name="rand">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
</function>
<!-- void srand(unsigned int seed); -->
<function name="srand,std::srand">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- ldiv_t ldiv(long int num, long int denom); -->
<!-- lldiv_t lldiv(long long int num, long long int denom); -->
<function name="ldiv,lldiv,std::ldiv,std::lldiv">
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>:-1,1:</valid>
</arg>
</function>
<!-- struct tm * localtime(const time_t *tp); -->
<function name="localtime,std::localtime">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- struct tm *localtime_s(const time_t *restrict time, struct tm *restrict result) -->
<function name="localtime_s,std::localtime_s">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- double log(double x); -->
<!-- float logf(float x); -->
<!-- long double logl(long double x);-->
<function name="log,std::log,logf,logl">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex clog(double complex x); -->
<!-- float complex clogf(float complex x); -->
<!-- long double complex clogl(long double complex x);-->
<function name="clog,clogf,clogl">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double complex conj(double complex x);-->
<!-- float complex conjf(float complex x);-->
<!-- long double complex conjl(long double complex x);-->
<function name="conj,conjf,conjl">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fpclassify(double x); -->
<function name="fpclassify,std::fpclassify">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isfinite(double x); -->
<function name="isfinite,std::isfinite">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int isgreater(double x, double y); -->
<function name="isgreater,std::isgreater">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int isgreaterequal(double x, double y); -->
<function name="isgreaterequal,std::isgreaterequal">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int isinf(double x); -->
<function name="isinf,std::isinf">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- double logb(double x); -->
<!-- float logbf(float x); -->
<!-- long double logbl(long double x); -->
<function name="logb,std::logb,logbf,std::logbf,logbl,std::logbl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int isless(double x, double y); -->
<function name="isless,std::isless">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int islessequal(double x, double y); -->
<function name="islessequal,std::islessequal">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int islessgreater(double x, double y); -->
<function name="islessgreater,std::islessgreater">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double nan(const char *tagp); -->
<!-- float nanf(const char *tagp); -->
<!-- long double nanl(const char *tagp); -->
<function name="nan,std::nan,nanf,std::nanf,nanl,std::nanl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int isnan(double x); -->
<function name="isnan,std::isnan">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int isnormal(double x); -->
<function name="isnormal,std::isnormal">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int isunordered(double x, double y);-->
<function name="isunordered,std::isunordered">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int ilogb(double x); -->
<!-- int ilogbf(float x); -->
<!-- int ilogbl(long double x); -->
<function name="ilogb,std::ilogb,ilogbf,ilogbl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double log10(double x); -->
<!-- float log10f(float x);-->
<!-- long double log10l(long double x); -->
<function name="log10,std::log10,log10f,log10l">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double log1p(double x); -->
<!-- float log1pf(float x); -->
<!-- long double log1pl(long double x); -->
<function name="log1p,std::log1p,log1pf,std::log1pf,log1pl,std::log1pl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double log2(double x); -->
<!-- float log2f(float x); -->
<!-- long double log2l(long double x); -->
<function name="log2,std::log2,log2f,std::log2f,log2l,std::log2l">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double nearbyint(double x); -->
<!-- float nearbyintf(float x); -->
<!-- long double nearbyintl(long double x); -->
<function name="nearbyint,std::nearbyint,nearbyintf,std::nearbyintf,nearbyintl,std::nearbyintl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double nextafter(double x, double y); -->
<!-- float nextafterf(float x, float y); -->
<!-- long double nextafterl(long double x, long double y);-->
<function name="nextafter,std::nextafter,nextafterf,std::nextafterf,nextafterl,std::nextafterl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double nexttoward(double x, long double y); -->
<!-- float nexttowardf(float x, long double y); -->
<!-- long double nexttowardl(long double x, long double y); -->
<function name="nexttoward,std::nexttoward,nexttowardf,std::nexttowardf,nexttowardl,std::nexttowardl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
2014-03-21 22:39:57 +01:00
</function>
2015-08-15 10:44:52 +02:00
<!-- void longjmp(jmp_buf env, int val); -->
<function name="longjmp,std::longjmp">
<noreturn>true</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
2014-09-11 21:37:39 +02:00
</function>
<!-- void * malloc(size_t size); -->
<function name="malloc,std::malloc">
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- void *alloca(size_t size); -->
<function name="alloca">
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
2016-11-08 09:36:24 +01:00
<valid>0:</valid>
</arg>
2014-03-21 22:39:57 +01:00
</function>
<!-- int memchr(const void *cs, int c, size_t n);-->
<function name="memchr,std::memchr">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-03-21 22:39:57 +01:00
</function>
<!-- wchar_t *wmemchr(const wchar_t *cs, wchar_t c, size_t n);-->
<function name="wmemchr,std::wmemchr">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<!-- int memcmp(const void *s1, const void *s2, size_t n);-->
2015-08-13 11:03:21 +02:00
<function name="memcmp,std::memcmp">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-03-21 22:39:57 +01:00
</function>
<!-- int wmemcmp (const wchar_t* ptr1, const wchar_t* ptr2, size_t num);-->
<function name="wmemcmp,std::wmemcmp">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<!-- void * memcpy(void *ct, const void *cs, size_t n);-->
<!-- wchar_t * wmemcpy(wchar_t *ct, const wchar_t *cs, size_t n);-->
<function name="memcpy,std::memcpy,wmemcpy,std::wmemcpy">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-03-21 22:46:05 +01:00
</function>
<!-- errno_t memcpy_s( void *restrict dest, rsize_t destsz, const void *restrict src, rsize_t count );-->
<!-- errno_t wmemcpy_s( wchar_t *restrict dest, rsize_t destsz, const wchar_t *restrict src, rsize_t count );-->
<function name="memcpy_s,wmemcpy_s">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-03-21 22:39:57 +01:00
</function>
<!-- void * memmove(void *ct, const void *cs, size_t n); -->
<!-- wchar_t * wmemmove(wchar_t *ct, const wchar_t *cs, size_t n); -->
<function name="memmove,std::memmove,wmemmove,std::wmemmove">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<!-- errno_t memset_s( void *dest, rsize_t destsz, int ch, rsize_t count ) -->
<function name="memset_s">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- void *memset(void *s, int c, size_t n); -->
2015-08-13 11:03:21 +02:00
<function name="memset,std::memset">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-03-21 22:39:57 +01:00
</function>
<!-- wchar_t *wmemset(wchar_t *s, wchar_t c, size_t n); -->
<function name="wmemset,std::wmemset">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<!-- time_t mktime(struct tm *tp); -->
<!-- time_t mkxtime(struct tmx *tp); -->
<function name="mktime,std::mktime,mkxtime">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- double modf(double x, double *ip); -->
<!-- float modff(float x, float *ip); -->
<!-- long double modfl(long double x, long double *ip); -->
<function name="modf,std::modf,modff,modfl">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
</function>
<!-- void perror(const char *string); -->
<function name="perror,std::perror">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- double pow(double x, double y); -->
<!-- float powf(float x, float y);-->
<!-- long double powl(long double x, long double y); -->
<function name="pow,std::pow,powf,powl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double complex cpow(double complex x, double complex y); -->
<!-- float complex cpowf(float complex x, float complex y);-->
<!-- long double complex cpowl(long double complex x, long double complex y); -->
<function name="cpow,cpowf,cpowl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double remainder(double x, double y); -->
<!-- float remainderf(float x, float y); -->
<!-- long double remainderl(long double x, long double y); -->
<function name="remainder,std::remainder,remainderf,std::remainderf,remainderl,std::remainderl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- double remquo(double, x, double y, int *quo); -->
<!-- float remquof(float x, float y, int *quo); -->
<!-- long double remquol(long double x, long double y, int *quo); -->
<function name="remquo,std::remquo,remquof,std::remquof,remquol,std::remquol">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
</arg>
</function>
<!-- int printf(const char *format, ...); -->
<function name="printf,std::printf">
<noreturn>false</noreturn>
<leak-ignore/>
<formatstr/>
<arg nr="1">
<formatstr/>
<not-uninit/>
</arg>
</function>
<!-- int vprintf(const char *format, va_list arg); -->
<function name="vprintf,std::vprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2"/>
2014-03-21 22:39:57 +01:00
</function>
<!-- int vwprintf(const wchar_t *format, va_list arg); -->
<function name="vwprintf,std::vwprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2"/>
</function>
2015-08-15 10:44:52 +02:00
<!-- void* bsearch(const void* key, const void* base, size_t num, size_t size, int(*compar)(const void*,const void*));-->
<function name="bsearch,std::bsearch">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="5">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- void qsort(void *base, size_t n, size_t size, int (*cmp)(const void *, const void *)); -->
<function name="qsort,std::qsort">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-null/>
<not-uninit/>
</arg>
2014-06-23 14:43:56 +02:00
</function>
<!-- int putc(int c, FILE *stream); -->
<function name="putc,std::putc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
2014-03-21 22:46:05 +01:00
</function>
2015-08-15 10:44:52 +02:00
<!-- wint_t putwc(wchar_t wc, FILE* stream); -->
<function name="putwc,std::putwc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int puthchar(int c); -->
<function name="putchar,std::putchar">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-03-21 22:46:05 +01:00
</function>
2015-08-15 10:44:52 +02:00
<!-- wint_t putwchar(wchar_t wc); -->
<function name="putwchar,std::putwchar">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int puts(const char *string); -->
<function name="puts,std::puts">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<not-bool/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
2014-03-21 22:39:57 +01:00
</function>
<!-- void *realloc(void *block, size_t newsize); -->
<function name="realloc,std::realloc">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- int remove(const char *filename); -->
<function name="remove,std::remove">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<strz/>
</arg>
</function>
<!-- int rename(const char *oldname, const char *newname); -->
<function name="rename,std::rename">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
<strz/>
</arg>
2014-03-23 20:01:24 +01:00
</function>
<!-- void rewind(FILE *stream); -->
<function name="rewind,std::rewind">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- double round(double x); -->
<!-- float roundf(float x); -->
<!-- long double roundl(long double x); -->
<function name="round,std::round,roundf,std::roundf,roundl,std::roundl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- long long int scalbn(double x, int n); -->
<!-- long long int scalbnf(float x, int n); -->
<!-- long long int scalbnl(long double x, int n); -->
<!-- long long int scalbln(double x, long int n); -->
<!-- long long int scalblnf(float x, long int n); -->
<!-- long long int scalblnl(long double x, long int n); -->
<function name="scalbn,std::scalbn,scalbnf,std::scalbnf,scalbnl,std::scalbnl,scalbln,std::scalbln,scalblnf,std::scalblnf,scalblnl,std::scalblnl">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- int signbit(double x); -->
<function name="signbit,std::signbit">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- void (*signal(int sig, void (*func)(int)))(int); -->
<function name="signal,std::signal">
2015-09-05 13:09:56 +02:00
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2"/>
</function>
2015-08-15 10:44:52 +02:00
<!-- int raise(int sig); -->
<function name="raise,std::raise">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- int scanf(const char *format, ...); -->
<function name="scanf,std::scanf">
<noreturn>false</noreturn>
<leak-ignore/>
<formatstr scan="true"/>
<arg nr="1">
<formatstr/>
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int vsscanf(const char *s, const char *format, va_list arg); -->
<function name="vsscanf,std::vsscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- int vswscanf(const wchar_t *s, const wchar_t *format, va_list arg); -->
<function name="vswscanf,std::vswscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- int vscanf(const char *format, va_list arg); -->
<function name="vscanf,std::vscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2"/>
</function>
<!-- int vscanf(const wchar_t *format, va_list arg); -->
<function name="vwscanf,std::vwscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2"/>
</function>
<!-- void setbuf(FILE *stream, char *buf); -->
<function name="setbuf,std::setbuf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-bool/>
</arg>
</function>
<!-- int setvbuf(FILE* stream, char *buf, int mode, size_t size); -->
<function name="setvbuf,std::setvbuf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
<arg nr="4">
<not-uninit/>
<valid>0:</valid>
</arg>
2014-06-23 14:43:56 +02:00
</function>
2015-08-15 10:44:52 +02:00
<!-- int setjmp(jmp_buf env); -->
<function name="setjmp">
<noreturn>false</noreturn>
<leak-ignore/>
2015-09-05 07:00:22 +02:00
<arg nr="1"/>
</function>
<!-- char * strcat(char *deststr, const char *srcstr); -->
2015-08-13 11:03:21 +02:00
<function name="strcat,std::strcat">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- wchar_t wcscat(wchar_t *deststr, const char *srcstr); -->
<function name="wcscat,std::wcscat">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- size_t wcrtomb(char *s, wchar_t wc, mbstate_t *ps); -->
<function name="wcrtomb,std::wcrtomb">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- char * strchr(const char *cs, int c); -->
2015-08-13 11:03:21 +02:00
<function name="strchr,std::strchr">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- wchar_t wcschr(const wchar_t *cs, wchar_t c); -->
<function name="wcschr,std::wcschr">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- int strcmp(const char *str1, const char *str2); -->
2015-08-13 11:03:21 +02:00
<function name="strcmp,std::strcmp">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- int wcscmp(const wchar_t *str1, const wchar_t c); -->
<function name="wcscmp,std::wcscmp">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- char *strcpy(char *desstr, const char *srcstr); -->
<function name="strcpy,std::strcpy">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="strlen" arg="2"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
<strz/>
</arg>
</function>
<!-- wchar_t *wcscpy(wchar_t *deststr, const wchar_t *srcstr); -->
<function name="wcscpy,std::wcscpy">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- size_t strftime(char *s, size_t max, const char *fmt, const struct tm *p); -->
<!-- size_t strfxtime(char *s, size_t max, const char *fmt, const struct tmx *p); -->
<function name="strftime,std::strftime,strfxtime">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
<arg nr="4">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- size_t strlen(const char *string); -->
<!-- size_t wcslen(const wchar_t *string); -->
<function name="strlen,std::strlen,wcslen,std::wcslen">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<returnValue>strlen(arg1)</returnValue>
<arg nr="1">
<not-null/>
<not-uninit/>
<strz/>
</arg>
</function>
<!-- char *strncpy(char *s, const char *ct, size_t n); -->
<function name="strncpy,std::strncpy">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="sizeof" arg="2"/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- char * strpbrk(const char *cs, const char *ct); -->
<function name="strpbrk,std::strpbrk">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- char * strncat(char *ct, const char *s, size_t n); -->
2015-08-13 11:03:21 +02:00
<function name="strncat,std::strncat">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
</function>
<!-- wchar_t *wcsncat(wchar_t *ct, const wchar_t *cs, size_t n); -->
<function name="wcsncat,std::wcsncat">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
<strz/>
<minsize type="argvalue" arg="3"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- int strncmp(const char *s1, const char *s2, size_t n); -->
2015-08-13 11:03:21 +02:00
<function name="strncmp,std::strncmp">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-08-15 16:01:48 +02:00
</function>
2015-08-15 10:44:52 +02:00
<!-- int wcsncmp(const wchar_t* wcs1, const wchar_t* wcs2, size_t num); -->
<function name="wcsncmp,std::wcsncmp">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<not-bool/>
<valid>0:</valid>
</arg>
2014-08-15 16:01:48 +02:00
</function>
2015-08-13 14:11:16 +02:00
<!-- char* strstr(const char *s1, const char *s2); -->
2015-08-13 11:03:21 +02:00
<function name="strstr,std::strstr">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- wchar_t *wcsstr(const wchar_t *s1, const wchar_t *s2); -->
<function name="wcsstr,std::wcsstr">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- size_t strspn(const char *cs, const char *ct); -->
<function name="strspn,std::strspn">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- size_t strxfrm(char *ds, const char *ss, size_t n); -->
<function name="strxfrm,std::strxfrm">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- size_t wcsxfrm(wchar_t *s1, const wchar_t *s2, size_t n); -->
<function name="wcsxfrm,std::wcsxfrm">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
2014-08-15 16:01:48 +02:00
</function>
<!-- size_t wcsspn(const wchar_t *s1, const wchar_t *s2); -->
<function name="wcsspn,std::wcsspn">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
2014-08-15 16:01:48 +02:00
</function>
2015-08-15 10:44:52 +02:00
<!-- struct lconv* localeconv(void); -->
<function name="localeconv,std::localeconv">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
</function>
2015-08-15 10:44:52 +02:00
<!-- char* setlocale(int category, const char* locale); -->
<function name="setlocale,std::setlocale">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- char * strerror(int errornum); -->
<function name="strerror,std::strerror">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- size_t strcspn(const char *cs, const char *ct); -->
<function name="strcspn,std::strcspn">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- size_t wcscspn(const wchar_t *cs, const wchar_t *ct); -->
<function name="wcscspn,std::wcscspn">
<use-retval/>
<pure/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- wchar_t * wcspbrk(const wchar_t *ct, wchar_t *c); -->
<function name="wcspbrk,std::wcspbrk">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- wchar_t * wcsncpy(wchar_t *s, const wchar_t *cs, size_t n); -->
<function name="wcsncpy,std::wcsncpy">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- int strcoll(const char *cs, const char *c); -->
<function name="strcoll,std::strcoll">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int wcscoll(const wchar_t *s1, const wchar_t *s2); -->
<function name="wcscoll,std::wcscoll">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- const char * strrchr(const char * str, int character);-->
<!-- char * strrchr(char * str, int character); -->
<function name="strrchr,std::strrchr">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
<!-- const char * strpbrk(const char * str1, const char * str2);-->
<!-- char * strpbrk(char * str1, const char * str2); -->
2014-09-11 21:37:39 +02:00
<function name="strbprk">
<use-retval/>
<pure/>
2014-09-11 21:37:39 +02:00
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
2014-09-11 21:37:39 +02:00
</function>
<!-- const wchar_t* wcsrchr(const wchar_t* ws, wchar_t wc);-->
<!-- wchar_t* wcsrchr(wchar_t* ws, wchar_t wc); -->
<function name="wcsrchr,std::wcsrchr">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- size_t wcsrtombs(char *dst, const wchar_t **src, size_t len, mbstate_t *ps); -->
<function name="wcsrtombs,std::wcsrtombs">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-null/>
</arg>
</function>
<!-- char *strtok(char *s, const char *ct); -->
<function name="strtok,std::strtok">
<pure/>
<noreturn>false</noreturn>
2014-09-11 16:57:44 +02:00
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- intmax_t strtoimax(const char *s, char **endp, int base); -->
<!-- uintmax_t strtoumax(const char *s, char **endp, int base); -->
<function name="strtoimax,std::strtoimax,strtoumax,std::strtoumax">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0,2:36</valid>
</arg>
</function>
<!-- float strtof(const char *s, char **endp); -->
<!-- double strtod(const char *s, char **endp); -->
<!-- long double strtold(const char *s, char **endp); -->
<function name="strtof,std::strtof,strtod,std::strtod,strtold,std::strtold">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="2"/>
</function>
<!-- long strtol(const char *s, char **endp, int base); -->
<!-- unsigned long strtoul(const char *s, char **endp, int base); -->
<!-- long long strtoll(const char *s, char **endp, int base); -->
<!-- unsigned long long strtoull(const char *s, char **endp, int base); -->
<!-- intmax_t strtoimax (const char* str, char** endptr, int base); -->
<!-- uintmax_t strtoumax (const char* str, char** endptr, int base); -->
<function name="strtol,std::strtol,strtoul,std::strtoul,strtoll,std::strtoll,strtoull,std::strtoull,strtoimax,std::strtoimax,strtoumax,std::strtoumax">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
2015-05-03 16:04:15 +02:00
<strz/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0,2:36</valid>
</arg>
</function>
<!-- time_t time(time_t *tp); -->
<function name="time,std::time">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- char *tmpnam(char *s); -->
<function name="tmpnam,std::tmpnam">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- errno_t tmpnam_s(char *filename_s, rsize_t maxsize); -->
<function name="tmpnam_s">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- FILE *tmpfile(void); -->
<function name="tmpfile">
<use-retval/>
<noreturn>false</noreturn>
</function>
<!-- int tolower(int c); -->
<function name="tolower,std::tolower">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
</function>
<!-- int toupper(int c); -->
<function name="toupper,std::toupper">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<valid>0:255</valid>
</arg>
2017-01-05 20:38:56 +01:00
</function>
2017-01-06 12:04:36 +01:00
<function name="typeid">
2017-01-05 20:38:56 +01:00
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1"/>
</function>
<!-- type va_arg(va_list ap, type); -->
<function name="va_arg">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2"/>
</function>
<!-- void va_copy(va_list dest, va_list src); -->
<function name="va_copy">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2"/>
</function>
<!-- void va_end(va_list ap); -->
<function name="va_end">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1"/>
</function>
<!-- void va_start(va_list ap, paramN); -->
<function name="va_start">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2"/>
</function>
<!-- float wcstof(const wchar_t *s, wchar ** endp); -->
<!-- double wcstod(const wchar_t *s, wchar ** endp); -->
<!-- long double wcstold(const wchar_t *s, wchar ** endp); -->
<function name="wcstof,std::wcstof,wcstod,std::wcstod,wcstold,std::wcstold">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2"/>
</function>
<!-- float stof (const string& str, size_t* idx = 0); -->
<!-- float stof (const wstring& str, size_t* idx = 0); -->
<!-- double stod (const string& str, size_t* idx = 0); -->
<!-- double stod (const wstring& str, size_t* idx = 0); -->
<!-- long double stold (const string& str, size_t* idx = 0); -->
<!-- long double stold (const wstring& str, size_t* idx = 0); -->
<function name="std::stod,std::stof,std::stold">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2" default="0">
<not-uninit/>
</arg>
</function>
<!-- int stoi (const string& str, size_t* idx = 0, int base = 10);
int stoi (const wstring& str, size_t* idx = 0, int base = 10); -->
<!-- long stol (const string& str, size_t* idx = 0, int base = 10);
long stol (const wstring& str, size_t* idx = 0, int base = 10); -->
<!-- long long stoll (const string& str, size_t* idx = 0, int base = 10);
long long stoll (const wstring& str, size_t* idx = 0, int base = 10); -->
<!-- unsigned long stoul (const string& str, size_t* idx = 0, int base = 10);
unsigned long stoul (const wstring& str, size_t* idx = 0, int base = 10); -->
<!-- unsigned long long stoull (const string& str, size_t* idx = 0, int base = 10);
unsigned long long stoull (const wstring& str, size_t* idx = 0, int base = 10); -->
<function name="std::stoi,std::stol,std::stoll,std::stoul,std::stoull">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2" default="0">
<not-uninit/>
</arg>
<arg nr="3" default="10">
<not-uninit/>
<valid>0,2:36</valid>
</arg>
</function>
<!-- string to_string (int val); -->
<!-- string to_string (long val); -->
<!-- string to_string (long long val); -->
<!-- string to_string (unsigned val); -->
<!-- string to_string (unsigned long val); -->
<!-- string to_string (unsigned long long val); -->
<!-- string to_string (float val); -->
<!-- string to_string (double val); -->
<!-- string to_string (long double val);-->
<function name="std::to_string,std::to_wstring">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- size_t mbrtowc(wchar_t* pwc, const char* pmb, size_t max, mbstate_t* ps); -->
<function name="mbrtowc,std::mbrtowc">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
</function>
<!-- wchar_t* wcstok(wchar_t *s, const wchar_t *ct, wchar_t **ptr); -->
<function name="wcstok,std::wcstok">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
</arg>
</function>
<!-- intmax_t wcstoimax(const wchar_t *s, wchar_t ** endp, int base); -->
<!-- uintmax_t wcstoumax(const wchar_t *s, wchar_t ** endp, int base); -->
<function name="wcstoimax,std::wcstoimax,wcstoumax,std::wcstoumax">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0,2:36</valid>
</arg>
</function>
<!-- long wcstol(const wchar_t *s, wchar ** endp, int base); -->
<!-- long long wcstoll(const wchar_t *s, wchar ** endp, int base); -->
<!-- unsigned long wcstoul(const wchar_t *s, wchar ** endp, int base); -->
<!-- unsigned long long wcstoull(const wchar_t *s, wchar ** endp, int base); -->
<!-- intmax_t wcstoimax (const wchar_t* wcs, wchar_t** endptr, int base); -->
<!-- uintmax_t wcstoumax (const wchar_t* wcs, wchar_t** endptr, int base); -->
<function name="wcstol,std::wcstol,wcstoll,std::wcstoll,wcstoul,std::wcstoul,wcstoull,std::wcstoull,wcstoimax,std::wcstoimax,wcstoumax,std::wcstoumax">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0,2:36</valid>
</arg>
</function>
<!-- int wprintf(const wchar_t *format, ...); -->
<function name="wprintf,std::wprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<formatstr/>
<arg nr="1">
<formatstr/>
<not-null/>
</arg>
</function>
<!-- int sprintf(char *s, const char *format, ...); -->
<function name="sprintf,std::sprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<minsize type="strlen" arg="2"/>
</arg>
<formatstr/>
<arg nr="2">
<formatstr/>
<not-null/>
<not-uninit/>
</arg>
</function>
2015-01-19 14:30:58 +01:00
<!-- int swprintf(wchar_t *s, size_t n, const wchar_t *format, ...); -->
<function name="swprintf,std::swprintf">
2015-01-19 14:30:58 +01:00
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<minsize type="argvalue" arg="2"/>
<not-uninit/>
</arg>
2015-01-19 14:30:58 +01:00
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
2015-01-19 14:30:58 +01:00
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
2015-01-19 14:30:58 +01:00
</arg>
</function>
<!-- int vsprintf(char *s, const char *format, va_list arg); -->
<function name="vsprintf,std::vsprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-null/>
<not-uninit/>
</arg>
<arg nr="3"/>
</function>
<!-- int vswprintf(wchar_t *s, size_t n, const wchar_t *format, va_list arg); -->
<function name="vswprintf,std::vswprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
<arg nr="4"/>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fwprintf(FILE* stream, const wchar_t* format, ...); -->
<function name="fwprintf,std::fwprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
</arg>
<formatstr/>
<arg nr="2">
<formatstr/>
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int snprintf(char *s, size_t n, const char *format, ...); -->
<function name="snprintf,std::snprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<formatstr/>
<arg nr="3">
<formatstr/>
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- int vsnprintf(char *s, size_t n, const char *format, va_list arg); -->
<function name="vsnprintf,std::vsnprintf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
<arg nr="4"/>
</function>
<!-- int wscanf(const wchar_t *format, ...); -->
<function name="wscanf,std::wscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<formatstr scan="true"/>
<arg nr="1">
<formatstr/>
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int sscanf(const char *string, const char * format, ...); -->
<function name="sscanf,std::sscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<formatstr scan="true"/>
<arg nr="2">
<formatstr/>
<not-null/>
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- int fwscanf(FILE* stream, const wchar_t* format, ...); -->
<function name="fwscanf,std::fwscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<formatstr scan="true"/>
<arg nr="2">
<formatstr/>
<not-uninit/>
</arg>
</function>
<!-- int swscanf(const wchar_t *string, const wchar_t *format, ...); -->
<function name="swscanf,std::swscanf">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<formatstr scan="true"/>
<arg nr="2">
<formatstr/>
<not-uninit/>
</arg>
</function>
<!-- int system(const char *command); -->
<function name="system,std::system">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- /*unspecified*/ setw(int n); -->
<function name="setw,std::setw">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<!-- template <class T> const T& min(const T& a, const T& b); -->
<function name="min,std::min">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- template <class T> const T& max(const T& a, const T& b); -->
<function name="max,std::max">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- /*unspecified*/ setiosflags(ios_base::fmtflags mask); -->
<function name="setiosflags,std::setiosflags">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- /*unspecified*/ resetiosflags(ios_base::fmtflags mask); -->
<function name="resetiosflags,std::resetiosflags">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- /*unspecified*/ setfill(char_type c); -->
<function name="setfill,std::setfill">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- /*unspecified*/ setprecision(int n); -->
<function name="setprecision,std::setprecision">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- /*unspecified*/ setbase(int base); -->
<function name="setbase,std::setbase">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
</function>
2015-08-15 10:44:52 +02:00
<!-- struct tmx *zonetime(const time_t *tp, int zone); -->
<function name="zonetime">
<use-retval/>
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2">
<not-uninit/>
</arg>
</function>
<!-- size_t c16rtomb ( char * pmb, char16_t c16, mbstate_t * ps ); -->
<!-- size_t c32rtomb ( char * pmb, char32_t c32, mbstate_t * ps ); -->
<function name="c16rtomb,c32rtomb">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1"/>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-null/>
<not-uninit/>
</arg>
</function>
<!-- size_t mbrtoc16 ( char16_t * pc16, const char * pmb, size_t max, mbstate_t * ps); -->
<!-- size_t mbrtoc32 ( char32_t * pc32, const char * pmb, size_t max, mbstate_t * ps); -->
<function name="mbrtoc16,mbrtoc32">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1"/>
<arg nr="2">
<not-uninit/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-null/>
<not-uninit/>
</arg>
</function>
2017-04-23 19:40:45 +02:00
<function name="std::array::clear,std::deque::clear,std::list::clear,std::forward_list::clear,std::map::clear,std::unordered_map::clear,std::queue::clear,std::set::clear,std::unordered_set::clear,std::stack::clear,std::string::clear,std::wstring::clear,std::basic_string::empty,std::vector::clear">
2017-03-05 19:47:47 +01:00
<noreturn>false</noreturn>
</function>
2017-04-23 19:40:45 +02:00
<function name="std::array::empty,std::deque::empty,std::list::empty,std::forward_list::empty,std::map::empty,std::unordered_map::empty,std::queue::empty,std::set::empty,std::unordered_set::empty,std::stack::empty,std::string::empty,std::wstring::empty,std::basic_string::empty,std::vector::empty,std::queue::empty,std::array::empty">
2017-03-05 19:47:47 +01:00
<noreturn>false</noreturn>
<returnValue type="bool"/>
<use-retval/>
</function>
<function name="std::deque::push_back,std::deque::push_front,std::list::push_back,std::list::push_front,std::forward_list::push_front,std::queue::push,std::stack::push,std::vector::push_back,std::vector::push_front">
2017-03-05 19:47:47 +01:00
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
</arg>
</function>
<function name="std::deque::emplace_back,std::deque::emplace_front,std::list::emplace_back,std::list::emplace_front,std::forward_list::emplace_front,std::queue::emplace,std::stack::emplace,std::vector::emplace_back,std::vector::emplace_front">
<noreturn>false</noreturn>
<arg nr="variadic">
<not-uninit/>
</arg>
</function>
<function name="std::deque::size,std::deque::max_size,std::list::size,std::list::max_size,std::map::size,std::map::max_size,std::unordered_map::size,std::unordered_map::max_size,std::queue::size,std::set::size,std::set::max_size,std::unordered_set::size,std::unordered_set::max_size,std::stack::size,std::string::size,std::wstring::size,std::vector::size,std::vector::capacity,std::vector::max_size,std::array::size,std::array::max_size">
2017-03-05 19:47:47 +01:00
<noreturn>false</noreturn>
<returnValue type="std::size_t"/>
<use-retval/>
</function>
<function name="std::list::back,std::list::front,std::forward_list::front,std::queue::back,std::queue::front,std::vector::back,std::vector::front,std::array::front,std::array::back">
<noreturn>false</noreturn>
<use-retval/>
</function>
<function name="std::list::pop_back,std::list::pop_front,std::forward_list::pop_front,std::vector::pop_back">
<noreturn>false</noreturn>
</function>
<function name="std::stack::pop,std::queue::pop">
<noreturn>false</noreturn>
</function>
<function name="std::stack::top">
<noreturn>false</noreturn>
<use-retval/>
</function>
2017-03-05 18:19:49 +01:00
<function name="std::string::at">
<noreturn>false</noreturn>
<returnValue type="char"/>
<use-retval/>
<arg nr="1">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
2017-03-05 19:47:47 +01:00
<function name="std::string::back">
2017-03-05 18:19:49 +01:00
<noreturn>false</noreturn>
2017-03-05 19:47:47 +01:00
<returnValue type="char"/>
2017-03-05 18:19:49 +01:00
<use-retval/>
</function>
<function name="std::string::c_str,std::string::data">
<noreturn>false</noreturn>
2017-03-05 19:47:47 +01:00
<returnValue type="const char *"/>
2017-03-05 18:19:49 +01:00
<use-retval/>
</function>
2017-03-05 19:47:47 +01:00
<function name="std::string::front">
<noreturn>false</noreturn>
2017-03-05 19:47:47 +01:00
<returnValue type="char"/>
<use-retval/>
</function>
<!-- size_t find (const string& str, size_t pos = 0) const; -->
<!-- size_t find (const char* s, size_t pos, size_t n) const; -->
<!-- size_t find (char c, size_t pos = 0) const;-->
<!-- size_t find (const char* s, size_t pos = 0) const; -->
<function name="std::string::find,std::wstring::find,std::basic_string::find">
<noreturn>false</noreturn>
<leak-ignore/>
2017-04-23 19:40:45 +02:00
<use-retval/>
<arg nr="1">
<not-null/>
<not-uninit/>
</arg>
<arg nr="2" default="0">
<not-uninit/>
2016-12-12 13:35:41 +01:00
<valid>0:</valid>
</arg>
<arg nr="3" default="">
<not-uninit/>
2016-12-12 13:35:41 +01:00
<valid>0:</valid>
</arg>
</function>
<function name="std::string::length,std::wstring::length,std::string::size,std::wstring::size,std::basic_string::size,std::basic_string::size">
2017-03-05 18:19:49 +01:00
<noreturn>false</noreturn>
<returnValue type="std::size_t"/>
<use-retval/>
</function>
<function name="std::string::substr,std::wstring::substr,std::basic_string::substr">
<noreturn>false</noreturn>
<use-retval/>
<arg nr="1" default="0">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="2" default="0">
<not-uninit/>
</arg>
</function>
<!-- istream& read (char* s, streamsize n);
ifstream& read (char* s, streamsize n); -->
<function name="std::istream::read,std::ifstream::read">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- streamsize readsome (char* s, streamsize n); -->
<function name="std::istream::readsome,std::ifstream::readsome">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
</function>
<!-- istream& getline (char* s, streamsize n ); -->
<!-- istream& getline (char* s, streamsize n, char delim ); -->
<function name="std::istream::getline,std::ifstream::getline">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
<strz/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3" default="'\n'">
<not-uninit/>
</arg>
</function>
<!-- istream& get (char* s, streamsize n ); -->
<!-- istream& get (char* s, streamsize n, char delim ); -->
<function name="std::istream::get,std::ifstream::get">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-null/>
<minsize type="argvalue" arg="2"/>
<strz/>
</arg>
<arg nr="2">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="3" default="'\n'">
<not-uninit/>
</arg>
</function>
<!-- Not part of standard, but widely supported by runtime libraries. -->
<!-- char * itoa (int value, char * str, int base); -->
<function name="itoa">
<noreturn>false</noreturn>
<leak-ignore/>
<arg nr="1">
<not-uninit/>
</arg>
<arg nr="2">
<not-null/>
</arg>
2016-12-12 13:35:41 +01:00
<arg nr="3">
<not-uninit/>
<valid>2:36</valid>
</arg>
</function>
<!-- InputIterator std::adjacent_find(InputIterator first, InputIterator last) -->
<function name="std::adjacent_find">
2016-11-01 15:33:17 +01:00
<use-retval/>
<noreturn>false</noreturn>
2016-11-01 15:33:17 +01:00
<returnValue type="iterator" container="1"/>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3" default="">
<not-uninit/>
</arg>
</function>
<!-- InputIterator std::find(InputIterator first, InputIterator last, T val) -->
<!-- InputIterator std::find_if(InputIterator first, InputIterator last, UnaryPredicate val) -->
<!-- InputIterator std::find_if_not(InputIterator first, InputIterator last, UnaryPredicate val) -->
<function name="std::find,std::find_if,std::find_if_not">
<use-retval/>
<noreturn>false</noreturn>
<returnValue type="iterator" container="1"/>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- template< class InputIt, class OutputIt > OutputIt copy( InputIt first, InputIt last, OutputIt d_first ); -->
<function name="std::copy">
<noreturn>false</noreturn>
<returnValue type="iterator" container="2"/>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
<iterator container="2" type="first"/>
</arg>
</function>
<!-- bool std::all_of(InputIterator first, InputIterator last, UnaryPredicate pred) -->
<!-- bool std::any_of(InputIterator first, InputIterator last, UnaryPredicate pred) -->
<!-- bool std::none_of(InputIterator first, InputIterator last, UnaryPredicate pred) -->
2016-11-01 15:19:24 +01:00
<function name="std::all_of,std::any_of,std::none_of">
<use-retval/>
<noreturn>false</noreturn>
<returnValue type="bool"/>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- difference_type std::count(InputIterator first, InputIterator last, T val) -->
<!-- difference_type std::count_if(InputIterator first, InputIterator last, UnaryPredicate val) -->
<function name="std::count,std::count_if">
2016-11-01 12:25:23 +01:00
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- Function std::for_each(InputIterator first, InputIterator last, Function func) -->
<function name="std::for_each">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
</arg>
</function>
<!-- InputIterator std::search_n(InputIterator first, InputIterator last, Size count, const T& val) -->
2016-11-01 15:33:17 +01:00
<function name="std::search_n">
<use-retval/>
<noreturn>false</noreturn>
2016-11-01 15:33:17 +01:00
<returnValue type="iterator" container="1"/>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
<valid>0:</valid>
</arg>
<arg nr="4">
<not-uninit/>
</arg>
<arg nr="5" default=""/>
</function>
<!-- InputIterator std::find_end(InputIterator first1, InputIterator last1, InputIterator first2, InputIterator last2) -->
<!-- InputIterator std::find_first_of(InputIterator first1, InputIterator last1, InputIterator first2, InputIterator last2) -->
<!-- InputIterator std::search(InputIterator first1, InputIterator last1, InputIterator first2, InputIterator last2) -->
<function name="std::find_end,std::find_first_of,std::search">
2016-11-01 15:33:17 +01:00
<use-retval/>
<noreturn>false</noreturn>
2016-11-01 15:33:17 +01:00
<returnValue type="iterator" container="1"/>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
<iterator container="2" type="first"/>
</arg>
<arg nr="4">
<not-uninit/>
<iterator container="2" type="last"/>
</arg>
<arg nr="5" default="">
<not-bool/>
<not-uninit/>
</arg>
</function>
<function name="std::inplace_merge">
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="middle"/>
</arg>
<arg nr="3">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
</function>
2016-11-01 15:33:17 +01:00
<!-- bool std::equal(InputIterator first1, InputIterator last1, InputIterator first2) -->
<!-- bool std::is_permutation(InputIterator first1, InputIterator last1, InputIterator first2) -->
<function name="std::equal,std::is_permutation">
<use-retval/>
<noreturn>false</noreturn>
<returnValue type="bool"/>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
<iterator container="2" type="first"/>
</arg>
</function>
<!-- pair<InputIterator1, InputIterator2> std::mismatch(InputIterator first1, InputIterator last1, InputIterator first2) -->
<function name="std::mismatch">
<use-retval/>
<noreturn>false</noreturn>
<arg nr="1">
<not-uninit/>
<iterator container="1" type="first"/>
</arg>
<arg nr="2">
<not-uninit/>
<iterator container="1" type="last"/>
</arg>
<arg nr="3">
<not-uninit/>
<iterator container="2" type="first"/>
</arg>
</function>
<memory>
<alloc init="false">malloc</alloc>
<alloc init="true">calloc</alloc>
<dealloc>free</dealloc>
</memory>
<resource>
<alloc init="true">fopen</alloc>
<alloc init="true">tmpfile</alloc>
<dealloc>fclose</dealloc>
</resource>
<container id="stdContainer" endPattern="&gt; !!::" itEndPattern="&gt; :: iterator|const_iterator|reverse_iterator|const_reverse_iterator" opLessAllowed="false">
<type templateParameter="0"/>
<size>
<function name="resize" action="resize"/>
<function name="clear" action="clear"/>
<function name="size" yields="size"/>
<function name="empty" yields="empty"/>
<function name="erase" action="erase"/>
<function name="insert" action="insert"/>
<function name="emplace" action="push"/>
<function name="swap" action="change"/>
<function name="assign" action="change"/>
</size>
<access>
<function name="begin" yields="start-iterator"/>
<function name="cbegin" yields="start-iterator"/>
<function name="rbegin" yields="start-iterator"/>
<function name="crbegin" yields="start-iterator"/>
<function name="end" yields="end-iterator"/>
<function name="cend" yields="end-iterator"/>
<function name="rend" yields="end-iterator"/>
<function name="crend" yields="end-iterator"/>
</access>
</container>
<container id="stdVectorDeque" startPattern="std :: vector|deque &lt;" inherits="stdContainer" opLessAllowed="true">
<size>
<function name="push_back" action="push"/>
<function name="emplace_back" action="push"/>
<function name="pop_back" action="pop"/>
<function name="push_front" action="push"/>
<function name="emplace_front" action="push"/>
<function name="pop_front" action="pop"/>
</size>
<access indexOperator="array-like">
<function name="at" yields="at_index"/>
<function name="front" yields="item"/>
<function name="back" yields="item"/>
<function name="data" yields="buffer"/>
<function name="shrink_to_fit" action="change-internal"/>
<function name="reserve" action="change-internal"/>
</access>
</container>
<container id="stdArray" startPattern="std :: array &lt;" inherits="stdContainer" opLessAllowed="true">
<size templateParameter="1">
<function name="max_size" yields="size"/>
</size>
<access indexOperator="array-like">
<function name="at" yields="at_index"/>
<function name="front" yields="item"/>
<function name="back" yields="item"/>
<function name="data" yields="buffer"/>
<function name="fill" action="change-content"/>
</access>
</container>
<container id="stdBitset" startPattern="std :: bitset &lt;" inherits="stdContainer" itEndPattern="">
<size templateParameter="0"/>
2015-11-20 18:58:04 +01:00
<access indexOperator="array-like"/>
</container>
<container id="stdQueue" startPattern="std :: queue|priority_queue &lt;" inherits="stdContainer">
<access>
<function name="push" action="push"/>
<function name="pop" action="pop"/>
<function name="front" yields="item"/>
<function name="back" yields="item"/>
</access>
</container>
<container id="stdStack" startPattern="std :: stack &lt;" inherits="stdContainer">
<access>
<function name="push" action="push"/>
<function name="pop" action="pop"/>
<function name="top" yields="item"/>
</access>
</container>
<container id="stdSet" startPattern="std :: set|unoredered_set|multiset|unoredered_multiset &lt;" inherits="stdContainer">
<access>
<function name="find" action="find" yields="iterator"/>
<function name="count" action="find"/>
<function name="emplace_hint" action="push"/>
<function name="rehash" action="change-internal"/>
<function name="lower_bound" yields="iterator"/>
<function name="upper_bound" yields="iterator"/>
</access>
</container>
<container id="stdMap" startPattern="std :: map|unordered_map|multimap|unordered_multimap &lt;" inherits="stdContainer">
<type templateParameter="1"/>
<access>
<function name="at" yields="at_index"/>
<function name="count" action="find"/>
<function name="find" action="find" yields="iterator"/>
<function name="emplace_hint" action="push"/>
<function name="try_emplace" action="push"/>
<function name="insert_or_assign" action="push"/>
<function name="rehash" action="change-internal"/>
<function name="lower_bound" yields="iterator"/>
<function name="upper_bound" yields="iterator"/>
</access>
</container>
<container id="stdList" startPattern="std :: list|forward_list &lt;" inherits="stdContainer">
<size>
<function name="push_back" action="push"/>
<function name="emplace_back" action="push"/>
<function name="emplace_after" action="push"/>
<function name="pop_back" action="pop"/>
<function name="push_front" action="push"/>
<function name="emplace_front" action="push"/>
<function name="pop_front" action="pop"/>
<function name="erase_after" action="erase"/>
<function name="insert_after" action="insert"/>
<function name="remove" action="change"/>
<function name="remove_if" action="change"/>
<function name="unique" action="change"/>
<function name="merge" action="change"/>
<function name="splice" action="change"/>
<function name="splice_after" action="change"/>
</size>
<access>
<function name="front" yields="item"/>
<function name="back" yields="item"/>
<function name="before_begin" yields="iterator"/>
<function name="cbefore_begin" yields="iterator"/>
<function name="reverse" action="change-content"/>
<function name="sort" action="change-content"/>
</access>
</container>
<container id="stdAllString" inherits="stdContainer" opLessAllowed="true">
<type string="std-like"/>
<size>
<function name="push_back" action="push"/>
<function name="pop_back" action="pop"/>
<function name="append" action="change"/>
<function name="replace" action="change"/>
<function name="reserve" action="change-internal"/>
<function name="shrink_to_fit" action="change-internal"/>
</size>
<access indexOperator="array-like">
<function name="at" yields="at_index"/>
<function name="front" yields="item"/>
<function name="back" yields="item"/>
<function name="data" yields="buffer"/>
<function name="c_str" yields="buffer-nt"/>
<function name="length" yields="size"/>
<function name="find" action="find"/>
<function name="rfind" action="find"/>
<function name="find_last_of" action="find"/>
<function name="find_last_not_of" action="find"/>
<function name="find_first_of" action="find"/>
<function name="find_first_not_of" action="find"/>
</access>
</container>
<container id="stdBasicString" startPattern="std :: basic_string &lt;" inherits="stdAllString">
<type templateParameter="0"/>
</container>
<container id="stdString" startPattern="std :: string|wstring|u16string|u32string" endPattern="" inherits="stdAllString"/>
<podtype name="char16_t,std::char16_t" sign="u" size="2"/>
<podtype name="char32_t,std::char32_t" sign="u" size="4"/>
<podtype name="int8_t,std::int8_t" sign="s" size="1"/>
<podtype name="int16_t,std::int16_t" sign="s" size="2"/>
<podtype name="int32_t,std::int32_t" sign="s" size="4"/>
<podtype name="int64_t,std::int64_t" sign="s" size="8"/>
<podtype name="uint8_t,std::uint8_t" sign="u" size="1"/>
<podtype name="uint16_t,std::uint16_t" sign="u" size="2"/>
<podtype name="uint32_t,std::uint32_t" sign="u" size="4"/>
<podtype name="uint64_t,std::uint64_t" sign="u" size="8"/>
<podtype name="int_fast8_t,std::int_fast8_t" sign="s"/>
<podtype name="int_fast16_t,std::int_fast16_t" sign="s"/>
<podtype name="int_fast32_t,std::int_fast32_t" sign="s"/>
<podtype name="int_fast64_t,std::int_fast64_t" sign="s"/>
<podtype name="int_least8_t,std::int_least8_t" sign="s"/>
<podtype name="int_least16_t,std::int_least16_t" sign="s"/>
<podtype name="int_least32_t,std::int_least32_t" sign="s"/>
<podtype name="int_least64_t,std::int_least64_t" sign="s"/>
<podtype name="uint_fast8_t,std::uint_fast8_t" sign="u"/>
<podtype name="uint_fast16_t,std::uint_fast16_t" sign="u"/>
<podtype name="uint_fast32_t,std::uint_fast32_t" sign="u"/>
<podtype name="uint_fast64_t,std::uint_fast64_t" sign="u"/>
<podtype name="uint_least8_t,std::uint_least8_t" sign="u"/>
<podtype name="uint_least16_t,std::uint_least16_t" sign="u"/>
<podtype name="uint_least32_t,std::uint_least32_t" sign="u"/>
<podtype name="uint_least64_t,std::uint_least64_t" sign="u"/>
<podtype name="intptr_t,std::intptr_t" sign="s"/>
<podtype name="uintptr_t,std::uintptr_t" sign="u"/>
<podtype name="intmax_t,std::intmax_t" sign="s"/>
<podtype name="uintmax_t,std::uintmax_t" sign="u"/>
<podtype name="size_t" sign="u"/>
<podtype name="double_t"/>
<podtype name="float_t"/>
<podtype name="time_t"/>
<podtype name="clock_t"/>
<podtype name="tm"/>
<podtype name="fenv_t"/>
<podtype name="fexcept_t"/>
<podtype name="lconv"/>
<podtype name="sig_atomic_t"/>
<podtype name="va_list"/>
<podtype name="ptrdiff_t"/>
<podtype name="max_align_t"/>
<podtype name="nullptr_t"/>
<podtype name="fpos_t"/>
<podtype name="FILE"/>
<podtype name="div_t"/>
<podtype name="ldiv_t"/>
<podtype name="lldiv_t"/>
<podtype name="imaxdiv_t"/>
<podtype name="mbstate_t"/>
<podtype name="wint_t"/>
<podtype name="jmp_buf"/>
<podtype name="std::streamsize,streamsize" sign="s"/>
<podtype name="std::streamoff,streamoff" sign="s"/>
<!-- Fixed width integer sizes, defined in header <stdint.h> -->
<define name="INT8_MIN" value="-128"/>
<define name="INT16_MIN" value="-32768"/>
<define name="INT32_MIN" value="-2147483648"/>
<define name="INT64_MIN" value="-9223372036854775808"/>
<define name="INT_FAST8_MIN" value="-128"/>
<define name="INT_FAST16_MIN" value="-9223372036854775808"/>
<define name="INT_FAST32_MIN" value="-9223372036854775808"/>
<define name="INT_FAST64_MIN" value="-9223372036854775808"/>
<define name="INT_LEAST8_MIN" value="-128"/>
<define name="INT_LEAST16_MIN" value="-32768"/>
<define name="INT_LEAST32_MIN" value="-2147483648"/>
<define name="INT_LEAST64_MIN" value="-9223372036854775808"/>
<define name="INT8_MAX" value="127"/>
<define name="INT16_MAX" value="32767"/>
<define name="INT32_MAX" value="2147483647"/>
2016-08-27 15:09:45 +02:00
<define name="INT64_MAX" value="9223372036854775807"/>
<define name="INT_FAST8_MAX" value="127"/>
<define name="INT_FAST16_MAX" value="9223372036854775807"/>
<define name="INT_FAST32_MAX" value="9223372036854775807"/>
<define name="INT_FAST64_MAX" value="9223372036854775807"/>
<define name="INT_LEAST8_MAX" value="127"/>
<define name="INT_LEAST16_MAX" value="32767"/>
<define name="INT_LEAST32_MAX" value="2147483647"/>
2016-08-27 15:09:45 +02:00
<define name="INT_LEAST64_MAX" value="9223372036854775807"/>
<define name="UINT8_MAX" value="255"/>
<define name="UINT16_MAX" value="65535"/>
<define name="UINT32_MAX" value="4294967295"/>
2016-08-27 15:09:45 +02:00
<define name="UINT64_MAX" value="18446744073709551615"/>
<define name="UINT_FAST8_MAX" value="255"/>
<define name="UINT_FAST16_MAX" value="18446744073709551615"/>
<define name="UINT_FAST32_MAX" value="18446744073709551615"/>
<define name="UINT_FAST64_MAX" value="18446744073709551615"/>
<define name="UINT_LEAST8_MAX" value="255"/>
<define name="UINT_LEAST16_MAX" value="65535"/>
<define name="UINT_LEAST32_MAX" value="4294967295"/>
2016-08-27 15:09:45 +02:00
<define name="UINT_LEAST64_MAX" value="18446744073709551615"/>
</def>