aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/call-strs.c
blob: 03a80647d7eaa130c8d4a6c2e19e38954b7c3db9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "../lib/unbuffer_output.c"

char buf[100];
char bigbuf[1000];
char * s;

char * str_func1(char *s1)
{
  printf("first string arg is: %s\n", s1);
  strcpy(bigbuf, s1);
  return bigbuf;
}

char * str_func(
char * s1, 
char * s2,
char * s3,
char * s4,
char * s5,
char * s6,
char * s7)
{
  printf("first string arg is: %s\n", s1);
  printf("second string arg is: %s\n", s2);
  printf("third string arg is: %s\n", s3);
  printf("fourth string arg is: %s\n", s4);
  printf("fifth string arg is: %s\n", s5);
  printf("sixth string arg is: %s\n", s6);
  printf("seventh string arg is: %s\n", s7);
  strcpy(bigbuf, s1);
  strcat(bigbuf, s2);
  strcat(bigbuf, s3);
  strcat(bigbuf, s4);
  strcat(bigbuf, s5);
  strcat(bigbuf, s6);
  strcat(bigbuf, s7);
  return bigbuf;
}

char *
link_malloc ()
{
  return (char*) malloc (1);
}

int main()
{
  gdb_unbuffer_output ();

  s = &buf[0];
  strcpy(buf, "test string");
  str_func("abcd", "efgh", "ijkl", "mnop", "qrst", "uvwx", "yz12");
  str_func1("abcd");
  return 0;
}