Changes between Version 5 and Version 6 of Pointers
- Timestamp:
- 11/11/13 09:50:22 (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Pointers
v5 v6 244 244 Original program outline: 245 245 {{{ 246 | <t1> void f(int *<t1> x); 247 | | scope s1 248 | | g<s1>(...) 249 | <t2> void g(int *<t2> y); 250 | | scope s2 251 | | f<s2>(...) 252 | main() { f<s0>(...); } 246 $scope s0; 247 int n; 248 <t1> void f(int *<t1> x) { 249 $scope s1; 250 int w; 251 g<s1>(&w); 252 } 253 <t2> void g(int *<t2> y) { 254 $scope s2; 255 int w; 256 f<s2>(&w); 257 } 258 void main() { 259 f<s0>(&n); 260 } 253 261 }}} 254 262 … … 256 264 257 265 {{{ 258 | f0(s0) 259 | | scope s1.0 260 | | g<s1.0> 261 | g0(s1.0) 262 | | scope s2.0 263 | | f<s2.0> 264 | f2(s2.0) 265 | | scope s1.1 266 | | g<s1.1> 267 | g1 268 etc. 269 }}} 270 266 $scope s0; 267 int n; 268 void f$0(int *<s0> x) { 269 $scope s1$0; 270 int w; 271 g$0(&w); 272 } 273 void g$0(int *<s1$0> y) { 274 $scope s2$0; 275 int w; 276 f$1(&w); 277 } 278 void f$1(int *<s2$0> x) { 279 $scope s1$1; 280 int w; 281 g$1(&w); 282 } 283 void g$1(int *<s1$1> y) { 284 $scope s2$1; 285 int w; 286 f$2(&w); 287 } 288 etc. forever 289 }}} 290
