File: main.cpp

package info (click to toggle)
cbmc 5.10-5
  • links: PTS
  • area: main
  • in suites: buster
  • size: 73,416 kB
  • sloc: cpp: 264,330; ansic: 38,268; java: 19,025; python: 4,539; yacc: 4,275; makefile: 2,547; lex: 2,394; sh: 932; perl: 525; xml: 289; pascal: 169
file content (120 lines) | stat: -rw-r--r-- 1,961 bytes parent folder | download | duplicates (3)
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
#include <cassert>
#include "tuple.h"

#ifndef NO_STRING
#include <string>
#endif

int main(int argc, char** argv)
{
  tuple<int,int> p;
  int x=0, y=0;

  p = tuple<int,int>(1,2);

#ifndef NO_IO
  std::cout << p << std::endl;
#endif

  p = tuple<int,int>(3,4);

#ifndef NO_IO
  std::cout << p << std::endl;

  std::cout << x << "," << y << std::endl;
#endif
  assert(x==0);
  assert(y==0);

  tie(x,y) = p;

#ifndef NO_IO
  std::cout << x << "," << y << std::endl;
#endif
  assert(x==3);
  assert(y==4);

  p = tuple<int,int>(5,6);

#ifndef NO_IO
  std::cout << p << std::endl;

  std::cout << x << "," << y << std::endl;
#endif
  assert(x==3);
  assert(y==4);

  x = 42; y = 69;

#ifndef NO_IO
  std::cout << p << std::endl;

  std::cout << x << "," << y << std::endl;
#endif
  assert(x==42);
  assert(y==69);

  tuple<bool,bool> q;
  q = tuple<bool,bool>(true,false);

#ifndef NO_IO
  std::cout << q << std::endl;
#endif

  bool foo, bar;

  tie(foo,bar) = q;

#ifndef NO_IO
  std::cout << foo << " " << bar << std::endl;
#endif
  assert(foo);
  assert(!bar);

  tuple<int> one;
  one = 69;

#ifndef NO_IO
  std::cout << one << std::endl;
#endif

  tie(x) = one;

#ifndef NO_IO
  std::cout << x << std::endl;
#endif
  assert(x==69);

#ifndef NO_STRING
  tuple<int,std::string,int> three;
  three =   tuple<int,std::string,int>(42," does not equal ",69);

#ifndef NO_IO
  std::cout << three << std::endl;
#endif

  tuple<std::string,int,std::string,int> four;
  four =   tuple<std::string,int,std::string,int>("and ", 42," is less than ",69);

#ifndef NO_IO
  std::cout << four << std::endl;
#endif

  tuple<std::string,std::string> msg;
  msg = tuple<std::string,std::string>("hello","world");

#ifndef NO_IO
  std::cout << msg << std::endl;
#endif

  std::string xx,yy;
  tie(xx,yy) = tuple<std::string,std::string>("hello","world");

#ifndef NO_IO
  std::cout << xx << " " << yy << std::endl;
#endif
  assert(xx=="hello");
  assert(yy=="world");
#endif

}