rt_gccstream/gcc/testsuite/gcc.target/s390/pr42224.c

37 lines
703 B
C

/* { dg-do compile } */
/* { dg-options "-O0" } */
typedef char* __char_ptr32 __attribute__ (( mode (SI) ));
typedef __char_ptr32 *__char_ptr_char_ptr32 __attribute__ ((mode (SI)));
void to_ptr32 (int x)
{
__char_ptr32 ptr = (__char_ptr32) x;
}
void to_int (__char_ptr32 ptr)
{
int x = (int) ptr;
}
__char_ptr_char_ptr32
to_ptr32_ptr32 (char **ptr64)
{
int argc;
__char_ptr_char_ptr32 short_argv;
for (argc=0; ptr64[argc]; argc++);
short_argv = (__char_ptr_char_ptr32) malloc32
(sizeof (__char_ptr32) * (argc + 1));
for (argc=0; ptr64[argc]; argc++)
short_argv[argc] = (__char_ptr32) strdup32 (ptr64[argc]);
short_argv[argc] = (__char_ptr32) 0;
return short_argv;
}