extern void *__builtin___memcpy_chk(void *, void *, unsigned int, unsigned int); extern void *__builtin___memmove_chk(void *, void *, unsigned int, unsigned int); extern void *__builtin___mempcpy_chk(void *, void *, unsigned int, unsigned int); extern void *__builtin___memset_chk(void *, int, unsigned int, unsigned int); extern unsigned char *__builtin___stpcpy_chk(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin___strcat_chk(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin___strcpy_chk(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin___strncat_chk(unsigned char *, unsigned char *, unsigned int, unsigned int); extern unsigned char *__builtin___strncpy_chk(unsigned char *, unsigned char *, unsigned int, unsigned int); extern int __builtin___vfprintf_chk(void *, int, unsigned char *, void *); extern int __builtin___vprintf_chk(int, unsigned char *, void *); extern int __builtin___vsnprintf_chk(unsigned char *, unsigned int, int, unsigned int, unsigned char *, void *); extern int __builtin___vsprintf_chk(unsigned char *, int, unsigned int, unsigned char *, void *); extern double __builtin_acos(double); extern float __builtin_acosf(float); extern double __builtin_acosl(double); extern void *__builtin_alloca(unsigned int); extern double __builtin_asin(double); extern float __builtin_asinf(float); extern double __builtin_asinl(double); extern double __builtin_atan(double); extern float __builtin_atanf(float); extern double __builtin_atanl(double); extern double __builtin_atan2(double, double); extern float __builtin_atan2f(float, float); extern double __builtin_atan2l(double, double); extern double __builtin_ceil(double); extern float __builtin_ceilf(float); extern double __builtin_ceill(double); extern double __builtin_cos(double); extern float __builtin_cosf(float); extern double __builtin_cosl(double); extern double __builtin_cosh(double); extern float __builtin_coshf(float); extern double __builtin_coshl(double); extern int __builtin_clz(unsigned int); extern int __builtin_clzl(unsigned int); extern int __builtin_clzll(unsigned int); extern int __builtin_constant_p(int); extern int __builtin_ctz(unsigned int); extern int __builtin_ctzl(unsigned int); extern int __builtin_ctzll(unsigned int); extern double __builtin_exp(double); extern float __builtin_expf(float); extern double __builtin_expl(double); extern int __builtin_expect(int, int); extern double __builtin_fabs(double); extern float __builtin_fabsf(float); extern double __builtin_fabsl(double); extern int __builtin_ffs(unsigned int); extern int __builtin_ffsl(unsigned int); extern int __builtin_ffsll(unsigned int); extern void *__builtin_frame_address(unsigned int); extern double __builtin_floor(double); extern float __builtin_floorf(float); extern double __builtin_floorl(double); extern double __builtin_huge_val(void); extern float __builtin_huge_valf(void); extern double __builtin_huge_vall(void); extern double __builtin_inf(void); extern float __builtin_inff(void); extern double __builtin_infl(void); extern void *__builtin_memcpy(void *, void *, unsigned int); extern void *__builtin_mempcpy(void *, void *, unsigned int); extern double __builtin_fmod(double); extern float __builtin_fmodf(float); extern double __builtin_fmodl(double); extern double __builtin_frexp(double, int *); extern float __builtin_frexpf(float, int *); extern double __builtin_frexpl(double, int *); extern double __builtin_ldexp(double, int); extern float __builtin_ldexpf(float, int); extern double __builtin_ldexpl(double, int); extern double __builtin_log(double); extern float __builtin_logf(float); extern double __builtin_logl(double); extern double __builtin_log10(double); extern float __builtin_log10f(float); extern double __builtin_log10l(double); extern float __builtin_modff(float, float *); extern double __builtin_modfl(double, double *); extern double __builtin_nan(unsigned char *); extern float __builtin_nanf(unsigned char *); extern double __builtin_nanl(unsigned char *); extern double __builtin_nans(unsigned char *); extern float __builtin_nansf(unsigned char *); extern double __builtin_nansl(unsigned char *); extern void *__builtin_next_arg(void); extern unsigned int __builtin_object_size(void *, int); extern int __builtin_parity(unsigned int); extern int __builtin_parityl(unsigned int); extern int __builtin_parityll(unsigned int); extern int __builtin_popcount(unsigned int); extern int __builtin_popcountl(unsigned int); extern int __builtin_popcountll(unsigned int); extern double __builtin_powi(double, int); extern float __builtin_powif(float, int); extern double __builtin_powil(double, int); extern void __builtin_return(void *); extern void *__builtin_return_address(unsigned int); extern double __builtin_sin(double); extern float __builtin_sinf(float); extern double __builtin_sinl(double); extern double __builtin_sinh(double); extern float __builtin_sinhf(float); extern double __builtin_sinhl(double); extern double __builtin_sqrt(double); extern float __builtin_sqrtf(float); extern double __builtin_sqrtl(double); extern unsigned char *__builtin_stpcpy(unsigned char *, unsigned char *); extern unsigned char *__builtin_strchr(unsigned char *, unsigned char); extern int __builtin_strcmp(unsigned char *, unsigned char *); extern unsigned char *__builtin_strcpy(unsigned char *, unsigned char *); extern unsigned int __builtin_strcspn(unsigned char *, unsigned char *); extern unsigned char *__builtin_strncat(unsigned char *, unsigned char *, unsigned int); extern int __builtin_strncmp(unsigned char *, unsigned char *, unsigned int); extern unsigned char *__builtin_strncpy(unsigned char *, unsigned char *, unsigned int); extern int __builtin_strspn(unsigned char *, unsigned char *); extern unsigned char *__builtin_strpbrk(unsigned char *, unsigned char *); extern int __builtin_types_compatible_p(unsigned int, unsigned int); extern double __builtin_tan(double); extern float __builtin_tanf(float); extern double __builtin_tanl(double); extern double __builtin_tanh(double); extern float __builtin_tanhf(float); extern double __builtin_tanhl(double); extern void __builtin_va_end(void *); extern void __builtin_varargs_start(void *); extern void __builtin_va_start(void *, void *); extern void __builtin_stdarg_start(void *); extern void __builtin_va_arg(void *, unsigned int); extern void __builtin_va_copy(void *, void *); int array_local(void) { int i; int j; int a; int b; int tab[10]; c16: tab[0] = 0; c15: tab[1] = 0; c14: tab[2] = 0; c13: tab[3] = 0; c12: tab[4] = 0; c11: tab[5] = 0; c10: tab[6] = 0; c9: tab[7] = 0; c8: tab[8] = 0; c7: tab[9] = 0; c6: tab[0] = 1; c5: tab[1] = 5; c4: a = tab[0]; c3: tab[1] = 7; c2: a = tab[1]; c1: b = tab[0]; c0: return a; } int array_mixte(int *tab1, int a, int b) { int tab2[10]; c30: tab2[0] = 0; c29: tab2[1] = 0; c28: tab2[2] = 0; c27: tab2[3] = 0; c26: tab2[4] = 0; c25: tab2[5] = 0; c24: tab2[6] = 0; c23: tab2[7] = 0; c22: tab2[8] = 0; c21: tab2[9] = 0; c20: tab2[a] = tab1[b] + 1; c19: tab1[b] = tab2[0]; c18: tab1[a] = tab1[1]; c17: return tab2[a]; } int array_param(int *tab, int c, int d) { int i; int j; int a; int b; c37: tab[0] = 1; c36: tab[1] = c; c35: a = tab[0]; c34: tab[d] = 7; c33: a = tab[d]; c32: b = tab[0]; c31: return a; } int main(void) { int t[10]; int a; int b; int c; c51: t[0] = 1; c50: t[1] = 2; c49: t[2] = 3; c48: t[3] = 4; c47: t[4] = 5; c46: t[5] = 6; c45: t[6] = 7; c44: t[7] = 8; c43: t[8] = 9; c42: t[9] = 0; c41: a = array_local(); c40: b = array_mixte(t, 2, 3); c39: c = array_param(t, 2, 3); c38: return (a + b) + c; }