blob: 25b88995515fb7acfce52908207e8203c3621d7e [file] [log] [blame]
#include "../../gcc.dg/analyzer/analyzer-decls.h"
#ifdef __cplusplus
#define CONST_CAST(type) const_cast<type>
#else
#define CONST_CAST(type)
#endif
extern int execl(const char *pathname, const char *arg, ...);
extern int execlp(const char *file, const char *arg, ...);
extern int execle(const char *pathname, const char *arg, ...);
extern int execv(const char *pathname, char *const argv[]);
extern int execvp(const char *file, char *const argv[]);
extern int execvpe(const char *file, char *const argv[], char *const envp[]);
int test_execl_ls_al ()
{
return execl ("/usr/bin/ls", "ls", "-al", NULL);
}
int test_execlpl_ls_al ()
{
return execlp ("ls", "ls", "-al", NULL);
}
int test_execle_ls_al ()
{
char * env[3] = {CONST_CAST(char *)("FOO=BAR"), CONST_CAST(char *)("BAZ"), NULL};
return execl ("/usr/bin/ls", "ls", "-al", NULL, env);
}
int test_execv_ls_al ()
{
char * argv[3] = {CONST_CAST(char *)("ls"), CONST_CAST(char *)("-al"), NULL};
return execv ("/usr/bin/ls", argv);
}
int test_execvp_ls_al ()
{
char *argv[3] = {CONST_CAST(char *)("ls"), CONST_CAST(char *)("-al"), NULL};
return execvp ("ls", argv);
}
int test_execvpe_ls_al ()
{
char *env[3] = {CONST_CAST(char *)("FOO=BAR"), CONST_CAST(char *)("BAZ"), NULL};
char *argv[3] = {CONST_CAST(char *)("ls"), CONST_CAST(char *)("-al"), NULL};
return execvpe ("ls", argv, env);
}