~ubuntu-branches/ubuntu/lucid/aspectc++/lucid

« back to all changes in this revision

Viewing changes to Puma/gen-release/step2/src/CSemantic.cc

  • Committer: Bazaar Package Importer
  • Author(s): Reinhard Tartler
  • Date: 2006-06-03 13:14:38 UTC
  • Revision ID: james.westby@ubuntu.com-20060603131438-76kcwaewxnwlvkad
Tags: 0.99+1.0pre3-2
* Fix some more cleanup() functions, which can go frenzy on at least amd64
  (applied upstread)
* Fix description, thanks to Simon Waters (Closes: #362738)
* reweave Puma to make the patch enabling the build with gcc-4.1 actually
  active (Closes: #357901, this time for real)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef __ac_FIRST__tmp_AOP_LIN_AOP_Puma_gen45release_step1__
2
 
#define __ac_FIRST__tmp_AOP_LIN_AOP_Puma_gen45release_step1__
3
 
#define __ac_FIRST_FILE__tmp_AOP_LIN_AOP_Puma_gen45release_step1_src_CSemantic_cc__
4
 
#endif // __ac_FIRST__tmp_AOP_LIN_AOP_Puma_gen45release_step1__
 
1
 
 
2
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
3
#ifndef __ac_FIRST__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1__
 
4
#define __ac_FIRST__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1__
 
5
#define __ac_FIRST_FILE__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_src_CSemantic_cc__
 
6
#endif // __ac_FIRST__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1__
 
7
 
 
8
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
9
 
 
10
#line 11 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5
11
 
6
12
#ifndef __ac_h_
7
13
#define __ac_h_
33
39
inline void * operator new (__SIZE_TYPE__, AC::AnyResultBuffer *p) { return p; }
34
40
inline void operator delete (void *, AC::AnyResultBuffer *) { } // for VC++
35
41
#endif // __ac_h_
 
42
 
 
43
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
44
 
 
45
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
46
 
 
47
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48
 
 
49
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
36
50
// This file is part of PUMA.
37
51
// Copyright (C) 1999-2003  The PUMA developer team.
38
52
//                                                                
56
70
 
57
71
#include <string.h>
58
72
 
 
73
 
 
74
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
75
 
 
76
#line 77 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77
 
 
78
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
59
79
// This file is part of PUMA.
60
80
// Copyright (C) 1999-2003  The PUMA developer team.
61
81
//                                                                
89
109
 
90
110
namespace Puma {
91
111
  
 
112
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
113
 
92
114
  
 
115
#line 40 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
116
 
93
117
}
94
118
 
 
119
 
 
120
#line 121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
95
121
class WinIfExists;
96
122
class WinImportHandler;
97
123
class WinMacros;
109
135
class PragmaOnceUnitState;
110
136
class PragmaOnce;
111
137
class CExprResolve;
 
138
 
 
139
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
112
140
class CCExprResolve {
 
141
#line 142 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
142
 
113
143
public:
114
144
  static CCExprResolve *aspectof () {
115
145
    static CCExprResolve __instance;
119
149
    return aspectof ();
120
150
  }
121
151
private:
 
152
 
 
153
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
154
 
 
155
#line 156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
122
156
  friend class ::WinIfExists;
123
157
  friend class ::WinImportHandler;
124
158
  friend class ::WinMacros;
137
171
  friend class ::PragmaOnce;
138
172
  friend class ::CExprResolve;
139
173
 
140
 
  
141
 
  
 
174
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
175
 
 
176
  
 
177
#line 44 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
178
 
 
179
  
 
180
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
181
 
142
182
};
 
183
#line 184 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
184
 
143
185
namespace AC {
144
186
145
187
 
 
188
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
189
 
146
190
 
147
191
#endif /* __CCExprResolveH_ah__ */
 
192
 
 
193
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
148
194
// This file is part of PUMA.
149
195
// Copyright (C) 1999-2003  The PUMA developer team.
150
196
//                                                                
178
224
 
179
225
namespace Puma {
180
226
  
 
227
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
228
 
181
229
  
 
230
#line 40 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
231
 
182
232
}
183
233
 
 
234
 
 
235
#line 236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
184
236
class WinIfExists;
185
237
class WinImportHandler;
186
238
class WinMacros;
198
250
class PragmaOnceUnitState;
199
251
class PragmaOnce;
200
252
class CCExprResolve;
 
253
 
 
254
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
201
255
class CExprResolve {
 
256
#line 257 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
257
 
202
258
public:
203
259
  static CExprResolve *aspectof () {
204
260
    static CExprResolve __instance;
208
264
    return aspectof ();
209
265
  }
210
266
private:
 
267
 
 
268
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
269
 
 
270
#line 271 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
211
271
  friend class ::WinIfExists;
212
272
  friend class ::WinImportHandler;
213
273
  friend class ::WinMacros;
226
286
  friend class ::PragmaOnce;
227
287
  friend class ::CCExprResolve;
228
288
 
229
 
  
230
 
  
 
289
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
290
 
 
291
  
 
292
#line 44 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
293
 
 
294
  
 
295
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
296
 
231
297
};
 
298
#line 299 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
299
 
232
300
namespace AC {
233
301
234
302
 
 
303
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
304
 
235
305
 
236
306
#endif /* __CExprResolveH_ah__ */
237
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_GnuCTree_h__
238
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_GnuCTree_h__
 
307
 
 
308
#line 5 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
309
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_GnuCTree_h__
 
310
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_GnuCTree_h__
 
311
 
 
312
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
239
313
// This file is part of PUMA.
240
314
// Copyright (C) 1999-2003  The PUMA developer team.
241
315
//                                                                
269
343
} // namespace Puma
270
344
 
271
345
 
 
346
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
347
 
 
348
#line 349 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
349
 
272
350
#ifndef __ac_fwd_ExtACTree__
273
351
#define __ac_fwd_ExtACTree__
274
352
class ExtACTree;
280
358
}
281
359
#endif
282
360
 
283
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
284
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
361
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
362
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
285
363
#endif
 
364
 
 
365
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
366
 
 
367
#line 368 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
368
 
 
369
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
286
370
// This file is part of PUMA.
287
371
// Copyright (C) 1999-2003  The PUMA developer team.
288
372
//                                                                
314
398
 
315
399
using namespace Puma;
316
400
 
 
401
 
 
402
#line 403 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
317
403
class WinIfExists;
318
404
class WinImportHandler;
319
405
class WinMacros;
331
417
class PragmaOnce;
332
418
class CCExprResolve;
333
419
class CExprResolve;
 
420
 
 
421
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
334
422
class ExtACTree {
 
423
#line 424 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
424
 
335
425
public:
336
426
  static ExtACTree *aspectof () {
337
427
    static ExtACTree __instance;
341
431
    return aspectof ();
342
432
  }
343
433
private:
 
434
 
 
435
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
436
 
 
437
#line 438 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
344
438
  friend class ::WinIfExists;
345
439
  friend class ::WinImportHandler;
346
440
  friend class ::WinMacros;
359
453
  friend class ::CCExprResolve;
360
454
  friend class ::CExprResolve;
361
455
 
 
456
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
457
 
362
458
  
 
459
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
460
 
363
461
  
364
462
  // implemented in a separate .cc file, because Builder.h is needed!
365
463
  void delete_tree (CTree *t);
366
464
  
367
465
  
368
 
  
369
 
  
370
 
public: template<class JoinPoint> void __a0_after (JoinPoint *tjp) {
 
466
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
467
 
 
468
  
 
469
  
 
470
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
471
 
 
472
public: template<class JoinPoint> void __a0_after 
 
473
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
474
 
 
475
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
476
(JoinPoint *tjp)
 
477
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
478
 {
 
479
#line 480 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
480
 
371
481
  typedef typename JoinPoint::That __JP_That;
372
482
  typedef typename JoinPoint::Target __JP_Target;
373
483
  typedef typename JoinPoint::Result __JP_Result;
374
484
 
 
485
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
486
 
375
487
    tjp->that ()->_intro_members = 0;
376
488
  }
 
489
#line 490 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
490
 
377
491
private:
378
492
 
 
493
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
494
 
379
495
  
380
 
public: template<class JoinPoint> void __a1_before (JoinPoint *tjp) {
 
496
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
497
 
 
498
public: template<class JoinPoint> void __a1_before 
 
499
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
500
 
 
501
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
502
(JoinPoint *tjp)
 
503
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
504
 {
 
505
#line 506 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
506
 
381
507
  typedef typename JoinPoint::That __JP_That;
382
508
  typedef typename JoinPoint::Target __JP_Target;
383
509
  typedef typename JoinPoint::Result __JP_Result;
384
510
 
 
511
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
512
 
385
513
    delete_tree (tjp->that ()->_intro_members);
386
514
  }
 
515
#line 516 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
516
 
387
517
private:
388
518
 
 
519
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
520
 
389
521
};
 
522
#line 523 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
523
 
390
524
namespace AC {
391
525
  template <class JoinPoint>
392
526
  inline void invoke_ExtACTree_ExtACTree_a0_after (JoinPoint *tjp) {
398
532
  }
399
533
400
534
 
 
535
#line 51 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
536
 
401
537
 
402
538
#endif // __ExtACTree_ah__
403
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
404
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
539
 
 
540
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
541
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
542
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
543
 
 
544
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
405
545
// This file is part of PUMA.
406
546
// Copyright (C) 1999-2003  The PUMA developer team.
407
547
//                                                                
555
695
 
556
696
} // namespace Puma
557
697
 
 
698
 
 
699
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorSeverity.h"
558
700
// This file is part of PUMA.
559
701
// Copyright (C) 1999-2003  The PUMA developer team.
560
702
//                                                                
581
723
namespace Puma {
582
724
 
583
725
 
 
726
 
 
727
#line 728 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
584
728
} // closed Puma
585
729
class WinIfExists;
586
730
class WinImportHandler;
601
745
class CCExprResolve;
602
746
class CExprResolve;
603
747
namespace Puma {
604
 
class ErrorSeverity {  friend class ::WinIfExists;
 
748
 
 
749
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorSeverity.h"
 
750
class ErrorSeverity {
 
751
#line 752 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
752
  friend class ::WinIfExists;
605
753
  friend class ::WinImportHandler;
606
754
  friend class ::WinMacros;
607
755
  friend class ::CMatchSyntax;
620
768
  friend class ::CCExprResolve;
621
769
  friend class ::CExprResolve;
622
770
 
 
771
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorSeverity.h"
 
772
 
623
773
  unsigned short _severity;
624
774
  const char *_text;
625
775
 
657
807
} // namespace Puma
658
808
 
659
809
#endif /* __error_severity_h__ */
 
810
 
 
811
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemObject.h"
660
812
// This file is part of PUMA.
661
813
// Copyright (C) 1999-2003  The PUMA developer team.
662
814
//                                                                
683
835
 
684
836
class CObjectInfo;
685
837
 
 
838
 
 
839
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
686
840
} // closed Puma
687
841
class WinIfExists;
688
842
class WinImportHandler;
703
857
class CCExprResolve;
704
858
class CExprResolve;
705
859
namespace Puma {
706
 
class CSemObject {  friend class ::WinIfExists;
 
860
 
 
861
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemObject.h"
 
862
class CSemObject {
 
863
#line 864 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
864
  friend class ::WinIfExists;
707
865
  friend class ::WinImportHandler;
708
866
  friend class ::WinMacros;
709
867
  friend class ::CMatchSyntax;
722
880
  friend class ::CCExprResolve;
723
881
  friend class ::CExprResolve;
724
882
 
 
883
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemObject.h"
 
884
 
725
885
  CObjectInfo *_obj;
726
886
 
727
887
public:
734
894
} // namespace Puma
735
895
 
736
896
#endif /* __CSemObject_h__ */
 
897
 
 
898
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemScope.h"
737
899
// This file is part of PUMA.
738
900
// Copyright (C) 1999-2003  The PUMA developer team.
739
901
//                                                                
760
922
 
761
923
class CStructure;
762
924
 
 
925
 
 
926
#line 927 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
763
927
} // closed Puma
764
928
class WinIfExists;
765
929
class WinImportHandler;
780
944
class CCExprResolve;
781
945
class CExprResolve;
782
946
namespace Puma {
783
 
class CSemScope {  friend class ::WinIfExists;
 
947
 
 
948
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemScope.h"
 
949
class CSemScope {
 
950
#line 951 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
951
  friend class ::WinIfExists;
784
952
  friend class ::WinImportHandler;
785
953
  friend class ::WinMacros;
786
954
  friend class ::CMatchSyntax;
799
967
  friend class ::CCExprResolve;
800
968
  friend class ::CExprResolve;
801
969
 
 
970
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemScope.h"
 
971
 
802
972
  CStructure *_scope;
803
973
 
804
974
public:
811
981
} // namespace Puma
812
982
 
813
983
#endif /* __CSemScope_h__ */
 
984
 
 
985
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemValue.h"
814
986
// This file is part of PUMA.
815
987
// Copyright (C) 1999-2003  The PUMA developer team.
816
988
//                                                                
832
1004
#ifndef __CSemValue_h__
833
1005
#define __CSemValue_h__
834
1006
 
 
1007
 
 
1008
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CExprValue.h"
835
1009
// This file is part of PUMA.
836
1010
// Copyright (C) 1999-2003  The PUMA developer team.
837
1011
//                                                                
864
1038
class CStrLiteral;
865
1039
class CWStrLiteral;
866
1040
 
 
1041
 
 
1042
#line 1043 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
867
1043
} // closed Puma
868
1044
class WinIfExists;
869
1045
class WinImportHandler;
884
1060
class CCExprResolve;
885
1061
class CExprResolve;
886
1062
namespace Puma {
887
 
class CExprValue {  friend class ::WinIfExists;
 
1063
 
 
1064
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CExprValue.h"
 
1065
class CExprValue {
 
1066
#line 1067 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
1067
  friend class ::WinIfExists;
888
1068
  friend class ::WinImportHandler;
889
1069
  friend class ::WinMacros;
890
1070
  friend class ::CMatchSyntax;
903
1083
  friend class ::CCExprResolve;
904
1084
  friend class ::CExprResolve;
905
1085
 
 
1086
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CExprValue.h"
 
1087
 
906
1088
  CTypeInfo *_type;
907
1089
  
908
1090
protected:
927
1109
} // namespace Puma
928
1110
 
929
1111
#endif /* __CExprValue_h__ */
 
1112
 
 
1113
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeInfo.h"
930
1114
// This file is part of PUMA.
931
1115
// Copyright (C) 1999-2003  The PUMA developer team.
932
1116
//                                                                
948
1132
#ifndef __CTypeInfo_h__
949
1133
#define __CTypeInfo_h__
950
1134
 
 
1135
 
 
1136
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Printable.h"
951
1137
// This file is part of PUMA.
952
1138
// Copyright (C) 1999-2003  The PUMA developer team.
953
1139
//                                                                
975
1161
namespace Puma {
976
1162
 
977
1163
 
 
1164
 
 
1165
#line 1166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
978
1166
} // closed Puma
979
1167
class WinIfExists;
980
1168
class WinImportHandler;
995
1183
class CCExprResolve;
996
1184
class CExprResolve;
997
1185
namespace Puma {
998
 
class Printable {  friend class ::WinIfExists;
 
1186
 
 
1187
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Printable.h"
 
1188
class Printable {
 
1189
#line 1190 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
1190
  friend class ::WinIfExists;
999
1191
  friend class ::WinImportHandler;
1000
1192
  friend class ::WinMacros;
1001
1193
  friend class ::CMatchSyntax;
1014
1206
  friend class ::CCExprResolve;
1015
1207
  friend class ::CExprResolve;
1016
1208
 
 
1209
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Printable.h"
 
1210
 
1017
1211
public:
1018
1212
  virtual ~Printable () {}
1019
1213
  virtual void print (ostream &os) const = 0;
1029
1223
} // namespace Puma
1030
1224
 
1031
1225
#endif /* __printable_h__ */
 
1226
 
 
1227
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeInfo.h"
1032
1228
namespace Puma {
1033
1229
 
1034
1230
 
1058
1254
class CScopeInfo;
1059
1255
//class ostream;
1060
1256
 
 
1257
 
 
1258
#line 1259 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1061
1259
} // closed Puma
1062
1260
class WinIfExists;
1063
1261
class WinImportHandler;
1078
1276
class CCExprResolve;
1079
1277
class CExprResolve;
1080
1278
namespace Puma {
1081
 
class CTypeInfo : public Printable {  friend class ::WinIfExists;
 
1279
 
 
1280
#line 53 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeInfo.h"
 
1281
class CTypeInfo : public Printable {
 
1282
#line 1283 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
1283
  friend class ::WinIfExists;
1082
1284
  friend class ::WinImportHandler;
1083
1285
  friend class ::WinMacros;
1084
1286
  friend class ::CMatchSyntax;
1097
1299
  friend class ::CCExprResolve;
1098
1300
  friend class ::CExprResolve;
1099
1301
 
 
1302
#line 53 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeInfo.h"
 
1303
 
1100
1304
  // needed for type printing
1101
1305
  enum PrintState {
1102
1306
    PRINT_STD = 0,  // standard
1307
1511
} // namespace Puma
1308
1512
 
1309
1513
 
 
1514
 
 
1515
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypePrimitive.h"
1310
1516
// This file is part of PUMA.
1311
1517
// Copyright (C) 1999-2003  The PUMA developer team.
1312
1518
//                                                                
1336
1542
namespace Puma {
1337
1543
 
1338
1544
 
 
1545
 
 
1546
#line 1547 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1339
1547
} // closed Puma
1340
1548
class WinIfExists;
1341
1549
class WinImportHandler;
1356
1564
class CCExprResolve;
1357
1565
class CExprResolve;
1358
1566
namespace Puma {
1359
 
class CTypePrimitive : public CTypeInfo {  friend class ::WinIfExists;
 
1567
 
 
1568
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypePrimitive.h"
 
1569
class CTypePrimitive : public CTypeInfo {
 
1570
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
1571
  friend class ::WinIfExists;
1360
1572
  friend class ::WinImportHandler;
1361
1573
  friend class ::WinMacros;
1362
1574
  friend class ::CMatchSyntax;
1375
1587
  friend class ::CCExprResolve;
1376
1588
  friend class ::CExprResolve;
1377
1589
 
 
1590
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypePrimitive.h"
 
1591
 
1378
1592
  const char *_Text;
1379
1593
 
1380
1594
public:
1421
1635
} // namespace Puma
1422
1636
 
1423
1637
#endif /* __CTypePrimitive_h__ */
 
1638
 
 
1639
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeQualified.h"
1424
1640
// This file is part of PUMA.
1425
1641
// Copyright (C) 1999-2003  The PUMA developer team.
1426
1642
//                                                                
1450
1666
namespace Puma {
1451
1667
 
1452
1668
 
 
1669
 
 
1670
#line 1671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1453
1671
} // closed Puma
1454
1672
class WinIfExists;
1455
1673
class WinImportHandler;
1470
1688
class CCExprResolve;
1471
1689
class CExprResolve;
1472
1690
namespace Puma {
1473
 
class CTypeQualified : public CTypeInfo {  friend class ::WinIfExists;
 
1691
 
 
1692
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeQualified.h"
 
1693
class CTypeQualified : public CTypeInfo {
 
1694
#line 1695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
1695
  friend class ::WinIfExists;
1474
1696
  friend class ::WinImportHandler;
1475
1697
  friend class ::WinMacros;
1476
1698
  friend class ::CMatchSyntax;
1489
1711
  friend class ::CCExprResolve;
1490
1712
  friend class ::CExprResolve;
1491
1713
 
 
1714
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeQualified.h"
 
1715
 
1492
1716
  bool _Const;
1493
1717
  bool _Volatile;
1494
1718
  bool _Restrict;
1543
1767
} // namespace Puma
1544
1768
 
1545
1769
#endif /* __CTypeQualified_h__ */
 
1770
 
 
1771
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeAddress.h"
1546
1772
// This file is part of PUMA.
1547
1773
// Copyright (C) 1999-2003  The PUMA developer team.
1548
1774
//                                                                
1572
1798
namespace Puma {
1573
1799
 
1574
1800
 
 
1801
 
 
1802
#line 1803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1575
1803
} // closed Puma
1576
1804
class WinIfExists;
1577
1805
class WinImportHandler;
1592
1820
class CCExprResolve;
1593
1821
class CExprResolve;
1594
1822
namespace Puma {
1595
 
class CTypeAddress : public CTypeInfo {  friend class ::WinIfExists;
 
1823
 
 
1824
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeAddress.h"
 
1825
class CTypeAddress : public CTypeInfo {
 
1826
#line 1827 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
1827
  friend class ::WinIfExists;
1596
1828
  friend class ::WinImportHandler;
1597
1829
  friend class ::WinMacros;
1598
1830
  friend class ::CMatchSyntax;
1611
1843
  friend class ::CCExprResolve;
1612
1844
  friend class ::CExprResolve;
1613
1845
 
 
1846
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeAddress.h"
 
1847
 
1614
1848
public:
1615
1849
  CTypeAddress (CTypeInfo *);
1616
1850
  ~CTypeAddress ();
1626
1860
} // namespace Puma
1627
1861
 
1628
1862
#endif /* __CTypeAddress_h__ */
 
1863
 
 
1864
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeBitField.h"
1629
1865
// This file is part of PUMA.
1630
1866
// Copyright (C) 1999-2003  The PUMA developer team.
1631
1867
//                                                                
1655
1891
namespace Puma {
1656
1892
 
1657
1893
 
 
1894
 
 
1895
#line 1896 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1658
1896
} // closed Puma
1659
1897
class WinIfExists;
1660
1898
class WinImportHandler;
1675
1913
class CCExprResolve;
1676
1914
class CExprResolve;
1677
1915
namespace Puma {
1678
 
class CTypeBitField : public CTypeInfo {  friend class ::WinIfExists;
 
1916
 
 
1917
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeBitField.h"
 
1918
class CTypeBitField : public CTypeInfo {
 
1919
#line 1920 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
1920
  friend class ::WinIfExists;
1679
1921
  friend class ::WinImportHandler;
1680
1922
  friend class ::WinMacros;
1681
1923
  friend class ::CMatchSyntax;
1694
1936
  friend class ::CCExprResolve;
1695
1937
  friend class ::CExprResolve;
1696
1938
 
 
1939
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeBitField.h"
 
1940
 
1697
1941
  long int _Size;
1698
1942
 
1699
1943
public:
1720
1964
} // namespace Puma
1721
1965
 
1722
1966
#endif /* __CTypeBitField_h__ */
 
1967
 
 
1968
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeArray.h"
1723
1969
// This file is part of PUMA.
1724
1970
// Copyright (C) 1999-2003  The PUMA developer team.
1725
1971
//                                                                
1749
1995
namespace Puma {
1750
1996
 
1751
1997
 
 
1998
 
 
1999
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1752
2000
} // closed Puma
1753
2001
class WinIfExists;
1754
2002
class WinImportHandler;
1769
2017
class CCExprResolve;
1770
2018
class CExprResolve;
1771
2019
namespace Puma {
1772
 
class CTypeArray : public CTypeInfo {  friend class ::WinIfExists;
 
2020
 
 
2021
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeArray.h"
 
2022
class CTypeArray : public CTypeInfo {
 
2023
#line 2024 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
2024
  friend class ::WinIfExists;
1773
2025
  friend class ::WinImportHandler;
1774
2026
  friend class ::WinMacros;
1775
2027
  friend class ::CMatchSyntax;
1788
2040
  friend class ::CCExprResolve;
1789
2041
  friend class ::CExprResolve;
1790
2042
 
 
2043
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeArray.h"
 
2044
 
1791
2045
  long int _Size;
1792
2046
  bool _isFixed;
1793
2047
  CTypeQualified *_Quals;
1851
2105
} // namespace Puma
1852
2106
 
1853
2107
#endif /* __CTypeArray_h__ */
 
2108
 
 
2109
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeVarArray.h"
1854
2110
// This file is part of PUMA.
1855
2111
// Copyright (C) 1999-2003  The PUMA developer team.
1856
2112
//                                                                
1880
2136
namespace Puma {
1881
2137
 
1882
2138
 
 
2139
 
 
2140
#line 2141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1883
2141
} // closed Puma
1884
2142
class WinIfExists;
1885
2143
class WinImportHandler;
1900
2158
class CCExprResolve;
1901
2159
class CExprResolve;
1902
2160
namespace Puma {
1903
 
class CTypeVarArray : public CTypeArray {  friend class ::WinIfExists;
 
2161
 
 
2162
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeVarArray.h"
 
2163
class CTypeVarArray : public CTypeArray {
 
2164
#line 2165 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
2165
  friend class ::WinIfExists;
1904
2166
  friend class ::WinImportHandler;
1905
2167
  friend class ::WinMacros;
1906
2168
  friend class ::CMatchSyntax;
1919
2181
  friend class ::CCExprResolve;
1920
2182
  friend class ::CExprResolve;
1921
2183
 
 
2184
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeVarArray.h"
 
2185
 
1922
2186
public:
1923
2187
  CTypeVarArray (CTypeInfo *, CTypeQualified * = 0);
1924
2188
  ~CTypeVarArray ();
1934
2198
} // namespace Puma
1935
2199
 
1936
2200
#endif /* __CTypeVarArray_h__ */
 
2201
 
 
2202
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypePointer.h"
1937
2203
// This file is part of PUMA.
1938
2204
// Copyright (C) 1999-2003  The PUMA developer team.
1939
2205
//                                                                
1963
2229
namespace Puma {
1964
2230
 
1965
2231
 
 
2232
 
 
2233
#line 2234 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
1966
2234
} // closed Puma
1967
2235
class WinIfExists;
1968
2236
class WinImportHandler;
1983
2251
class CCExprResolve;
1984
2252
class CExprResolve;
1985
2253
namespace Puma {
1986
 
class CTypePointer : public CTypeInfo {  friend class ::WinIfExists;
 
2254
 
 
2255
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypePointer.h"
 
2256
class CTypePointer : public CTypeInfo {
 
2257
#line 2258 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
2258
  friend class ::WinIfExists;
1987
2259
  friend class ::WinImportHandler;
1988
2260
  friend class ::WinMacros;
1989
2261
  friend class ::CMatchSyntax;
2002
2274
  friend class ::CCExprResolve;
2003
2275
  friend class ::CExprResolve;
2004
2276
 
 
2277
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypePointer.h"
 
2278
 
2005
2279
protected:
2006
2280
  CTypePointer (CTypeInfo *, CTypeInfo::TypeId);
2007
2281
 
2023
2297
} // namespace Puma
2024
2298
 
2025
2299
#endif /* __CTypePointer_h__ */
 
2300
 
 
2301
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeMemberPointer.h"
2026
2302
// This file is part of PUMA.
2027
2303
// Copyright (C) 1999-2003  The PUMA developer team.
2028
2304
//                                                                
2056
2332
class CRecord;
2057
2333
class CTemplateParamInfo;
2058
2334
 
 
2335
 
 
2336
#line 2337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2059
2337
} // closed Puma
2060
2338
class WinIfExists;
2061
2339
class WinImportHandler;
2076
2354
class CCExprResolve;
2077
2355
class CExprResolve;
2078
2356
namespace Puma {
2079
 
class CTypeMemberPointer : public CTypePointer {  friend class ::WinIfExists;
 
2357
 
 
2358
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeMemberPointer.h"
 
2359
class CTypeMemberPointer : public CTypePointer {
 
2360
#line 2361 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
2361
  friend class ::WinIfExists;
2080
2362
  friend class ::WinImportHandler;
2081
2363
  friend class ::WinMacros;
2082
2364
  friend class ::CMatchSyntax;
2095
2377
  friend class ::CCExprResolve;
2096
2378
  friend class ::CExprResolve;
2097
2379
 
 
2380
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeMemberPointer.h"
 
2381
 
2098
2382
  CObjectInfo *_Class;
2099
2383
 
2100
2384
public:
2116
2400
} // namespace Puma
2117
2401
 
2118
2402
#endif /* __CTypeMemberPointer_h__ */
 
2403
 
 
2404
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeFunction.h"
2119
2405
// This file is part of PUMA.
2120
2406
// Copyright (C) 1999-2003  The PUMA developer team.
2121
2407
//                                                                
2142
2428
#warning !!! INCLUDE FILE "CTypeInfo.h" INSTEAD !!!  
2143
2429
#endif
2144
2430
 
 
2431
 
 
2432
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeList.h"
2145
2433
// This file is part of PUMA.
2146
2434
// Copyright (C) 1999-2003  The PUMA developer team.
2147
2435
//                                                                
2163
2451
#ifndef __CTypeList_h__
2164
2452
#define __CTypeList_h__
2165
2453
 
 
2454
 
 
2455
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Array.h"
2166
2456
// This file is part of PUMA.
2167
2457
// Copyright (C) 1999-2003  The PUMA developer team.
2168
2458
//                                                                
2188
2478
 
2189
2479
namespace Puma {
2190
2480
 
 
2481
 
 
2482
#line 2483 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2191
2483
} // closed Puma
2192
2484
class WinIfExists;
2193
2485
class WinImportHandler;
2208
2500
class CCExprResolve;
2209
2501
class CExprResolve;
2210
2502
namespace Puma {
 
2503
 
 
2504
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Array.h"
2211
2505
template <class Item>
2212
 
class Array {  friend class ::WinIfExists;
 
2506
class Array {
 
2507
#line 2508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
2508
  friend class ::WinIfExists;
2213
2509
  friend class ::WinImportHandler;
2214
2510
  friend class ::WinMacros;
2215
2511
  friend class ::CMatchSyntax;
2228
2524
  friend class ::CCExprResolve;
2229
2525
  friend class ::CExprResolve;
2230
2526
 
 
2527
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Array.h"
 
2528
 
2231
2529
   protected:
2232
2530
      static const long default_init_size = 5;
2233
2531
      static const long default_increment = 5;
2454
2752
#endif /* __puma */
2455
2753
 
2456
2754
#endif /* __array_h__ */
 
2755
 
 
2756
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeList.h"
2457
2757
namespace Puma {
2458
2758
 
2459
2759
 
2460
2760
class CTypeInfo;
2461
2761
class CT_ArgDeclList;
2462
2762
 
 
2763
 
 
2764
#line 2765 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2463
2765
} // closed Puma
2464
2766
class WinIfExists;
2465
2767
class WinImportHandler;
2480
2782
class CCExprResolve;
2481
2783
class CExprResolve;
2482
2784
namespace Puma {
2483
 
class CTypeList {  friend class ::WinIfExists;
 
2785
 
 
2786
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeList.h"
 
2787
class CTypeList {
 
2788
#line 2789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
2789
  friend class ::WinIfExists;
2484
2790
  friend class ::WinImportHandler;
2485
2791
  friend class ::WinMacros;
2486
2792
  friend class ::CMatchSyntax;
2499
2805
  friend class ::CCExprResolve;
2500
2806
  friend class ::CExprResolve;
2501
2807
 
 
2808
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeList.h"
 
2809
 
2502
2810
  Array<CTypeInfo*> _List;
2503
2811
  CT_ArgDeclList *_ArgumentList;
2504
2812
 
2544
2852
} // namespace Puma
2545
2853
 
2546
2854
#endif /* __CTypeList_h__ */
 
2855
 
 
2856
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeFunction.h"
2547
2857
namespace Puma {
2548
2858
 
2549
2859
 
2550
2860
class CFunctionInfo;
2551
2861
class CRecord;
2552
2862
 
 
2863
 
 
2864
#line 2865 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2553
2865
} // closed Puma
2554
2866
class WinIfExists;
2555
2867
class WinImportHandler;
2570
2882
class CCExprResolve;
2571
2883
class CExprResolve;
2572
2884
namespace Puma {
2573
 
class CTypeFunction : public CTypeQualified {  friend class ::WinIfExists;
 
2885
 
 
2886
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeFunction.h"
 
2887
class CTypeFunction : public CTypeQualified {
 
2888
#line 2889 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
2889
  friend class ::WinIfExists;
2574
2890
  friend class ::WinImportHandler;
2575
2891
  friend class ::WinMacros;
2576
2892
  friend class ::CMatchSyntax;
2589
2905
  friend class ::CCExprResolve;
2590
2906
  friend class ::CExprResolve;
2591
2907
 
 
2908
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeFunction.h"
 
2909
 
2592
2910
  CTypeList *_ArgTypes;
2593
2911
  CFunctionInfo *_Function;
2594
2912
  bool _hasPrototype;
2634
2952
} // namespace Puma
2635
2953
 
2636
2954
#endif /* __CTypeFunction_h__ */
 
2955
 
 
2956
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeEnum.h"
2637
2957
// This file is part of PUMA.
2638
2958
// Copyright (C) 1999-2003  The PUMA developer team.
2639
2959
//                                                                
2665
2985
 
2666
2986
class CEnumInfo;
2667
2987
 
 
2988
 
 
2989
#line 2990 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2668
2990
} // closed Puma
2669
2991
class WinIfExists;
2670
2992
class WinImportHandler;
2685
3007
class CCExprResolve;
2686
3008
class CExprResolve;
2687
3009
namespace Puma {
2688
 
class CTypeEnum : public CTypeInfo {  friend class ::WinIfExists;
 
3010
 
 
3011
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeEnum.h"
 
3012
class CTypeEnum : public CTypeInfo {
 
3013
#line 3014 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
3014
  friend class ::WinIfExists;
2689
3015
  friend class ::WinImportHandler;
2690
3016
  friend class ::WinMacros;
2691
3017
  friend class ::CMatchSyntax;
2704
3030
  friend class ::CCExprResolve;
2705
3031
  friend class ::CExprResolve;
2706
3032
 
 
3033
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeEnum.h"
 
3034
 
2707
3035
  CEnumInfo *_Enum;
2708
3036
 
2709
3037
public:
2728
3056
} // namespace Puma
2729
3057
 
2730
3058
#endif /* __CTypeEnum_h__ */
 
3059
 
 
3060
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeRecord.h"
2731
3061
// This file is part of PUMA.
2732
3062
// Copyright (C) 1999-2003  The PUMA developer team.
2733
3063
//                                                                
2759
3089
 
2760
3090
class CRecord;
2761
3091
 
 
3092
 
 
3093
#line 3094 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2762
3094
} // closed Puma
2763
3095
class WinIfExists;
2764
3096
class WinImportHandler;
2779
3111
class CCExprResolve;
2780
3112
class CExprResolve;
2781
3113
namespace Puma {
2782
 
class CTypeRecord : public CTypeInfo {  friend class ::WinIfExists;
 
3114
 
 
3115
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeRecord.h"
 
3116
class CTypeRecord : public CTypeInfo {
 
3117
#line 3118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
3118
  friend class ::WinIfExists;
2783
3119
  friend class ::WinImportHandler;
2784
3120
  friend class ::WinMacros;
2785
3121
  friend class ::CMatchSyntax;
2798
3134
  friend class ::CCExprResolve;
2799
3135
  friend class ::CExprResolve;
2800
3136
 
 
3137
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeRecord.h"
 
3138
 
2801
3139
  bool _hasConstMember;
2802
3140
 
2803
3141
  long int _Size;
2850
3188
} // namespace Puma
2851
3189
 
2852
3190
#endif /* __CTypeRecord_h__ */
 
3191
 
 
3192
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeClass.h"
2853
3193
// This file is part of PUMA.
2854
3194
// Copyright (C) 1999-2003  The PUMA developer team.
2855
3195
//                                                                
2882
3222
class CClassInfo;
2883
3223
class CRecord;
2884
3224
 
 
3225
 
 
3226
#line 3227 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2885
3227
} // closed Puma
2886
3228
class WinIfExists;
2887
3229
class WinImportHandler;
2902
3244
class CCExprResolve;
2903
3245
class CExprResolve;
2904
3246
namespace Puma {
2905
 
class CTypeClass : public CTypeRecord {  friend class ::WinIfExists;
 
3247
 
 
3248
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeClass.h"
 
3249
class CTypeClass : public CTypeRecord {
 
3250
#line 3251 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
3251
  friend class ::WinIfExists;
2906
3252
  friend class ::WinImportHandler;
2907
3253
  friend class ::WinMacros;
2908
3254
  friend class ::CMatchSyntax;
2921
3267
  friend class ::CCExprResolve;
2922
3268
  friend class ::CExprResolve;
2923
3269
 
 
3270
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeClass.h"
 
3271
 
2924
3272
public:
2925
3273
  CTypeClass (CRecord *);
2926
3274
  ~CTypeClass ();
2938
3286
} // namespace Puma
2939
3287
 
2940
3288
#endif /* __CTypeClass_h__ */
 
3289
 
 
3290
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeUnion.h"
2941
3291
// This file is part of PUMA.
2942
3292
// Copyright (C) 1999-2003  The PUMA developer team.
2943
3293
//                                                                
2970
3320
class CUnionInfo;
2971
3321
class CRecord;
2972
3322
 
 
3323
 
 
3324
#line 3325 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
2973
3325
} // closed Puma
2974
3326
class WinIfExists;
2975
3327
class WinImportHandler;
2990
3342
class CCExprResolve;
2991
3343
class CExprResolve;
2992
3344
namespace Puma {
2993
 
class CTypeUnion : public CTypeRecord {  friend class ::WinIfExists;
 
3345
 
 
3346
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeUnion.h"
 
3347
class CTypeUnion : public CTypeRecord {
 
3348
#line 3349 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
3349
  friend class ::WinIfExists;
2994
3350
  friend class ::WinImportHandler;
2995
3351
  friend class ::WinMacros;
2996
3352
  friend class ::CMatchSyntax;
3009
3365
  friend class ::CCExprResolve;
3010
3366
  friend class ::CExprResolve;
3011
3367
 
 
3368
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeUnion.h"
 
3369
 
3012
3370
public:
3013
3371
  CTypeUnion (CRecord *);
3014
3372
  ~CTypeUnion ();
3026
3384
} // namespace Puma
3027
3385
 
3028
3386
#endif /* __CTypeUnion_h__ */
 
3387
 
 
3388
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeTemplateParam.h"
3029
3389
// This file is part of PUMA.
3030
3390
// Copyright (C) 1999-2003  The PUMA developer team.
3031
3391
//                                                                
3057
3417
 
3058
3418
class CTemplateParamInfo;
3059
3419
 
 
3420
 
 
3421
#line 3422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
3060
3422
} // closed Puma
3061
3423
class WinIfExists;
3062
3424
class WinImportHandler;
3077
3439
class CCExprResolve;
3078
3440
class CExprResolve;
3079
3441
namespace Puma {
3080
 
class CTypeTemplateParam : public CTypeInfo {  friend class ::WinIfExists;
 
3442
 
 
3443
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeTemplateParam.h"
 
3444
class CTypeTemplateParam : public CTypeInfo {
 
3445
#line 3446 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
3446
  friend class ::WinIfExists;
3081
3447
  friend class ::WinImportHandler;
3082
3448
  friend class ::WinMacros;
3083
3449
  friend class ::CMatchSyntax;
3096
3462
  friend class ::CCExprResolve;
3097
3463
  friend class ::CExprResolve;
3098
3464
 
 
3465
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeTemplateParam.h"
 
3466
 
3099
3467
  CTemplateParamInfo *_TemplateParam;
3100
3468
 
3101
3469
public:
3124
3492
} // namespace Puma
3125
3493
 
3126
3494
#endif /* __CTypeTemplateParam_h__ */
 
3495
 
 
3496
#line 280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypeInfo.h"
3127
3497
namespace Puma {
3128
3498
 
3129
3499
inline CTypeInfo::CTypeInfo (CTypeInfo *info, CTypeInfo::TypeId id) :
3336
3706
} // namespace Puma
3337
3707
 
3338
3708
#endif /* __CTypeInfo_h__ */
 
3709
 
 
3710
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemValue.h"
3339
3711
namespace Puma {
3340
3712
 
3341
3713
 
 
3714
 
 
3715
#line 3716 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
3342
3716
} // closed Puma
3343
3717
class WinIfExists;
3344
3718
class WinImportHandler;
3359
3733
class CCExprResolve;
3360
3734
class CExprResolve;
3361
3735
namespace Puma {
3362
 
class CSemValue {  friend class ::WinIfExists;
 
3736
 
 
3737
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemValue.h"
 
3738
class CSemValue {
 
3739
#line 3740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
3740
  friend class ::WinIfExists;
3363
3741
  friend class ::WinImportHandler;
3364
3742
  friend class ::WinMacros;
3365
3743
  friend class ::CMatchSyntax;
3378
3756
  friend class ::CCExprResolve;
3379
3757
  friend class ::CExprResolve;
3380
3758
 
 
3759
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemValue.h"
 
3760
 
3381
3761
  bool value_ref;
3382
3762
  bool type_ref;
3383
3763
 
3423
3803
} // namespace Puma
3424
3804
 
3425
3805
#endif /* __CSemValue_h__ */
 
3806
 
 
3807
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStrLiteral.h"
3426
3808
// This file is part of PUMA.
3427
3809
// Copyright (C) 1999-2003  The PUMA developer team.
3428
3810
//                                                                
3444
3826
#ifndef __CStrLiteral_h__
3445
3827
#define __CStrLiteral_h__
3446
3828
 
 
3829
 
 
3830
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStrLiteral.h"
3447
3831
namespace Puma {
3448
3832
 
3449
3833
 
 
3834
 
 
3835
#line 3836 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
3450
3836
} // closed Puma
3451
3837
class WinIfExists;
3452
3838
class WinImportHandler;
3467
3853
class CCExprResolve;
3468
3854
class CExprResolve;
3469
3855
namespace Puma {
3470
 
class CStrLiteral : public CExprValue {  friend class ::WinIfExists;
 
3856
 
 
3857
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStrLiteral.h"
 
3858
class CStrLiteral : public CExprValue {
 
3859
#line 3860 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
3860
  friend class ::WinIfExists;
3471
3861
  friend class ::WinImportHandler;
3472
3862
  friend class ::WinMacros;
3473
3863
  friend class ::CMatchSyntax;
3486
3876
  friend class ::CCExprResolve;
3487
3877
  friend class ::CExprResolve;
3488
3878
 
 
3879
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStrLiteral.h"
 
3880
 
3489
3881
  const char *_string;
3490
3882
  unsigned long _len;
3491
3883
  
3505
3897
} // namespace Puma
3506
3898
 
3507
3899
#endif /* __CStrLiteral_h__ */
 
3900
 
 
3901
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTokens.h"
3508
3902
// This file is part of PUMA.
3509
3903
// Copyright (C) 1999-2003  The PUMA developer team.
3510
3904
//                                                                
3730
4124
} // namespace Puma
3731
4125
 
3732
4126
#endif /* __C_TOKENS__ */
 
4127
 
 
4128
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Token.h"
3733
4129
// This file is part of PUMA.
3734
4130
// Copyright (C) 1999-2003  The PUMA developer team.
3735
4131
//                                                                
3756
4152
// lexical unit of the scanned text.
3757
4153
 
3758
4154
#include <stdlib.h>
 
4155
 
 
4156
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/LanguageID.h"
3759
4157
// This file is part of PUMA.
3760
4158
// Copyright (C) 1999-2003  The PUMA developer team.
3761
4159
//                                                                
3782
4180
namespace Puma {
3783
4181
 
3784
4182
 
 
4183
 
 
4184
#line 4185 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
3785
4185
} // closed Puma
3786
4186
class WinIfExists;
3787
4187
class WinImportHandler;
3802
4202
class CCExprResolve;
3803
4203
class CExprResolve;
3804
4204
namespace Puma {
3805
 
class LanguageID {  friend class ::WinIfExists;
 
4205
 
 
4206
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/LanguageID.h"
 
4207
class LanguageID {
 
4208
#line 4209 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
4209
  friend class ::WinIfExists;
3806
4210
  friend class ::WinImportHandler;
3807
4211
  friend class ::WinMacros;
3808
4212
  friend class ::CMatchSyntax;
3821
4225
  friend class ::CCExprResolve;
3822
4226
  friend class ::CExprResolve;
3823
4227
 
 
4228
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/LanguageID.h"
 
4229
 
3824
4230
  const char *_id;
3825
4231
 
3826
4232
public:
3835
4241
} // namespace Puma
3836
4242
 
3837
4243
#endif /* __language_id_h__ */
 
4244
 
 
4245
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Location.h"
3838
4246
// This file is part of PUMA.
3839
4247
// Copyright (C) 1999-2003  The PUMA developer team.
3840
4248
//                                                                
3856
4264
#ifndef __location_h__
3857
4265
#define __location_h__
3858
4266
 
 
4267
 
 
4268
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SmartPtr.h"
3859
4269
// This file is part of PUMA.
3860
4270
// Copyright (C) 1999-2003  The PUMA developer team.
3861
4271
//                                                                
3877
4287
#ifndef __smart_ptr_h__
3878
4288
#define __smart_ptr_h__
3879
4289
 
 
4290
 
 
4291
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/RefCnt.h"
3880
4292
// This file is part of PUMA.
3881
4293
// Copyright (C) 1999-2003  The PUMA developer team.
3882
4294
//                                                                
3901
4313
namespace Puma {
3902
4314
 
3903
4315
 
 
4316
 
 
4317
#line 4318 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
3904
4318
} // closed Puma
3905
4319
class WinIfExists;
3906
4320
class WinImportHandler;
3921
4335
class CCExprResolve;
3922
4336
class CExprResolve;
3923
4337
namespace Puma {
3924
 
class RefCnt {  friend class ::WinIfExists;
 
4338
 
 
4339
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/RefCnt.h"
 
4340
class RefCnt {
 
4341
#line 4342 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
4342
  friend class ::WinIfExists;
3925
4343
  friend class ::WinImportHandler;
3926
4344
  friend class ::WinMacros;
3927
4345
  friend class ::CMatchSyntax;
3940
4358
  friend class ::CCExprResolve;
3941
4359
  friend class ::CExprResolve;
3942
4360
 
 
4361
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/RefCnt.h"
 
4362
 
3943
4363
  int _counter;
3944
4364
 
3945
4365
public:
3955
4375
} // namespace Puma
3956
4376
 
3957
4377
#endif /* __ref_cnt_h__ */
 
4378
 
 
4379
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SmartPtr.h"
3958
4380
namespace Puma {
3959
4381
 
3960
4382
 
 
4383
 
 
4384
#line 4385 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
3961
4385
} // closed Puma
3962
4386
class WinIfExists;
3963
4387
class WinImportHandler;
3978
4402
class CCExprResolve;
3979
4403
class CExprResolve;
3980
4404
namespace Puma {
3981
 
class SmartPtr {  friend class ::WinIfExists;
 
4405
 
 
4406
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SmartPtr.h"
 
4407
class SmartPtr {
 
4408
#line 4409 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
4409
  friend class ::WinIfExists;
3982
4410
  friend class ::WinImportHandler;
3983
4411
  friend class ::WinMacros;
3984
4412
  friend class ::CMatchSyntax;
3997
4425
  friend class ::CCExprResolve;
3998
4426
  friend class ::CExprResolve;
3999
4427
 
 
4428
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SmartPtr.h"
 
4429
 
4000
4430
  RefCnt *_data;
4001
4431
 
4002
4432
public:
4016
4446
} // namespace Puma
4017
4447
 
4018
4448
#endif /* __smart_ptr_h__ */
 
4449
 
 
4450
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/LocationInfo.h"
4019
4451
// This file is part of PUMA.
4020
4452
// Copyright (C) 1999-2003  The PUMA developer team.
4021
4453
//                                                                
4037
4469
#ifndef __location_info_h__
4038
4470
#define __location_info_h__
4039
4471
 
 
4472
 
 
4473
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Filename.h"
4040
4474
// This file is part of PUMA.
4041
4475
// Copyright (C) 1999-2003  The PUMA developer team.
4042
4476
//                                                                
4058
4492
#ifndef __filename_h__
4059
4493
#define __filename_h__
4060
4494
 
 
4495
 
 
4496
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FilenameInfo.h"
4061
4497
// This file is part of PUMA.
4062
4498
// Copyright (C) 1999-2003  The PUMA developer team.
4063
4499
//                                                                
4079
4515
#ifndef __filename_info_h__
4080
4516
#define __filename_info_h__
4081
4517
 
 
4518
 
 
4519
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/DString.h"
4082
4520
// This file is part of PUMA.
4083
4521
// Copyright (C) 1999-2003  The PUMA developer team.
4084
4522
//                                                                
4100
4538
#ifndef __DString_h__
4101
4539
#define __DString_h__
4102
4540
 
 
4541
 
 
4542
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashTable.h"
4103
4543
// This file is part of PUMA.
4104
4544
// Copyright (C) 1999-2003  The PUMA developer team.
4105
4545
//                                                                
4121
4561
#ifndef __StrHashTable_h__
4122
4562
#define __StrHashTable_h__
4123
4563
 
 
4564
 
 
4565
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashKey.h"
4124
4566
// This file is part of PUMA.
4125
4567
// Copyright (C) 1999-2003  The PUMA developer team.
4126
4568
//                                                                
4142
4584
#ifndef __StrHashKey_h__
4143
4585
#define __StrHashKey_h__
4144
4586
 
 
4587
 
 
4588
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrCol.h"
4145
4589
// This file is part of PUMA.
4146
4590
// Copyright (C) 1999-2003  The PUMA developer team.
4147
4591
//                                                                
4170
4614
 
4171
4615
class Unit;
4172
4616
 
 
4617
 
 
4618
#line 4619 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4173
4619
} // closed Puma
4174
4620
class WinIfExists;
4175
4621
class WinImportHandler;
4190
4636
class CCExprResolve;
4191
4637
class CExprResolve;
4192
4638
namespace Puma {
4193
 
class StrCol {  friend class ::WinIfExists;
 
4639
 
 
4640
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrCol.h"
 
4641
class StrCol {
 
4642
#line 4643 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
4643
  friend class ::WinIfExists;
4194
4644
  friend class ::WinImportHandler;
4195
4645
  friend class ::WinMacros;
4196
4646
  friend class ::CMatchSyntax;
4209
4659
  friend class ::CCExprResolve;
4210
4660
  friend class ::CExprResolve;
4211
4661
 
 
4662
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrCol.h"
 
4663
 
4212
4664
protected:
4213
4665
  StrCol () {}
4214
4666
        
4234
4686
} // namespace Puma
4235
4687
 
4236
4688
#endif /* __str_col__ */
 
4689
 
 
4690
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Chain.h"
4237
4691
// This file is part of PUMA.
4238
4692
// Copyright (C) 1999-2003  The PUMA developer team.
4239
4693
//                                                                
4267
4721
namespace Puma {
4268
4722
 
4269
4723
 
 
4724
 
 
4725
#line 4726 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4270
4726
} // closed Puma
4271
4727
class WinIfExists;
4272
4728
class WinImportHandler;
4287
4743
class CCExprResolve;
4288
4744
class CExprResolve;
4289
4745
namespace Puma {
4290
 
class Chain {  friend class ::WinIfExists;
 
4746
 
 
4747
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Chain.h"
 
4748
class Chain {
 
4749
#line 4750 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
4750
  friend class ::WinIfExists;
4291
4751
  friend class ::WinImportHandler;
4292
4752
  friend class ::WinMacros;
4293
4753
  friend class ::CMatchSyntax;
4306
4766
  friend class ::CCExprResolve;
4307
4767
  friend class ::CExprResolve;
4308
4768
 
 
4769
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Chain.h"
 
4770
 
4309
4771
  Chain *next;
4310
4772
 
4311
4773
public:
4367
4829
} // namespace Puma
4368
4830
 
4369
4831
#endif /* __Chain_h__ */
 
4832
 
 
4833
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashKey.h"
4370
4834
namespace Puma {
4371
4835
 
4372
4836
 
 
4837
 
 
4838
#line 4839 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4373
4839
} // closed Puma
4374
4840
class WinIfExists;
4375
4841
class WinImportHandler;
4390
4856
class CCExprResolve;
4391
4857
class CExprResolve;
4392
4858
namespace Puma {
4393
 
class StrHashKey : public Chain {  friend class ::WinIfExists;
 
4859
 
 
4860
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashKey.h"
 
4861
class StrHashKey : public Chain {
 
4862
#line 4863 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
4863
  friend class ::WinIfExists;
4394
4864
  friend class ::WinImportHandler;
4395
4865
  friend class ::WinMacros;
4396
4866
  friend class ::CMatchSyntax;
4409
4879
  friend class ::CCExprResolve;
4410
4880
  friend class ::CExprResolve;
4411
4881
 
 
4882
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashKey.h"
 
4883
 
4412
4884
  unsigned int m_Magic;
4413
4885
  unsigned int m_Len;
4414
4886
  const char  *m_Str;
4428
4900
} // namespace Puma
4429
4901
 
4430
4902
#endif /* __StrHashKey_h__ */
 
4903
 
 
4904
#line 23 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashTable.h"
4431
4905
#include <assert.h>
4432
4906
 
4433
4907
namespace Puma {
4434
4908
 
4435
4909
 
 
4910
 
 
4911
#line 4912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4436
4912
} // closed Puma
4437
4913
class WinIfExists;
4438
4914
class WinImportHandler;
4453
4929
class CCExprResolve;
4454
4930
class CExprResolve;
4455
4931
namespace Puma {
4456
 
class StrHashTable {  friend class ::WinIfExists;
 
4932
 
 
4933
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashTable.h"
 
4934
class StrHashTable {
 
4935
#line 4936 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
4936
  friend class ::WinIfExists;
4457
4937
  friend class ::WinImportHandler;
4458
4938
  friend class ::WinMacros;
4459
4939
  friend class ::CMatchSyntax;
4472
4952
  friend class ::CCExprResolve;
4473
4953
  friend class ::CExprResolve;
4474
4954
 
 
4955
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/StrHashTable.h"
 
4956
 
4475
4957
  StrHashKey *_emptyKey;
4476
4958
 
4477
4959
public:
4497
4979
} // namespace Puma
4498
4980
 
4499
4981
#endif /* __StrHashTable_h__ */
 
4982
 
 
4983
#line 23 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/DString.h"
4500
4984
#include <assert.h>
4501
4985
 
4502
4986
namespace Puma {
4504
4988
 
4505
4989
extern StrHashTable ___str_dict;
4506
4990
 
 
4991
 
 
4992
#line 4993 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4507
4993
} // closed Puma
4508
4994
class WinIfExists;
4509
4995
class WinImportHandler;
4524
5010
class CCExprResolve;
4525
5011
class CExprResolve;
4526
5012
namespace Puma {
4527
 
class DString {  friend class ::WinIfExists;
 
5013
 
 
5014
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/DString.h"
 
5015
class DString {
 
5016
#line 5017 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5017
  friend class ::WinIfExists;
4528
5018
  friend class ::WinImportHandler;
4529
5019
  friend class ::WinMacros;
4530
5020
  friend class ::CMatchSyntax;
4543
5033
  friend class ::CCExprResolve;
4544
5034
  friend class ::CExprResolve;
4545
5035
 
 
5036
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/DString.h"
 
5037
 
4546
5038
  StrHashKey *m_Key;
4547
5039
 
4548
5040
public:
4614
5106
} // namespace Puma
4615
5107
 
4616
5108
#endif /* __DString_h__ */
 
5109
 
 
5110
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FilenameInfo.h"
4617
5111
namespace Puma {
4618
5112
 
4619
5113
 
 
5114
 
 
5115
#line 5116 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4620
5116
} // closed Puma
4621
5117
class WinIfExists;
4622
5118
class WinImportHandler;
4637
5133
class CCExprResolve;
4638
5134
class CExprResolve;
4639
5135
namespace Puma {
4640
 
class FilenameInfo : public RefCnt {  friend class ::WinIfExists;
 
5136
 
 
5137
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FilenameInfo.h"
 
5138
class FilenameInfo : public RefCnt {
 
5139
#line 5140 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5140
  friend class ::WinIfExists;
4641
5141
  friend class ::WinImportHandler;
4642
5142
  friend class ::WinMacros;
4643
5143
  friend class ::CMatchSyntax;
4656
5156
  friend class ::CCExprResolve;
4657
5157
  friend class ::CExprResolve;
4658
5158
 
 
5159
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FilenameInfo.h"
 
5160
 
4659
5161
  DString _name;
4660
5162
  const char *_path;
4661
5163
  const char *_root;
4678
5180
} // namespace Puma
4679
5181
 
4680
5182
#endif /* __filename_info_h__ */
 
5183
 
 
5184
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Filename.h"
4681
5185
namespace Puma {
4682
5186
 
4683
5187
 
 
5188
 
 
5189
#line 5190 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4684
5190
} // closed Puma
4685
5191
class WinIfExists;
4686
5192
class WinImportHandler;
4701
5207
class CCExprResolve;
4702
5208
class CExprResolve;
4703
5209
namespace Puma {
4704
 
class Filename : public SmartPtr, public Printable {  friend class ::WinIfExists;
 
5210
 
 
5211
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Filename.h"
 
5212
class Filename : public SmartPtr, public Printable {
 
5213
#line 5214 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5214
  friend class ::WinIfExists;
4705
5215
  friend class ::WinImportHandler;
4706
5216
  friend class ::WinMacros;
4707
5217
  friend class ::CMatchSyntax;
4720
5230
  friend class ::CCExprResolve;
4721
5231
  friend class ::CExprResolve;
4722
5232
 
 
5233
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Filename.h"
 
5234
 
4723
5235
  FilenameInfo *info () const { return (FilenameInfo*)data (); }
4724
5236
 
4725
5237
public:
4740
5252
} // namespace Puma
4741
5253
 
4742
5254
#endif /* __filename_h__ */
 
5255
 
 
5256
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/LocationInfo.h"
4743
5257
namespace Puma {
4744
5258
 
4745
5259
 
 
5260
 
 
5261
#line 5262 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4746
5262
} // closed Puma
4747
5263
class WinIfExists;
4748
5264
class WinImportHandler;
4763
5279
class CCExprResolve;
4764
5280
class CExprResolve;
4765
5281
namespace Puma {
4766
 
class LocationInfo : public RefCnt {  friend class ::WinIfExists;
 
5282
 
 
5283
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/LocationInfo.h"
 
5284
class LocationInfo : public RefCnt {
 
5285
#line 5286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5286
  friend class ::WinIfExists;
4767
5287
  friend class ::WinImportHandler;
4768
5288
  friend class ::WinMacros;
4769
5289
  friend class ::CMatchSyntax;
4782
5302
  friend class ::CCExprResolve;
4783
5303
  friend class ::CExprResolve;
4784
5304
 
 
5305
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/LocationInfo.h"
 
5306
 
4785
5307
  Filename _filename;
4786
5308
  int _line;
4787
5309
 
4798
5320
} // namespace Puma
4799
5321
 
4800
5322
#endif /* __location_info_h__ */
 
5323
 
 
5324
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Location.h"
4801
5325
namespace Puma {
4802
5326
 
4803
5327
 
 
5328
 
 
5329
#line 5330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4804
5330
} // closed Puma
4805
5331
class WinIfExists;
4806
5332
class WinImportHandler;
4821
5347
class CCExprResolve;
4822
5348
class CExprResolve;
4823
5349
namespace Puma {
4824
 
class Location : public SmartPtr, public Printable {  friend class ::WinIfExists;
 
5350
 
 
5351
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Location.h"
 
5352
class Location : public SmartPtr, public Printable {
 
5353
#line 5354 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5354
  friend class ::WinIfExists;
4825
5355
  friend class ::WinImportHandler;
4826
5356
  friend class ::WinMacros;
4827
5357
  friend class ::CMatchSyntax;
4840
5370
  friend class ::CCExprResolve;
4841
5371
  friend class ::CExprResolve;
4842
5372
 
 
5373
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Location.h"
 
5374
 
4843
5375
  LocationInfo *info () const { return (LocationInfo*)data (); }
4844
5376
 
4845
5377
public:
4868
5400
} // namespace Puma
4869
5401
 
4870
5402
#endif /* __location_h__ */
 
5403
 
 
5404
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ListElement.h"
4871
5405
// This file is part of PUMA.
4872
5406
// Copyright (C) 1999-2003  The PUMA developer team.
4873
5407
//                                                                
4901
5435
 
4902
5436
class List;
4903
5437
 
 
5438
 
 
5439
#line 5440 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4904
5440
} // closed Puma
4905
5441
class WinIfExists;
4906
5442
class WinImportHandler;
4921
5457
class CCExprResolve;
4922
5458
class CExprResolve;
4923
5459
namespace Puma {
4924
 
class ListElement {  friend class ::WinIfExists;
 
5460
 
 
5461
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ListElement.h"
 
5462
class ListElement {
 
5463
#line 5464 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5464
  friend class ::WinIfExists;
4925
5465
  friend class ::WinImportHandler;
4926
5466
  friend class ::WinMacros;
4927
5467
  friend class ::CMatchSyntax;
4940
5480
  friend class ::CCExprResolve;
4941
5481
  friend class ::CExprResolve;
4942
5482
 
 
5483
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ListElement.h"
 
5484
 
4943
5485
  friend class List;
4944
5486
 
4945
5487
  List        *_belonging_to;
4958
5500
} // namespace Puma
4959
5501
 
4960
5502
#endif /* __list_element_h__ */
 
5503
 
 
5504
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Token.h"
4961
5505
#include <assert.h>
 
5506
 
 
5507
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Token.h"
4962
5508
namespace Puma {
4963
5509
 
4964
5510
 
 
5511
 
 
5512
#line 5513 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
4965
5513
} // closed Puma
4966
5514
class WinIfExists;
4967
5515
class WinImportHandler;
4982
5530
class CCExprResolve;
4983
5531
class CExprResolve;
4984
5532
namespace Puma {
4985
 
class Token : public ListElement {  friend class ::WinIfExists;
 
5533
 
 
5534
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Token.h"
 
5535
class Token : public ListElement {
 
5536
#line 5537 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5537
  friend class ::WinIfExists;
4986
5538
  friend class ::WinImportHandler;
4987
5539
  friend class ::WinMacros;
4988
5540
  friend class ::CMatchSyntax;
5001
5553
  friend class ::CCExprResolve;
5002
5554
  friend class ::CExprResolve;
5003
5555
 
 
5556
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Token.h"
 
5557
 
5004
5558
  int _type, _real_type;
5005
5559
 
5006
5560
  Location _location;
5122
5676
} // namespace Puma
5123
5677
 
5124
5678
#endif /* __Token_h__ */
 
5679
 
 
5680
#line 167 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
5125
5681
using namespace std;
5126
5682
 
5127
5683
namespace Puma {
5137
5693
/*                                                                           */
5138
5694
/*****************************************************************************/
5139
5695
 
 
5696
 
 
5697
#line 5698 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5140
5698
} // closed Puma
5141
5699
class WinIfExists;
5142
5700
class WinImportHandler;
5157
5715
class CCExprResolve;
5158
5716
class CExprResolve;
5159
5717
namespace Puma {
5160
 
class CTree {  friend class ::WinIfExists;
 
5718
 
 
5719
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5720
class CTree {
 
5721
#line 5722 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5722
  friend class ::WinIfExists;
5161
5723
  friend class ::WinImportHandler;
5162
5724
  friend class ::WinMacros;
5163
5725
  friend class ::CMatchSyntax;
5176
5738
  friend class ::CCExprResolve;
5177
5739
  friend class ::CExprResolve;
5178
5740
 
 
5741
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5742
 
5179
5743
public:
5180
5744
  /*DEBUG*/static int alloc;
5181
5745
  /*DEBUG*/static int release;
5211
5775
  virtual CT_Declarator *IsDeclarator () { return 0; }
5212
5776
   private:
5213
5777
  typedef CTree CCExprResolveCTree;
 
5778
 
 
5779
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
5214
5780
 public :
5215
5781
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
5216
5782
  typedef CTree CExprResolveCTree;
 
5783
 
 
5784
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
5217
5785
 public :
5218
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
5219
 
 
 
5786
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
5787
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5788
};
 
5789
 
 
5790
 
 
5791
#line 5792 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5220
5792
} // closed Puma
5221
5793
class WinIfExists;
5222
5794
class WinImportHandler;
5237
5809
class CCExprResolve;
5238
5810
class CExprResolve;
5239
5811
namespace Puma {
5240
 
class CT_Error : public CTree {  friend class ::WinIfExists;
 
5812
 
 
5813
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5814
class CT_Error : public CTree {
 
5815
#line 5816 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5816
  friend class ::WinIfExists;
5241
5817
  friend class ::WinImportHandler;
5242
5818
  friend class ::WinMacros;
5243
5819
  friend class ::CMatchSyntax;
5256
5832
  friend class ::CCExprResolve;
5257
5833
  friend class ::CExprResolve;
5258
5834
 
 
5835
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5836
 
5259
5837
public:
5260
5838
  static const char *NodeId ();
5261
5839
  const char *NodeName () const { return NodeId (); }
5262
5840
  int Sons () const { return 0; }
5263
5841
};
5264
5842
 
 
5843
 
 
5844
#line 5845 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5265
5845
} // closed Puma
5266
5846
class WinIfExists;
5267
5847
class WinImportHandler;
5282
5862
class CCExprResolve;
5283
5863
class CExprResolve;
5284
5864
namespace Puma {
5285
 
class CT_Token : public CTree {  friend class ::WinIfExists;
 
5865
 
 
5866
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5867
class CT_Token : public CTree {
 
5868
#line 5869 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5869
  friend class ::WinIfExists;
5286
5870
  friend class ::WinImportHandler;
5287
5871
  friend class ::WinMacros;
5288
5872
  friend class ::CMatchSyntax;
5301
5885
  friend class ::CCExprResolve;
5302
5886
  friend class ::CExprResolve;
5303
5887
 
 
5888
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5889
 
5304
5890
  Token *_token;
5305
5891
  unsigned long int _number;
5306
5892
  
5327
5913
/*                                                                           */
5328
5914
/*****************************************************************************/
5329
5915
 
 
5916
 
 
5917
#line 5918 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5330
5918
} // closed Puma
5331
5919
class WinIfExists;
5332
5920
class WinImportHandler;
5347
5935
class CCExprResolve;
5348
5936
class CExprResolve;
5349
5937
namespace Puma {
5350
 
class CT_List : public CTree {  friend class ::WinIfExists;
 
5938
 
 
5939
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5940
class CT_List : public CTree {
 
5941
#line 5942 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
5942
  friend class ::WinIfExists;
5351
5943
  friend class ::WinImportHandler;
5352
5944
  friend class ::WinMacros;
5353
5945
  friend class ::CMatchSyntax;
5366
5958
  friend class ::CCExprResolve;
5367
5959
  friend class ::CExprResolve;
5368
5960
 
 
5961
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
5962
 
5369
5963
  Array<CTree*> _sons;
5370
5964
  int _properties;
5371
5965
 
5404
5998
   { if (idx < Sons ()) _sons.remove (idx); }
5405
5999
};
5406
6000
 
 
6001
 
 
6002
#line 6003 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5407
6003
} // closed Puma
5408
6004
class WinIfExists;
5409
6005
class WinImportHandler;
5424
6020
class CCExprResolve;
5425
6021
class CExprResolve;
5426
6022
namespace Puma {
5427
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
6023
 
 
6024
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6025
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
6026
#line 6027 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6027
  friend class ::WinIfExists;
5428
6028
  friend class ::WinImportHandler;
5429
6029
  friend class ::WinMacros;
5430
6030
  friend class ::CMatchSyntax;
5443
6043
  friend class ::CCExprResolve;
5444
6044
  friend class ::CExprResolve;
5445
6045
 
 
6046
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6047
 
5446
6048
public:
5447
6049
  CT_ExprList () { AddProperties (SEPARATORS); }
5448
6050
  static const char *NodeId ();
5454
6056
  CSemObject *SemObject () const { return (CSemObject*)this; }
5455
6057
};
5456
6058
 
 
6059
 
 
6060
#line 6061 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5457
6061
} // closed Puma
5458
6062
class WinIfExists;
5459
6063
class WinImportHandler;
5474
6078
class CCExprResolve;
5475
6079
class CExprResolve;
5476
6080
namespace Puma {
5477
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
 
6081
 
 
6082
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6083
class CT_DeclaratorList : public CT_List {
 
6084
#line 6085 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6085
  friend class ::WinIfExists;
5478
6086
  friend class ::WinImportHandler;
5479
6087
  friend class ::WinMacros;
5480
6088
  friend class ::CMatchSyntax;
5493
6101
  friend class ::CCExprResolve;
5494
6102
  friend class ::CExprResolve;
5495
6103
 
 
6104
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6105
 
5496
6106
public:
5497
6107
  static const char *NodeId ();
5498
6108
  const char *NodeName () const { return NodeId (); }
5499
6109
};
5500
6110
 
 
6111
 
 
6112
#line 6113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5501
6113
} // closed Puma
5502
6114
class WinIfExists;
5503
6115
class WinImportHandler;
5518
6130
class CCExprResolve;
5519
6131
class CExprResolve;
5520
6132
namespace Puma {
5521
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
 
6133
 
 
6134
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6135
class CT_EnumeratorList : public CT_List {
 
6136
#line 6137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6137
  friend class ::WinIfExists;
5522
6138
  friend class ::WinImportHandler;
5523
6139
  friend class ::WinMacros;
5524
6140
  friend class ::CMatchSyntax;
5537
6153
  friend class ::CCExprResolve;
5538
6154
  friend class ::CExprResolve;
5539
6155
 
 
6156
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6157
 
5540
6158
public:
5541
6159
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
5542
6160
  static const char *NodeId ();
5543
6161
  const char *NodeName () const { return NodeId (); }
5544
6162
};
5545
6163
   
 
6164
 
 
6165
#line 6166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5546
6166
} // closed Puma
5547
6167
class WinIfExists;
5548
6168
class WinImportHandler;
5563
6183
class CCExprResolve;
5564
6184
class CExprResolve;
5565
6185
namespace Puma {
5566
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
 
6186
 
 
6187
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6188
class CT_DeclList : public CT_List {
 
6189
#line 6190 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6190
  friend class ::WinIfExists;
5567
6191
  friend class ::WinImportHandler;
5568
6192
  friend class ::WinMacros;
5569
6193
  friend class ::CMatchSyntax;
5582
6206
  friend class ::CCExprResolve;
5583
6207
  friend class ::CExprResolve;
5584
6208
 
 
6209
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6210
 
5585
6211
public:
5586
6212
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
5587
6213
  static const char *NodeId ();
5589
6215
  void Linkage (CT_LinkageSpec *l);
5590
6216
};
5591
6217
 
 
6218
 
 
6219
#line 6220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5592
6220
} // closed Puma
5593
6221
class WinIfExists;
5594
6222
class WinImportHandler;
5609
6237
class CCExprResolve;
5610
6238
class CExprResolve;
5611
6239
namespace Puma {
5612
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
 
6240
 
 
6241
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6242
class CT_DeclSpecSeq : public CT_List {
 
6243
#line 6244 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6244
  friend class ::WinIfExists;
5613
6245
  friend class ::WinImportHandler;
5614
6246
  friend class ::WinMacros;
5615
6247
  friend class ::CMatchSyntax;
5628
6260
  friend class ::CCExprResolve;
5629
6261
  friend class ::CExprResolve;
5630
6262
 
 
6263
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6264
 
5631
6265
public:
5632
6266
  static const char *NodeId ();
5633
6267
  const char *NodeName () const { return NodeId (); }
5634
6268
};
5635
6269
 
 
6270
 
 
6271
#line 6272 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5636
6272
} // closed Puma
5637
6273
class WinIfExists;
5638
6274
class WinImportHandler;
5653
6289
class CCExprResolve;
5654
6290
class CExprResolve;
5655
6291
namespace Puma {
5656
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
6292
 
 
6293
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6294
class CT_CmpdStmt : public CT_List, public CSemScope {
 
6295
#line 6296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6296
  friend class ::WinIfExists;
5657
6297
  friend class ::WinImportHandler;
5658
6298
  friend class ::WinMacros;
5659
6299
  friend class ::CMatchSyntax;
5672
6312
  friend class ::CCExprResolve;
5673
6313
  friend class ::CExprResolve;
5674
6314
 
 
6315
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6316
 
5675
6317
public:
5676
6318
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
5677
6319
  static const char *NodeId ();
5678
6320
  const char *NodeName () const { return NodeId (); }
5679
6321
};
5680
6322
 
 
6323
 
 
6324
#line 6325 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5681
6325
} // closed Puma
5682
6326
class WinIfExists;
5683
6327
class WinImportHandler;
5698
6342
class CCExprResolve;
5699
6343
class CExprResolve;
5700
6344
namespace Puma {
5701
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
 
6345
 
 
6346
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6347
class CT_HandlerSeq : public CT_List {
 
6348
#line 6349 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6349
  friend class ::WinIfExists;
5702
6350
  friend class ::WinImportHandler;
5703
6351
  friend class ::WinMacros;
5704
6352
  friend class ::CMatchSyntax;
5717
6365
  friend class ::CCExprResolve;
5718
6366
  friend class ::CExprResolve;
5719
6367
 
 
6368
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6369
 
5720
6370
public:
5721
6371
  static const char *NodeId ();
5722
6372
  const char *NodeName () const { return NodeId (); }
5723
6373
};
5724
6374
 
 
6375
 
 
6376
#line 6377 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5725
6377
} // closed Puma
5726
6378
class WinIfExists;
5727
6379
class WinImportHandler;
5742
6394
class CCExprResolve;
5743
6395
class CExprResolve;
5744
6396
namespace Puma {
5745
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
6397
 
 
6398
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6399
class CT_TemplateParamList : public CT_List, public CSemScope {
 
6400
#line 6401 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6401
  friend class ::WinIfExists;
5746
6402
  friend class ::WinImportHandler;
5747
6403
  friend class ::WinMacros;
5748
6404
  friend class ::CMatchSyntax;
5761
6417
  friend class ::CCExprResolve;
5762
6418
  friend class ::CExprResolve;
5763
6419
 
 
6420
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6421
 
5764
6422
public:
5765
6423
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
5766
6424
  static const char *NodeId ();
5767
6425
  const char *NodeName () const { return NodeId (); }
5768
6426
};
5769
6427
 
 
6428
 
 
6429
#line 6430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5770
6430
} // closed Puma
5771
6431
class WinIfExists;
5772
6432
class WinImportHandler;
5787
6447
class CCExprResolve;
5788
6448
class CExprResolve;
5789
6449
namespace Puma {
5790
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
 
6450
 
 
6451
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6452
class CT_TemplateArgList : public CT_List {
 
6453
#line 6454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6454
  friend class ::WinIfExists;
5791
6455
  friend class ::WinImportHandler;
5792
6456
  friend class ::WinMacros;
5793
6457
  friend class ::CMatchSyntax;
5806
6470
  friend class ::CCExprResolve;
5807
6471
  friend class ::CExprResolve;
5808
6472
 
 
6473
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6474
 
5809
6475
public:
5810
6476
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
5811
6477
  static const char *NodeId ();
5818
6484
/*                                                                           */
5819
6485
/*****************************************************************************/
5820
6486
 
 
6487
 
 
6488
#line 6489 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5821
6489
} // closed Puma
5822
6490
class WinIfExists;
5823
6491
class WinImportHandler;
5838
6506
class CCExprResolve;
5839
6507
class CExprResolve;
5840
6508
namespace Puma {
5841
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
 
6509
 
 
6510
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6511
class CT_Expression : public CTree, public CSemValue {
 
6512
#line 6513 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6513
  friend class ::WinIfExists;
5842
6514
  friend class ::WinImportHandler;
5843
6515
  friend class ::WinMacros;
5844
6516
  friend class ::CMatchSyntax;
5857
6529
  friend class ::CCExprResolve;
5858
6530
  friend class ::CExprResolve;
5859
6531
 
 
6532
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6533
 
5860
6534
protected:
5861
6535
  CT_Expression () {}
5862
6536
 
5868
6542
  CSemValue *SemValue () const { return (CSemValue*)this; }
5869
6543
   private:
5870
6544
  typedef CT_Expression CCExprResolveExpr;
 
6545
 
 
6546
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
5871
6547
 public :
5872
6548
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
5873
6549
  typedef CT_Expression CExprResolveExpr;
 
6550
 
 
6551
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
5874
6552
 public :
5875
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
5876
 
 
 
6553
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
6554
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6555
};
 
6556
 
 
6557
 
 
6558
#line 6559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5877
6559
} // closed Puma
5878
6560
class WinIfExists;
5879
6561
class WinImportHandler;
5894
6576
class CCExprResolve;
5895
6577
class CExprResolve;
5896
6578
namespace Puma {
5897
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
6579
 
 
6580
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6581
class CT_String : public CT_List, public CSemValue {
 
6582
#line 6583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6583
  friend class ::WinIfExists;
5898
6584
  friend class ::WinImportHandler;
5899
6585
  friend class ::WinMacros;
5900
6586
  friend class ::CMatchSyntax;
5913
6599
  friend class ::CCExprResolve;
5914
6600
  friend class ::CExprResolve;
5915
6601
 
 
6602
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6603
 
5916
6604
public:
5917
6605
  CT_String (int size) : CT_List (size, 1) {}
5918
6606
  static const char *NodeId ();
5923
6611
  CSemValue *SemValue () const { return (CSemValue*)this; }
5924
6612
   private:
5925
6613
  typedef CT_String CCExprResolveExpr;
 
6614
 
 
6615
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
5926
6616
 public :
5927
6617
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
5928
6618
  typedef CT_String CExprResolveExpr;
 
6619
 
 
6620
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
5929
6621
 public :
5930
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
5931
 
 
 
6622
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
6623
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6624
};
 
6625
 
 
6626
 
 
6627
#line 6628 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5932
6628
} // closed Puma
5933
6629
class WinIfExists;
5934
6630
class WinImportHandler;
5949
6645
class CCExprResolve;
5950
6646
class CExprResolve;
5951
6647
namespace Puma {
5952
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
 
6648
 
 
6649
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6650
class CT_WideString : public CT_String {
 
6651
#line 6652 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6652
  friend class ::WinIfExists;
5953
6653
  friend class ::WinImportHandler;
5954
6654
  friend class ::WinMacros;
5955
6655
  friend class ::CMatchSyntax;
5968
6668
  friend class ::CCExprResolve;
5969
6669
  friend class ::CExprResolve;
5970
6670
 
 
6671
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6672
 
5971
6673
public:
5972
6674
  CT_WideString (int size) : CT_String (size) {}
5973
6675
  static const char *NodeId ();
5974
6676
  const char *NodeName () const { return NodeId (); }
5975
6677
   private:
5976
6678
  typedef CT_WideString CCExprResolveExpr;
 
6679
 
 
6680
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
5977
6681
 public :
5978
6682
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
5979
6683
  typedef CT_WideString CExprResolveExpr;
 
6684
 
 
6685
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
5980
6686
 public :
5981
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
5982
 
 
 
6687
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
6688
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6689
};
 
6690
 
 
6691
 
 
6692
#line 6693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
5983
6693
} // closed Puma
5984
6694
class WinIfExists;
5985
6695
class WinImportHandler;
6000
6710
class CCExprResolve;
6001
6711
class CExprResolve;
6002
6712
namespace Puma {
6003
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
 
6713
 
 
6714
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6715
class CT_Integer : public CT_Expression {
 
6716
#line 6717 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6717
  friend class ::WinIfExists;
6004
6718
  friend class ::WinImportHandler;
6005
6719
  friend class ::WinMacros;
6006
6720
  friend class ::CMatchSyntax;
6019
6733
  friend class ::CCExprResolve;
6020
6734
  friend class ::CExprResolve;
6021
6735
 
 
6736
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6737
 
6022
6738
  CTree *_value;  // CT_Token
6023
6739
 
6024
6740
public:
6031
6747
   { if (old_son == _value) _value = new_son; }
6032
6748
   private:
6033
6749
  typedef CT_Integer CCExprResolveExpr;
 
6750
 
 
6751
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6034
6752
 public :
6035
6753
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6036
6754
  typedef CT_Integer CExprResolveExpr;
 
6755
 
 
6756
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6037
6757
 public :
6038
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6039
 
 
 
6758
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
6759
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6760
};
 
6761
 
 
6762
 
 
6763
#line 6764 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6040
6764
} // closed Puma
6041
6765
class WinIfExists;
6042
6766
class WinImportHandler;
6057
6781
class CCExprResolve;
6058
6782
class CExprResolve;
6059
6783
namespace Puma {
6060
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
 
6784
 
 
6785
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6786
class CT_Character : public CT_Expression {
 
6787
#line 6788 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6788
  friend class ::WinIfExists;
6061
6789
  friend class ::WinImportHandler;
6062
6790
  friend class ::WinMacros;
6063
6791
  friend class ::CMatchSyntax;
6076
6804
  friend class ::CCExprResolve;
6077
6805
  friend class ::CExprResolve;
6078
6806
 
 
6807
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6808
 
6079
6809
  CTree *_value;  // CT_Token
6080
6810
 
6081
6811
public:
6088
6818
   { if (old_son == _value) _value = new_son; }
6089
6819
   private:
6090
6820
  typedef CT_Character CCExprResolveExpr;
 
6821
 
 
6822
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6091
6823
 public :
6092
6824
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6093
6825
  typedef CT_Character CExprResolveExpr;
 
6826
 
 
6827
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6094
6828
 public :
6095
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6096
 
 
 
6829
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
6830
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6831
};
 
6832
 
 
6833
 
 
6834
#line 6835 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6097
6835
} // closed Puma
6098
6836
class WinIfExists;
6099
6837
class WinImportHandler;
6114
6852
class CCExprResolve;
6115
6853
class CExprResolve;
6116
6854
namespace Puma {
6117
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
 
6855
 
 
6856
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6857
class CT_WideCharacter : public CT_Character {
 
6858
#line 6859 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6859
  friend class ::WinIfExists;
6118
6860
  friend class ::WinImportHandler;
6119
6861
  friend class ::WinMacros;
6120
6862
  friend class ::CMatchSyntax;
6133
6875
  friend class ::CCExprResolve;
6134
6876
  friend class ::CExprResolve;
6135
6877
 
 
6878
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6879
 
6136
6880
  CTree *_value;  // CT_Token
6137
6881
 
6138
6882
public:
6143
6887
   { if (old_son == _value) _value = new_son; }
6144
6888
   private:
6145
6889
  typedef CT_WideCharacter CCExprResolveExpr;
 
6890
 
 
6891
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6146
6892
 public :
6147
6893
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6148
6894
  typedef CT_WideCharacter CExprResolveExpr;
 
6895
 
 
6896
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6149
6897
 public :
6150
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6151
 
 
 
6898
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
6899
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6900
};
 
6901
 
 
6902
 
 
6903
#line 6904 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6152
6904
} // closed Puma
6153
6905
class WinIfExists;
6154
6906
class WinImportHandler;
6169
6921
class CCExprResolve;
6170
6922
class CExprResolve;
6171
6923
namespace Puma {
6172
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
 
6924
 
 
6925
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6926
class CT_Float : public CT_Expression {
 
6927
#line 6928 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6928
  friend class ::WinIfExists;
6173
6929
  friend class ::WinImportHandler;
6174
6930
  friend class ::WinMacros;
6175
6931
  friend class ::CMatchSyntax;
6188
6944
  friend class ::CCExprResolve;
6189
6945
  friend class ::CExprResolve;
6190
6946
 
 
6947
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6948
 
6191
6949
  CTree *_value;  // CT_Token
6192
6950
 
6193
6951
public:
6200
6958
   { if (old_son == _value) _value = new_son; }
6201
6959
   private:
6202
6960
  typedef CT_Float CCExprResolveExpr;
 
6961
 
 
6962
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6203
6963
 public :
6204
6964
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6205
6965
  typedef CT_Float CExprResolveExpr;
 
6966
 
 
6967
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6206
6968
 public :
6207
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6208
 
 
 
6969
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
6970
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6971
};
 
6972
 
 
6973
 
 
6974
#line 6975 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6209
6975
} // closed Puma
6210
6976
class WinIfExists;
6211
6977
class WinImportHandler;
6226
6992
class CCExprResolve;
6227
6993
class CExprResolve;
6228
6994
namespace Puma {
6229
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
 
6995
 
 
6996
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
6997
class CT_Bool : public CT_Expression {
 
6998
#line 6999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
6999
  friend class ::WinIfExists;
6230
7000
  friend class ::WinImportHandler;
6231
7001
  friend class ::WinMacros;
6232
7002
  friend class ::CMatchSyntax;
6245
7015
  friend class ::CCExprResolve;
6246
7016
  friend class ::CExprResolve;
6247
7017
 
 
7018
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7019
 
6248
7020
  CTree *_value;  // CT_Token
6249
7021
 
6250
7022
public:
6257
7029
   { if (old_son == _value) _value = new_son; }
6258
7030
   private:
6259
7031
  typedef CT_Bool CCExprResolveExpr;
 
7032
 
 
7033
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6260
7034
 public :
6261
7035
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6262
7036
  typedef CT_Bool CExprResolveExpr;
 
7037
 
 
7038
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6263
7039
 public :
6264
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6265
 
 
 
7040
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7041
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7042
};
 
7043
 
 
7044
 
 
7045
#line 7046 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6266
7046
} // closed Puma
6267
7047
class WinIfExists;
6268
7048
class WinImportHandler;
6283
7063
class CCExprResolve;
6284
7064
class CExprResolve;
6285
7065
namespace Puma {
6286
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
 
7066
 
 
7067
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7068
class CT_BracedExpr : public CT_Expression {
 
7069
#line 7070 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7070
  friend class ::WinIfExists;
6287
7071
  friend class ::WinImportHandler;
6288
7072
  friend class ::WinMacros;
6289
7073
  friend class ::CMatchSyntax;
6302
7086
  friend class ::CCExprResolve;
6303
7087
  friend class ::CExprResolve;
6304
7088
 
 
7089
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7090
 
6305
7091
  CTree *sons[3]; // open, expr, close
6306
7092
 
6307
7093
public:
6321
7107
  }
6322
7108
   private:
6323
7109
  typedef CT_BracedExpr CCExprResolveExpr;
 
7110
 
 
7111
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6324
7112
 public :
6325
7113
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6326
7114
  typedef CT_BracedExpr CExprResolveExpr;
 
7115
 
 
7116
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6327
7117
 public :
6328
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6329
 
 
 
7118
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7119
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7120
};
 
7121
 
 
7122
 
 
7123
#line 7124 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6330
7124
} // closed Puma
6331
7125
class WinIfExists;
6332
7126
class WinImportHandler;
6347
7141
class CCExprResolve;
6348
7142
class CExprResolve;
6349
7143
namespace Puma {
 
7144
 
 
7145
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
6350
7146
class CT_SimpleName : public CT_List, public Printable, 
6351
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
7147
                      public CSemValue, public CSemObject {
 
7148
#line 7149 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7149
  friend class ::WinIfExists;
6352
7150
  friend class ::WinImportHandler;
6353
7151
  friend class ::WinMacros;
6354
7152
  friend class ::CMatchSyntax;
6367
7165
  friend class ::CCExprResolve;
6368
7166
  friend class ::CExprResolve;
6369
7167
 
 
7168
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7169
 
6370
7170
protected:
6371
7171
  CT_SimpleName (int size) : CT_List (size, 1) {}
6372
7172
  CT_SimpleName (int size, int properties) : 
6391
7191
  virtual CT_SimpleName *IsSimpleName () { return this; }  
6392
7192
   private:
6393
7193
  typedef CT_SimpleName CCExprResolveExpr;
 
7194
 
 
7195
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6394
7196
 public :
6395
7197
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6396
7198
  typedef CT_SimpleName CExprResolveExpr;
 
7199
 
 
7200
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6397
7201
 public :
6398
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6399
 
 
 
7202
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7203
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7204
};
 
7205
 
 
7206
 
 
7207
#line 7208 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6400
7208
} // closed Puma
6401
7209
class WinIfExists;
6402
7210
class WinImportHandler;
6417
7225
class CCExprResolve;
6418
7226
class CExprResolve;
6419
7227
namespace Puma {
6420
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
 
7228
 
 
7229
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7230
class CT_SpecialName : public CT_SimpleName {
 
7231
#line 7232 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7232
  friend class ::WinIfExists;
6421
7233
  friend class ::WinImportHandler;
6422
7234
  friend class ::WinMacros;
6423
7235
  friend class ::CMatchSyntax;
6436
7248
  friend class ::CCExprResolve;
6437
7249
  friend class ::CExprResolve;
6438
7250
 
 
7251
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7252
 
6439
7253
  char *_name;
6440
7254
  
6441
7255
protected:
6455
7269
  void  operator delete (void *);
6456
7270
   private:
6457
7271
  typedef CT_SpecialName CCExprResolveExpr;
 
7272
 
 
7273
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6458
7274
 public :
6459
7275
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6460
7276
  typedef CT_SpecialName CExprResolveExpr;
 
7277
 
 
7278
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6461
7279
 public :
6462
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6463
 
 
 
7280
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7281
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7282
};
 
7283
 
 
7284
 
 
7285
#line 7286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6464
7286
} // closed Puma
6465
7287
class WinIfExists;
6466
7288
class WinImportHandler;
6481
7303
class CCExprResolve;
6482
7304
class CExprResolve;
6483
7305
namespace Puma {
6484
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
 
7306
 
 
7307
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7308
class CT_PrivateName : public CT_SpecialName {
 
7309
#line 7310 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7310
  friend class ::WinIfExists;
6485
7311
  friend class ::WinImportHandler;
6486
7312
  friend class ::WinMacros;
6487
7313
  friend class ::CMatchSyntax;
6500
7326
  friend class ::CCExprResolve;
6501
7327
  friend class ::CExprResolve;
6502
7328
 
 
7329
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7330
 
6503
7331
public:
6504
7332
  CT_PrivateName (const char *n) { Name (n); }
6505
7333
  static const char *NodeId ();
6511
7339
  void  operator delete (void *);
6512
7340
   private:
6513
7341
  typedef CT_PrivateName CCExprResolveExpr;
 
7342
 
 
7343
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6514
7344
 public :
6515
7345
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6516
7346
  typedef CT_PrivateName CExprResolveExpr;
 
7347
 
 
7348
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6517
7349
 public :
6518
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6519
 
 
 
7350
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7351
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7352
};
 
7353
 
 
7354
 
 
7355
#line 7356 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6520
7356
} // closed Puma
6521
7357
class WinIfExists;
6522
7358
class WinImportHandler;
6537
7373
class CCExprResolve;
6538
7374
class CExprResolve;
6539
7375
namespace Puma {
6540
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
 
7376
 
 
7377
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7378
class CT_DestructorName : public CT_SpecialName {
 
7379
#line 7380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7380
  friend class ::WinIfExists;
6541
7381
  friend class ::WinImportHandler;
6542
7382
  friend class ::WinMacros;
6543
7383
  friend class ::CMatchSyntax;
6556
7396
  friend class ::CCExprResolve;
6557
7397
  friend class ::CExprResolve;
6558
7398
 
 
7399
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7400
 
6559
7401
public:
6560
7402
  CT_DestructorName (CTree *, CTree *);
6561
7403
  static const char *NodeId ();
6565
7407
  void  operator delete (void *);
6566
7408
   private:
6567
7409
  typedef CT_DestructorName CCExprResolveExpr;
 
7410
 
 
7411
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6568
7412
 public :
6569
7413
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6570
7414
  typedef CT_DestructorName CExprResolveExpr;
 
7415
 
 
7416
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6571
7417
 public :
6572
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6573
 
 
 
7418
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7419
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7420
};
 
7421
 
 
7422
 
 
7423
#line 7424 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6574
7424
} // closed Puma
6575
7425
class WinIfExists;
6576
7426
class WinImportHandler;
6591
7441
class CCExprResolve;
6592
7442
class CExprResolve;
6593
7443
namespace Puma {
6594
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
 
7444
 
 
7445
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7446
class CT_TemplateName : public CT_SpecialName {
 
7447
#line 7448 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7448
  friend class ::WinIfExists;
6595
7449
  friend class ::WinImportHandler;
6596
7450
  friend class ::WinMacros;
6597
7451
  friend class ::CMatchSyntax;
6610
7464
  friend class ::CCExprResolve;
6611
7465
  friend class ::CExprResolve;
6612
7466
 
 
7467
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7468
 
6613
7469
public:
6614
7470
  CT_TemplateName (CTree *n, CTree *a) 
6615
7471
   { AddSon (n); AddSon (a); }
6626
7482
  void  operator delete (void *);
6627
7483
   private:
6628
7484
  typedef CT_TemplateName CCExprResolveExpr;
 
7485
 
 
7486
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6629
7487
 public :
6630
7488
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6631
7489
  typedef CT_TemplateName CExprResolveExpr;
 
7490
 
 
7491
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6632
7492
 public :
6633
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6634
 
 
 
7493
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7494
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7495
};
 
7496
 
 
7497
 
 
7498
#line 7499 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6635
7499
} // closed Puma
6636
7500
class WinIfExists;
6637
7501
class WinImportHandler;
6652
7516
class CCExprResolve;
6653
7517
class CExprResolve;
6654
7518
namespace Puma {
6655
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
 
7519
 
 
7520
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7521
class CT_OperatorName : public CT_SpecialName {
 
7522
#line 7523 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7523
  friend class ::WinIfExists;
6656
7524
  friend class ::WinImportHandler;
6657
7525
  friend class ::WinMacros;
6658
7526
  friend class ::CMatchSyntax;
6671
7539
  friend class ::CCExprResolve;
6672
7540
  friend class ::CExprResolve;
6673
7541
 
 
7542
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7543
 
6674
7544
  int _oper;
6675
7545
 
6676
7546
public:
6692
7562
  void  operator delete (void *);
6693
7563
   private:
6694
7564
  typedef CT_OperatorName CCExprResolveExpr;
 
7565
 
 
7566
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6695
7567
 public :
6696
7568
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6697
7569
  typedef CT_OperatorName CExprResolveExpr;
 
7570
 
 
7571
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6698
7572
 public :
6699
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6700
 
 
 
7573
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7574
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7575
};
 
7576
 
 
7577
 
 
7578
#line 7579 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6701
7579
} // closed Puma
6702
7580
class WinIfExists;
6703
7581
class WinImportHandler;
6718
7596
class CCExprResolve;
6719
7597
class CExprResolve;
6720
7598
namespace Puma {
6721
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
 
7599
 
 
7600
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7601
class CT_ConversionName : public CT_SpecialName {
 
7602
#line 7603 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7603
  friend class ::WinIfExists;
6722
7604
  friend class ::WinImportHandler;
6723
7605
  friend class ::WinMacros;
6724
7606
  friend class ::CMatchSyntax;
6737
7619
  friend class ::CCExprResolve;
6738
7620
  friend class ::CExprResolve;
6739
7621
 
 
7622
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7623
 
6740
7624
public:
6741
7625
  CT_ConversionName (CTree *, CTree *);
6742
7626
  static const char *NodeId ();
6747
7631
  void  operator delete (void *);
6748
7632
   private:
6749
7633
  typedef CT_ConversionName CCExprResolveExpr;
 
7634
 
 
7635
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6750
7636
 public :
6751
7637
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6752
7638
  typedef CT_ConversionName CExprResolveExpr;
 
7639
 
 
7640
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6753
7641
 public :
6754
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6755
 
 
 
7642
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7643
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7644
};
 
7645
 
 
7646
 
 
7647
#line 7648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6756
7648
} // closed Puma
6757
7649
class WinIfExists;
6758
7650
class WinImportHandler;
6773
7665
class CCExprResolve;
6774
7666
class CExprResolve;
6775
7667
namespace Puma {
6776
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
 
7668
 
 
7669
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7670
class CT_QualName : public CT_SimpleName {
 
7671
#line 7672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7672
  friend class ::WinIfExists;
6777
7673
  friend class ::WinImportHandler;
6778
7674
  friend class ::WinMacros;
6779
7675
  friend class ::CMatchSyntax;
6792
7688
  friend class ::CCExprResolve;
6793
7689
  friend class ::CExprResolve;
6794
7690
 
 
7691
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7692
 
6795
7693
public:
6796
7694
  CT_QualName (int size = 3) : 
6797
7695
    CT_SimpleName (size, CT_List::SEPARATORS) {}
6809
7707
  void  operator delete (void *);
6810
7708
   private:
6811
7709
  typedef CT_QualName CCExprResolveExpr;
 
7710
 
 
7711
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6812
7712
 public :
6813
7713
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6814
7714
  typedef CT_QualName CExprResolveExpr;
 
7715
 
 
7716
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6815
7717
 public :
6816
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6817
 
 
 
7718
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7719
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7720
};
 
7721
 
 
7722
 
 
7723
#line 7724 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6818
7724
} // closed Puma
6819
7725
class WinIfExists;
6820
7726
class WinImportHandler;
6835
7741
class CCExprResolve;
6836
7742
class CExprResolve;
6837
7743
namespace Puma {
6838
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
 
7744
 
 
7745
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7746
class CT_RootQualName : public CT_QualName {
 
7747
#line 7748 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7748
  friend class ::WinIfExists;
6839
7749
  friend class ::WinImportHandler;
6840
7750
  friend class ::WinMacros;
6841
7751
  friend class ::CMatchSyntax;
6854
7764
  friend class ::CCExprResolve;
6855
7765
  friend class ::CExprResolve;
6856
7766
 
 
7767
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7768
 
6857
7769
public:
6858
7770
  CT_RootQualName (int size = 2) : 
6859
7771
    CT_QualName (size) { AddProperties (INTRO); }
6864
7776
  void  operator delete (void *);
6865
7777
   private:
6866
7778
  typedef CT_RootQualName CCExprResolveExpr;
 
7779
 
 
7780
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6867
7781
 public :
6868
7782
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6869
7783
  typedef CT_RootQualName CExprResolveExpr;
 
7784
 
 
7785
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6870
7786
 public :
6871
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6872
 
 
 
7787
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7788
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7789
};
 
7790
 
 
7791
 
 
7792
#line 7793 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6873
7793
} // closed Puma
6874
7794
class WinIfExists;
6875
7795
class WinImportHandler;
6890
7810
class CCExprResolve;
6891
7811
class CExprResolve;
6892
7812
namespace Puma {
6893
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
7813
 
 
7814
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7815
class CT_BinaryExpr : public CT_Expression {
 
7816
#line 7817 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7817
  friend class ::WinIfExists;
6894
7818
  friend class ::WinImportHandler;
6895
7819
  friend class ::WinMacros;
6896
7820
  friend class ::CMatchSyntax;
6909
7833
  friend class ::CCExprResolve;
6910
7834
  friend class ::CExprResolve;
6911
7835
 
 
7836
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7837
 
6912
7838
  CTree *sons[3]; // expr, oper, expr
6913
7839
 
6914
7840
public:
6924
7850
  }
6925
7851
   private:
6926
7852
  typedef CT_BinaryExpr CCExprResolveExpr;
 
7853
 
 
7854
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6927
7855
 public :
6928
7856
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6929
7857
  typedef CT_BinaryExpr CExprResolveExpr;
 
7858
 
 
7859
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6930
7860
 public :
6931
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6932
 
 
 
7861
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7862
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7863
};
 
7864
 
 
7865
 
 
7866
#line 7867 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6933
7867
} // closed Puma
6934
7868
class WinIfExists;
6935
7869
class WinImportHandler;
6950
7884
class CCExprResolve;
6951
7885
class CExprResolve;
6952
7886
namespace Puma {
6953
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
 
7887
 
 
7888
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7889
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
7890
#line 7891 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7891
  friend class ::WinIfExists;
6954
7892
  friend class ::WinImportHandler;
6955
7893
  friend class ::WinMacros;
6956
7894
  friend class ::CMatchSyntax;
6969
7907
  friend class ::CCExprResolve;
6970
7908
  friend class ::CExprResolve;
6971
7909
 
 
7910
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7911
 
6972
7912
public:
6973
7913
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
6974
7914
    CT_BinaryExpr (e, o, i) {}
6977
7917
  CSemObject *SemObject () const { return (CSemObject*)this; }
6978
7918
   private:
6979
7919
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
7920
 
 
7921
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
6980
7922
 public :
6981
7923
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
6982
7924
  typedef CT_MembPtrExpr CExprResolveExpr;
 
7925
 
 
7926
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
6983
7927
 public :
6984
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
6985
 
 
 
7928
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7929
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7930
};
 
7931
 
 
7932
 
 
7933
#line 7934 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
6986
7934
} // closed Puma
6987
7935
class WinIfExists;
6988
7936
class WinImportHandler;
7003
7951
class CCExprResolve;
7004
7952
class CExprResolve;
7005
7953
namespace Puma {
7006
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
 
7954
 
 
7955
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7956
class CT_MembRefExpr : public CT_MembPtrExpr {
 
7957
#line 7958 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
7958
  friend class ::WinIfExists;
7007
7959
  friend class ::WinImportHandler;
7008
7960
  friend class ::WinMacros;
7009
7961
  friend class ::CMatchSyntax;
7022
7974
  friend class ::CCExprResolve;
7023
7975
  friend class ::CExprResolve;
7024
7976
 
 
7977
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7978
 
7025
7979
public:
7026
7980
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
7027
7981
    CT_MembPtrExpr (e, o, i) {}
7029
7983
  const char *NodeName () const { return NodeId (); }
7030
7984
   private:
7031
7985
  typedef CT_MembRefExpr CCExprResolveExpr;
 
7986
 
 
7987
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7032
7988
 public :
7033
7989
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7034
7990
  typedef CT_MembRefExpr CExprResolveExpr;
 
7991
 
 
7992
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7035
7993
 public :
7036
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7037
 
 
 
7994
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
7995
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
7996
};
 
7997
 
 
7998
 
 
7999
#line 8000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7038
8000
} // closed Puma
7039
8001
class WinIfExists;
7040
8002
class WinImportHandler;
7055
8017
class CCExprResolve;
7056
8018
class CExprResolve;
7057
8019
namespace Puma {
7058
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
8020
 
 
8021
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8022
class CT_UnaryExpr : public CT_Expression {
 
8023
#line 8024 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8024
  friend class ::WinIfExists;
7059
8025
  friend class ::WinImportHandler;
7060
8026
  friend class ::WinMacros;
7061
8027
  friend class ::CMatchSyntax;
7074
8040
  friend class ::CCExprResolve;
7075
8041
  friend class ::CExprResolve;
7076
8042
 
 
8043
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8044
 
7077
8045
  CTree *sons[2]; // oper, expr
7078
8046
 
7079
8047
public:
7088
8056
  CTree *Expr () const { return sons[1]; }
7089
8057
   private:
7090
8058
  typedef CT_UnaryExpr CCExprResolveExpr;
 
8059
 
 
8060
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7091
8061
 public :
7092
8062
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7093
8063
  typedef CT_UnaryExpr CExprResolveExpr;
 
8064
 
 
8065
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7094
8066
 public :
7095
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7096
 
 
 
8067
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8068
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8069
};
 
8070
 
 
8071
 
 
8072
#line 8073 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7097
8073
} // closed Puma
7098
8074
class WinIfExists;
7099
8075
class WinImportHandler;
7114
8090
class CCExprResolve;
7115
8091
class CExprResolve;
7116
8092
namespace Puma {
7117
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
8093
 
 
8094
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8095
class CT_PostfixExpr : public CT_UnaryExpr {
 
8096
#line 8097 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8097
  friend class ::WinIfExists;
7118
8098
  friend class ::WinImportHandler;
7119
8099
  friend class ::WinMacros;
7120
8100
  friend class ::CMatchSyntax;
7133
8113
  friend class ::CCExprResolve;
7134
8114
  friend class ::CExprResolve;
7135
8115
 
 
8116
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8117
 
7136
8118
public:
7137
8119
  CT_PostfixExpr (CTree *e, CTree *o) :
7138
8120
    CT_UnaryExpr (e, o) {}
7140
8122
  const char *NodeName () const { return NodeId (); }
7141
8123
   private:
7142
8124
  typedef CT_PostfixExpr CCExprResolveExpr;
 
8125
 
 
8126
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7143
8127
 public :
7144
8128
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7145
8129
  typedef CT_PostfixExpr CExprResolveExpr;
 
8130
 
 
8131
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7146
8132
 public :
7147
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7148
 
 
 
8133
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8134
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8135
};
 
8136
 
 
8137
 
 
8138
#line 8139 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7149
8139
} // closed Puma
7150
8140
class WinIfExists;
7151
8141
class WinImportHandler;
7166
8156
class CCExprResolve;
7167
8157
class CExprResolve;
7168
8158
namespace Puma {
7169
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
8159
 
 
8160
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8161
class CT_AddrExpr : public CT_UnaryExpr {
 
8162
#line 8163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8163
  friend class ::WinIfExists;
7170
8164
  friend class ::WinImportHandler;
7171
8165
  friend class ::WinMacros;
7172
8166
  friend class ::CMatchSyntax;
7185
8179
  friend class ::CCExprResolve;
7186
8180
  friend class ::CExprResolve;
7187
8181
 
 
8182
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8183
 
7188
8184
public:
7189
8185
  CT_AddrExpr (CTree *o, CTree *e) :
7190
8186
    CT_UnaryExpr (o, e) {}
7192
8188
  const char *NodeName () const { return NodeId (); }
7193
8189
   private:
7194
8190
  typedef CT_AddrExpr CCExprResolveExpr;
 
8191
 
 
8192
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7195
8193
 public :
7196
8194
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7197
8195
  typedef CT_AddrExpr CExprResolveExpr;
 
8196
 
 
8197
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7198
8198
 public :
7199
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7200
 
 
 
8199
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8200
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8201
};
 
8202
 
 
8203
 
 
8204
#line 8205 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7201
8205
} // closed Puma
7202
8206
class WinIfExists;
7203
8207
class WinImportHandler;
7218
8222
class CCExprResolve;
7219
8223
class CExprResolve;
7220
8224
namespace Puma {
7221
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
8225
 
 
8226
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8227
class CT_DerefExpr : public CT_UnaryExpr {
 
8228
#line 8229 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8229
  friend class ::WinIfExists;
7222
8230
  friend class ::WinImportHandler;
7223
8231
  friend class ::WinMacros;
7224
8232
  friend class ::CMatchSyntax;
7237
8245
  friend class ::CCExprResolve;
7238
8246
  friend class ::CExprResolve;
7239
8247
 
 
8248
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8249
 
7240
8250
public:
7241
8251
  CT_DerefExpr (CTree *o, CTree *e) :
7242
8252
    CT_UnaryExpr (o, e) {}
7244
8254
  const char *NodeName () const { return NodeId (); }
7245
8255
   private:
7246
8256
  typedef CT_DerefExpr CCExprResolveExpr;
 
8257
 
 
8258
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7247
8259
 public :
7248
8260
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7249
8261
  typedef CT_DerefExpr CExprResolveExpr;
 
8262
 
 
8263
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7250
8264
 public :
7251
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7252
 
 
 
8265
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8266
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8267
};
 
8268
 
 
8269
 
 
8270
#line 8271 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7253
8271
} // closed Puma
7254
8272
class WinIfExists;
7255
8273
class WinImportHandler;
7270
8288
class CCExprResolve;
7271
8289
class CExprResolve;
7272
8290
namespace Puma {
7273
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
8291
 
 
8292
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8293
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
8294
#line 8295 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8295
  friend class ::WinIfExists;
7274
8296
  friend class ::WinImportHandler;
7275
8297
  friend class ::WinMacros;
7276
8298
  friend class ::CMatchSyntax;
7289
8311
  friend class ::CCExprResolve;
7290
8312
  friend class ::CExprResolve;
7291
8313
 
 
8314
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8315
 
7292
8316
  CTree *sons[2]; // oper, expr
7293
8317
 
7294
8318
public:
7305
8329
  CSemObject *SemObject () const { return (CSemObject*)this; }
7306
8330
   private:
7307
8331
  typedef CT_DeleteExpr CCExprResolveExpr;
 
8332
 
 
8333
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7308
8334
 public :
7309
8335
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7310
8336
  typedef CT_DeleteExpr CExprResolveExpr;
 
8337
 
 
8338
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7311
8339
 public :
7312
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7313
 
 
 
8340
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8341
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8342
};
 
8343
 
 
8344
 
 
8345
#line 8346 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7314
8346
} // closed Puma
7315
8347
class WinIfExists;
7316
8348
class WinImportHandler;
7331
8363
class CCExprResolve;
7332
8364
class CExprResolve;
7333
8365
namespace Puma {
7334
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
8366
 
 
8367
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8368
class CT_NewExpr : public CT_Expression, public CSemObject {
 
8369
#line 8370 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8370
  friend class ::WinIfExists;
7335
8371
  friend class ::WinImportHandler;
7336
8372
  friend class ::WinMacros;
7337
8373
  friend class ::CMatchSyntax;
7350
8386
  friend class ::CCExprResolve;
7351
8387
  friend class ::CExprResolve;
7352
8388
 
 
8389
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8390
 
7353
8391
  CTree *sons[6]; // oper, placement, open, type, close, init
7354
8392
 
7355
8393
public:
7370
8408
  CSemObject *SemObject () const { return (CSemObject*)this; }
7371
8409
   private:
7372
8410
  typedef CT_NewExpr CCExprResolveExpr;
 
8411
 
 
8412
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7373
8413
 public :
7374
8414
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7375
8415
  typedef CT_NewExpr CExprResolveExpr;
 
8416
 
 
8417
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7376
8418
 public :
7377
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7378
 
 
 
8419
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8420
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8421
};
 
8422
 
 
8423
 
 
8424
#line 8425 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7379
8425
} // closed Puma
7380
8426
class WinIfExists;
7381
8427
class WinImportHandler;
7396
8442
class CCExprResolve;
7397
8443
class CExprResolve;
7398
8444
namespace Puma {
7399
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
 
8445
 
 
8446
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8447
class CT_IfThenExpr : public CT_Expression {
 
8448
#line 8449 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8449
  friend class ::WinIfExists;
7400
8450
  friend class ::WinImportHandler;
7401
8451
  friend class ::WinMacros;
7402
8452
  friend class ::CMatchSyntax;
7415
8465
  friend class ::CCExprResolve;
7416
8466
  friend class ::CExprResolve;
7417
8467
 
 
8468
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8469
 
7418
8470
  CTree *sons[5]; // cond, oper, left, colon, right
7419
8471
 
7420
8472
public:
7436
8488
  }
7437
8489
   private:
7438
8490
  typedef CT_IfThenExpr CCExprResolveExpr;
 
8491
 
 
8492
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7439
8493
 public :
7440
8494
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7441
8495
  typedef CT_IfThenExpr CExprResolveExpr;
 
8496
 
 
8497
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7442
8498
 public :
7443
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7444
 
 
 
8499
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8500
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8501
};
 
8502
 
 
8503
 
 
8504
#line 8505 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7445
8505
} // closed Puma
7446
8506
class WinIfExists;
7447
8507
class WinImportHandler;
7462
8522
class CCExprResolve;
7463
8523
class CExprResolve;
7464
8524
namespace Puma {
7465
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
8525
 
 
8526
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8527
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
8528
#line 8529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8529
  friend class ::WinIfExists;
7466
8530
  friend class ::WinImportHandler;
7467
8531
  friend class ::WinMacros;
7468
8532
  friend class ::CMatchSyntax;
7481
8545
  friend class ::CCExprResolve;
7482
8546
  friend class ::CExprResolve;
7483
8547
 
 
8548
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8549
 
7484
8550
  CTree *sons[4]; // open, type, close, init
7485
8551
 
7486
8552
public:
7499
8565
  CSemObject *SemObject () const { return (CSemObject*)this; }
7500
8566
   private:
7501
8567
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
8568
 
 
8569
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7502
8570
 public :
7503
8571
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7504
8572
  typedef CT_CmpdLiteral CExprResolveExpr;
 
8573
 
 
8574
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7505
8575
 public :
7506
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7507
 
 
 
8576
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8577
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8578
};
 
8579
 
 
8580
 
 
8581
#line 8582 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7508
8582
} // closed Puma
7509
8583
class WinIfExists;
7510
8584
class WinImportHandler;
7525
8599
class CCExprResolve;
7526
8600
class CExprResolve;
7527
8601
namespace Puma {
7528
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
8602
 
 
8603
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8604
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
8605
#line 8606 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8606
  friend class ::WinIfExists;
7529
8607
  friend class ::WinImportHandler;
7530
8608
  friend class ::WinMacros;
7531
8609
  friend class ::CMatchSyntax;
7544
8622
  friend class ::CCExprResolve;
7545
8623
  friend class ::CExprResolve;
7546
8624
 
 
8625
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8626
 
7547
8627
  CTree *sons[2]; // type, init
7548
8628
 
7549
8629
public:
7560
8640
  CSemObject *SemObject () const { return (CSemObject*)this; }
7561
8641
   private:
7562
8642
  typedef CT_ConstructExpr CCExprResolveExpr;
 
8643
 
 
8644
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7563
8645
 public :
7564
8646
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7565
8647
  typedef CT_ConstructExpr CExprResolveExpr;
 
8648
 
 
8649
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7566
8650
 public :
7567
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7568
 
 
 
8651
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8652
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8653
};
 
8654
 
 
8655
 
 
8656
#line 8657 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7569
8657
} // closed Puma
7570
8658
class WinIfExists;
7571
8659
class WinImportHandler;
7586
8674
class CCExprResolve;
7587
8675
class CExprResolve;
7588
8676
namespace Puma {
7589
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
 
8677
 
 
8678
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8679
class CT_ThrowExpr : public CT_Expression {
 
8680
#line 8681 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8681
  friend class ::WinIfExists;
7590
8682
  friend class ::WinImportHandler;
7591
8683
  friend class ::WinMacros;
7592
8684
  friend class ::CMatchSyntax;
7605
8697
  friend class ::CCExprResolve;
7606
8698
  friend class ::CExprResolve;
7607
8699
 
 
8700
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8701
 
7608
8702
  CTree *sons[2]; // throw, expr
7609
8703
 
7610
8704
public:
7619
8713
  CTree *Expr () const { return sons[1]; }
7620
8714
   private:
7621
8715
  typedef CT_ThrowExpr CCExprResolveExpr;
 
8716
 
 
8717
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7622
8718
 public :
7623
8719
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7624
8720
  typedef CT_ThrowExpr CExprResolveExpr;
 
8721
 
 
8722
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7625
8723
 public :
7626
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7627
 
 
 
8724
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8725
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8726
};
 
8727
 
 
8728
 
 
8729
#line 8730 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7628
8730
} // closed Puma
7629
8731
class WinIfExists;
7630
8732
class WinImportHandler;
7645
8747
class CCExprResolve;
7646
8748
class CExprResolve;
7647
8749
namespace Puma {
7648
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
 
8750
 
 
8751
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8752
class CT_IndexExpr : public CT_Expression {
 
8753
#line 8754 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8754
  friend class ::WinIfExists;
7649
8755
  friend class ::WinImportHandler;
7650
8756
  friend class ::WinMacros;
7651
8757
  friend class ::CMatchSyntax;
7664
8770
  friend class ::CCExprResolve;
7665
8771
  friend class ::CExprResolve;
7666
8772
 
 
8773
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8774
 
7667
8775
  CTree *sons[4]; // expr, open, index, close
7668
8776
 
7669
8777
public:
7679
8787
  }
7680
8788
   private:
7681
8789
  typedef CT_IndexExpr CCExprResolveExpr;
 
8790
 
 
8791
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7682
8792
 public :
7683
8793
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7684
8794
  typedef CT_IndexExpr CExprResolveExpr;
 
8795
 
 
8796
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7685
8797
 public :
7686
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7687
 
 
 
8798
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8799
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8800
};
 
8801
 
 
8802
 
 
8803
#line 8804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7688
8804
} // closed Puma
7689
8805
class WinIfExists;
7690
8806
class WinImportHandler;
7705
8821
class CCExprResolve;
7706
8822
class CExprResolve;
7707
8823
namespace Puma {
7708
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
8824
 
 
8825
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8826
class CT_CallExpr : public CT_Expression, public CSemObject {
 
8827
#line 8828 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8828
  friend class ::WinIfExists;
7709
8829
  friend class ::WinImportHandler;
7710
8830
  friend class ::WinMacros;
7711
8831
  friend class ::CMatchSyntax;
7724
8844
  friend class ::CCExprResolve;
7725
8845
  friend class ::CExprResolve;
7726
8846
 
 
8847
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8848
 
7727
8849
  CTree *sons[2]; // expr, args
7728
8850
 
7729
8851
public:
7741
8863
  CSemObject *SemObject () const { return (CSemObject*)this; }
7742
8864
   private:
7743
8865
  typedef CT_CallExpr CCExprResolveExpr;
 
8866
 
 
8867
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7744
8868
 public :
7745
8869
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7746
8870
  typedef CT_CallExpr CExprResolveExpr;
 
8871
 
 
8872
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7747
8873
 public :
7748
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7749
 
 
 
8874
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8875
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8876
};
 
8877
 
 
8878
 
 
8879
#line 8880 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7750
8880
} // closed Puma
7751
8881
class WinIfExists;
7752
8882
class WinImportHandler;
7767
8897
class CCExprResolve;
7768
8898
class CExprResolve;
7769
8899
namespace Puma {
7770
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
 
8900
 
 
8901
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8902
class CT_CastExpr : public CT_Expression {
 
8903
#line 8904 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8904
  friend class ::WinIfExists;
7771
8905
  friend class ::WinImportHandler;
7772
8906
  friend class ::WinMacros;
7773
8907
  friend class ::CMatchSyntax;
7786
8920
  friend class ::CCExprResolve;
7787
8921
  friend class ::CExprResolve;
7788
8922
 
 
8923
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8924
 
7789
8925
  CTree *sons[4]; // open, type, close, expr
7790
8926
 
7791
8927
public:
7803
8939
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
7804
8940
   private:
7805
8941
  typedef CT_CastExpr CCExprResolveExpr;
 
8942
 
 
8943
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7806
8944
 public :
7807
8945
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7808
8946
  typedef CT_CastExpr CExprResolveExpr;
 
8947
 
 
8948
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7809
8949
 public :
7810
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7811
 
 
 
8950
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
8951
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8952
};
 
8953
 
 
8954
 
 
8955
#line 8956 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7812
8956
} // closed Puma
7813
8957
class WinIfExists;
7814
8958
class WinImportHandler;
7829
8973
class CCExprResolve;
7830
8974
class CExprResolve;
7831
8975
namespace Puma {
7832
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
 
8976
 
 
8977
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
8978
class CT_StaticCast : public CT_Expression {
 
8979
#line 8980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
8980
  friend class ::WinIfExists;
7833
8981
  friend class ::WinImportHandler;
7834
8982
  friend class ::WinMacros;
7835
8983
  friend class ::CMatchSyntax;
7848
8996
  friend class ::CCExprResolve;
7849
8997
  friend class ::CExprResolve;
7850
8998
 
 
8999
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9000
 
7851
9001
  CTree *sons[5]; // cast, open, type, close, expr
7852
9002
 
7853
9003
public:
7865
9015
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
7866
9016
   private:
7867
9017
  typedef CT_StaticCast CCExprResolveExpr;
 
9018
 
 
9019
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7868
9020
 public :
7869
9021
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7870
9022
  typedef CT_StaticCast CExprResolveExpr;
 
9023
 
 
9024
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7871
9025
 public :
7872
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7873
 
 
 
9026
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9027
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9028
};
 
9029
 
 
9030
 
 
9031
#line 9032 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7874
9032
} // closed Puma
7875
9033
class WinIfExists;
7876
9034
class WinImportHandler;
7891
9049
class CCExprResolve;
7892
9050
class CExprResolve;
7893
9051
namespace Puma {
7894
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
 
9052
 
 
9053
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9054
class CT_ConstCast : public CT_StaticCast {
 
9055
#line 9056 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9056
  friend class ::WinIfExists;
7895
9057
  friend class ::WinImportHandler;
7896
9058
  friend class ::WinMacros;
7897
9059
  friend class ::CMatchSyntax;
7910
9072
  friend class ::CCExprResolve;
7911
9073
  friend class ::CExprResolve;
7912
9074
 
 
9075
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9076
 
7913
9077
public:
7914
9078
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
7915
9079
    CT_StaticCast (cst, o, t, c, e) {}
7917
9081
  const char *NodeName () const { return NodeId (); }
7918
9082
   private:
7919
9083
  typedef CT_ConstCast CCExprResolveExpr;
 
9084
 
 
9085
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7920
9086
 public :
7921
9087
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7922
9088
  typedef CT_ConstCast CExprResolveExpr;
 
9089
 
 
9090
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7923
9091
 public :
7924
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7925
 
 
 
9092
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9093
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9094
};
 
9095
 
 
9096
 
 
9097
#line 9098 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7926
9098
} // closed Puma
7927
9099
class WinIfExists;
7928
9100
class WinImportHandler;
7943
9115
class CCExprResolve;
7944
9116
class CExprResolve;
7945
9117
namespace Puma {
7946
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
 
9118
 
 
9119
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9120
class CT_ReintCast : public CT_StaticCast {
 
9121
#line 9122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9122
  friend class ::WinIfExists;
7947
9123
  friend class ::WinImportHandler;
7948
9124
  friend class ::WinMacros;
7949
9125
  friend class ::CMatchSyntax;
7962
9138
  friend class ::CCExprResolve;
7963
9139
  friend class ::CExprResolve;
7964
9140
 
 
9141
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9142
 
7965
9143
public:
7966
9144
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
7967
9145
    CT_StaticCast (cst, o, t, c, e) {}
7969
9147
  const char *NodeName () const { return NodeId (); }
7970
9148
   private:
7971
9149
  typedef CT_ReintCast CCExprResolveExpr;
 
9150
 
 
9151
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
7972
9152
 public :
7973
9153
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
7974
9154
  typedef CT_ReintCast CExprResolveExpr;
 
9155
 
 
9156
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
7975
9157
 public :
7976
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
7977
 
 
 
9158
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9159
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9160
};
 
9161
 
 
9162
 
 
9163
#line 9164 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
7978
9164
} // closed Puma
7979
9165
class WinIfExists;
7980
9166
class WinImportHandler;
7995
9181
class CCExprResolve;
7996
9182
class CExprResolve;
7997
9183
namespace Puma {
7998
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
 
9184
 
 
9185
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9186
class CT_DynamicCast : public CT_StaticCast {
 
9187
#line 9188 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9188
  friend class ::WinIfExists;
7999
9189
  friend class ::WinImportHandler;
8000
9190
  friend class ::WinMacros;
8001
9191
  friend class ::CMatchSyntax;
8014
9204
  friend class ::CCExprResolve;
8015
9205
  friend class ::CExprResolve;
8016
9206
 
 
9207
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9208
 
8017
9209
public:
8018
9210
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
8019
9211
    CT_StaticCast (cst, o, t, c, e) {}
8021
9213
  const char *NodeName () const { return NodeId (); }
8022
9214
   private:
8023
9215
  typedef CT_DynamicCast CCExprResolveExpr;
 
9216
 
 
9217
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
8024
9218
 public :
8025
9219
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
8026
9220
  typedef CT_DynamicCast CExprResolveExpr;
 
9221
 
 
9222
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
8027
9223
 public :
8028
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
8029
 
 
 
9224
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9225
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9226
};
 
9227
 
 
9228
 
 
9229
#line 9230 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8030
9230
} // closed Puma
8031
9231
class WinIfExists;
8032
9232
class WinImportHandler;
8047
9247
class CCExprResolve;
8048
9248
class CExprResolve;
8049
9249
namespace Puma {
8050
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
 
9250
 
 
9251
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9252
class CT_ImplicitCast : public CT_Expression {
 
9253
#line 9254 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9254
  friend class ::WinIfExists;
8051
9255
  friend class ::WinImportHandler;
8052
9256
  friend class ::WinMacros;
8053
9257
  friend class ::CMatchSyntax;
8066
9270
  friend class ::CCExprResolve;
8067
9271
  friend class ::CExprResolve;
8068
9272
 
 
9273
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9274
 
8069
9275
  CTree *_expr; // casted expression
8070
9276
 
8071
9277
public:
8079
9285
   { if (old_son == _expr) _expr = new_son; }
8080
9286
   private:
8081
9287
  typedef CT_ImplicitCast CCExprResolveExpr;
 
9288
 
 
9289
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
8082
9290
 public :
8083
9291
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
8084
9292
  typedef CT_ImplicitCast CExprResolveExpr;
 
9293
 
 
9294
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
8085
9295
 public :
8086
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
8087
 
 
 
9296
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9297
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9298
};
 
9299
 
 
9300
 
 
9301
#line 9302 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8088
9302
} // closed Puma
8089
9303
class WinIfExists;
8090
9304
class WinImportHandler;
8105
9319
class CCExprResolve;
8106
9320
class CExprResolve;
8107
9321
namespace Puma {
8108
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
 
9322
 
 
9323
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9324
class CT_TypeidExpr : public CT_Expression {
 
9325
#line 9326 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9326
  friend class ::WinIfExists;
8109
9327
  friend class ::WinImportHandler;
8110
9328
  friend class ::WinMacros;
8111
9329
  friend class ::CMatchSyntax;
8124
9342
  friend class ::CCExprResolve;
8125
9343
  friend class ::CExprResolve;
8126
9344
 
 
9345
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9346
 
8127
9347
  CTree *sons[4]; // typeid, open, type_id/expr, close
8128
9348
 
8129
9349
public:
8140
9360
  CTree *Arg () const { return sons[2]; }
8141
9361
   private:
8142
9362
  typedef CT_TypeidExpr CCExprResolveExpr;
 
9363
 
 
9364
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
8143
9365
 public :
8144
9366
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
8145
9367
  typedef CT_TypeidExpr CExprResolveExpr;
 
9368
 
 
9369
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
8146
9370
 public :
8147
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
8148
 
 
 
9371
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9372
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9373
};
 
9374
 
 
9375
 
 
9376
#line 9377 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8149
9377
} // closed Puma
8150
9378
class WinIfExists;
8151
9379
class WinImportHandler;
8166
9394
class CCExprResolve;
8167
9395
class CExprResolve;
8168
9396
namespace Puma {
8169
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
 
9397
 
 
9398
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9399
class CT_SizeofExpr : public CT_Expression {
 
9400
#line 9401 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9401
  friend class ::WinIfExists;
8170
9402
  friend class ::WinImportHandler;
8171
9403
  friend class ::WinMacros;
8172
9404
  friend class ::CMatchSyntax;
8185
9417
  friend class ::CCExprResolve;
8186
9418
  friend class ::CExprResolve;
8187
9419
 
 
9420
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9421
 
8188
9422
  CTree *sons[5]; // key, open, type, close, expr
8189
9423
 
8190
9424
public:
8205
9439
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
8206
9440
   private:
8207
9441
  typedef CT_SizeofExpr CCExprResolveExpr;
 
9442
 
 
9443
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
8208
9444
 public :
8209
9445
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
8210
9446
  typedef CT_SizeofExpr CExprResolveExpr;
 
9447
 
 
9448
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
8211
9449
 public :
8212
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
8213
 
 
 
9450
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9451
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9452
};
 
9453
 
 
9454
 
 
9455
#line 9456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8214
9456
} // closed Puma
8215
9457
class WinIfExists;
8216
9458
class WinImportHandler;
8231
9473
class CCExprResolve;
8232
9474
class CExprResolve;
8233
9475
namespace Puma {
8234
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
 
9476
 
 
9477
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9478
class CT_IndexDesignator : public CT_Expression {
 
9479
#line 9480 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9480
  friend class ::WinIfExists;
8235
9481
  friend class ::WinImportHandler;
8236
9482
  friend class ::WinMacros;
8237
9483
  friend class ::CMatchSyntax;
8250
9496
  friend class ::CCExprResolve;
8251
9497
  friend class ::CExprResolve;
8252
9498
 
 
9499
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9500
 
8253
9501
  CTree *sons[3]; // open, index, close
8254
9502
 
8255
9503
public:
8265
9513
  }
8266
9514
   private:
8267
9515
  typedef CT_IndexDesignator CCExprResolveExpr;
 
9516
 
 
9517
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
8268
9518
 public :
8269
9519
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
8270
9520
  typedef CT_IndexDesignator CExprResolveExpr;
 
9521
 
 
9522
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
8271
9523
 public :
8272
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
8273
 
 
 
9524
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9525
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9526
};
 
9527
 
 
9528
 
 
9529
#line 9530 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8274
9530
} // closed Puma
8275
9531
class WinIfExists;
8276
9532
class WinImportHandler;
8291
9547
class CCExprResolve;
8292
9548
class CExprResolve;
8293
9549
namespace Puma {
8294
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
 
9550
 
 
9551
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9552
class CT_MembDesignator : public CT_Expression {
 
9553
#line 9554 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9554
  friend class ::WinIfExists;
8295
9555
  friend class ::WinImportHandler;
8296
9556
  friend class ::WinMacros;
8297
9557
  friend class ::CMatchSyntax;
8310
9570
  friend class ::CCExprResolve;
8311
9571
  friend class ::CExprResolve;
8312
9572
 
 
9573
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9574
 
8313
9575
  CTree *sons[2]; // dot, member
8314
9576
 
8315
9577
public:
8323
9585
  }
8324
9586
   private:
8325
9587
  typedef CT_MembDesignator CCExprResolveExpr;
 
9588
 
 
9589
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
8326
9590
 public :
8327
9591
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
8328
9592
  typedef CT_MembDesignator CExprResolveExpr;
 
9593
 
 
9594
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
8329
9595
 public :
8330
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
8331
 
 
 
9596
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
9597
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9598
};
 
9599
 
 
9600
 
 
9601
#line 9602 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8332
9602
} // closed Puma
8333
9603
class WinIfExists;
8334
9604
class WinImportHandler;
8349
9619
class CCExprResolve;
8350
9620
class CExprResolve;
8351
9621
namespace Puma {
8352
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
9622
 
 
9623
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9624
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
9625
#line 9626 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9626
  friend class ::WinIfExists;
8353
9627
  friend class ::WinImportHandler;
8354
9628
  friend class ::WinMacros;
8355
9629
  friend class ::CMatchSyntax;
8368
9642
  friend class ::CCExprResolve;
8369
9643
  friend class ::CExprResolve;
8370
9644
 
 
9645
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9646
 
8371
9647
public:
8372
9648
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
8373
9649
  static const char *NodeId ();
8384
9660
/*                                                                           */
8385
9661
/*****************************************************************************/
8386
9662
 
 
9663
 
 
9664
#line 9665 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8387
9665
} // closed Puma
8388
9666
class WinIfExists;
8389
9667
class WinImportHandler;
8404
9682
class CCExprResolve;
8405
9683
class CExprResolve;
8406
9684
namespace Puma {
8407
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
 
9685
 
 
9686
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9687
class CT_DeclSpec : public CTree {
 
9688
#line 9689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9689
  friend class ::WinIfExists;
8408
9690
  friend class ::WinImportHandler;
8409
9691
  friend class ::WinMacros;
8410
9692
  friend class ::CMatchSyntax;
8423
9705
  friend class ::CCExprResolve;
8424
9706
  friend class ::CExprResolve;
8425
9707
 
 
9708
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9709
 
8426
9710
protected:
8427
9711
  CT_DeclSpec () {}
8428
9712
};
8429
9713
 
 
9714
 
 
9715
#line 9716 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8430
9716
} // closed Puma
8431
9717
class WinIfExists;
8432
9718
class WinImportHandler;
8447
9733
class CCExprResolve;
8448
9734
class CExprResolve;
8449
9735
namespace Puma {
8450
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
9736
 
 
9737
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9738
class CT_PrimDeclSpec : public CT_DeclSpec {
 
9739
#line 9740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9740
  friend class ::WinIfExists;
8451
9741
  friend class ::WinImportHandler;
8452
9742
  friend class ::WinMacros;
8453
9743
  friend class ::CMatchSyntax;
8466
9756
  friend class ::CCExprResolve;
8467
9757
  friend class ::CExprResolve;
8468
9758
 
 
9759
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9760
 
8469
9761
public:
8470
9762
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
8471
9763
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
8498
9790
  static const int NumTypes = PDS_NUM;
8499
9791
};
8500
9792
 
 
9793
 
 
9794
#line 9795 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8501
9795
} // closed Puma
8502
9796
class WinIfExists;
8503
9797
class WinImportHandler;
8518
9812
class CCExprResolve;
8519
9813
class CExprResolve;
8520
9814
namespace Puma {
8521
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
9815
 
 
9816
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9817
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
9818
#line 9819 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9819
  friend class ::WinIfExists;
8522
9820
  friend class ::WinImportHandler;
8523
9821
  friend class ::WinMacros;
8524
9822
  friend class ::CMatchSyntax;
8537
9835
  friend class ::CCExprResolve;
8538
9836
  friend class ::CExprResolve;
8539
9837
 
 
9838
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9839
 
8540
9840
  CTree *sons[2]; // declspecs, declarator
8541
9841
 
8542
9842
public:
8552
9852
  CSemObject *SemObject () const { return (CSemObject*)this; }
8553
9853
};
8554
9854
      
 
9855
 
 
9856
#line 9857 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8555
9857
} // closed Puma
8556
9858
class WinIfExists;
8557
9859
class WinImportHandler;
8572
9874
class CCExprResolve;
8573
9875
class CExprResolve;
8574
9876
namespace Puma {
8575
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
9877
 
 
9878
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9879
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
9880
#line 9881 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9881
  friend class ::WinIfExists;
8576
9882
  friend class ::WinImportHandler;
8577
9883
  friend class ::WinMacros;
8578
9884
  friend class ::CMatchSyntax;
8591
9897
  friend class ::CCExprResolve;
8592
9898
  friend class ::CExprResolve;
8593
9899
 
 
9900
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9901
 
8594
9902
  CTree *sons[2]; // key, name
8595
9903
  
8596
9904
public:
8606
9914
  }
8607
9915
};
8608
9916
 
 
9917
 
 
9918
#line 9919 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8609
9919
} // closed Puma
8610
9920
class WinIfExists;
8611
9921
class WinImportHandler;
8626
9936
class CCExprResolve;
8627
9937
class CExprResolve;
8628
9938
namespace Puma {
8629
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
9939
 
 
9940
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9941
class CT_UnionSpec : public CT_ClassSpec {
 
9942
#line 9943 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9943
  friend class ::WinIfExists;
8630
9944
  friend class ::WinImportHandler;
8631
9945
  friend class ::WinMacros;
8632
9946
  friend class ::CMatchSyntax;
8645
9959
  friend class ::CCExprResolve;
8646
9960
  friend class ::CExprResolve;
8647
9961
 
 
9962
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9963
 
8648
9964
public:
8649
9965
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
8650
9966
  static const char *NodeId ();
8651
9967
  const char *NodeName () const { return NodeId (); }
8652
9968
};
8653
9969
 
 
9970
 
 
9971
#line 9972 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8654
9972
} // closed Puma
8655
9973
class WinIfExists;
8656
9974
class WinImportHandler;
8671
9989
class CCExprResolve;
8672
9990
class CExprResolve;
8673
9991
namespace Puma {
8674
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
9992
 
 
9993
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
9994
class CT_EnumSpec : public CT_ClassSpec {
 
9995
#line 9996 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
9996
  friend class ::WinIfExists;
8675
9997
  friend class ::WinImportHandler;
8676
9998
  friend class ::WinMacros;
8677
9999
  friend class ::CMatchSyntax;
8690
10012
  friend class ::CCExprResolve;
8691
10013
  friend class ::CExprResolve;
8692
10014
 
 
10015
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10016
 
8693
10017
public:
8694
10018
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
8695
10019
  static const char *NodeId ();
8696
10020
  const char *NodeName () const { return NodeId (); }
8697
10021
};
8698
10022
 
 
10023
 
 
10024
#line 10025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8699
10025
} // closed Puma
8700
10026
class WinIfExists;
8701
10027
class WinImportHandler;
8716
10042
class CCExprResolve;
8717
10043
class CExprResolve;
8718
10044
namespace Puma {
8719
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
10045
 
 
10046
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10047
class CT_ExceptionSpec : public CT_DeclSpec {
 
10048
#line 10049 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10049
  friend class ::WinIfExists;
8720
10050
  friend class ::WinImportHandler;
8721
10051
  friend class ::WinMacros;
8722
10052
  friend class ::CMatchSyntax;
8735
10065
  friend class ::CCExprResolve;
8736
10066
  friend class ::CExprResolve;
8737
10067
 
 
10068
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10069
 
8738
10070
  CTree *sons[2]; // throw, type_id_list
8739
10071
  
8740
10072
public:
8755
10087
/*                                                                           */
8756
10088
/*****************************************************************************/
8757
10089
 
 
10090
 
 
10091
#line 10092 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8758
10092
} // closed Puma
8759
10093
class WinIfExists;
8760
10094
class WinImportHandler;
8775
10109
class CCExprResolve;
8776
10110
class CExprResolve;
8777
10111
namespace Puma {
8778
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
 
10112
 
 
10113
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10114
class CT_Decl : public CTree {
 
10115
#line 10116 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10116
  friend class ::WinIfExists;
8779
10117
  friend class ::WinImportHandler;
8780
10118
  friend class ::WinMacros;
8781
10119
  friend class ::CMatchSyntax;
8793
10131
  friend class ::PragmaOnce;
8794
10132
  friend class ::CCExprResolve;
8795
10133
  friend class ::CExprResolve;
 
10134
 
 
10135
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
8796
10136
 
8797
10137
  CT_LinkageSpec *_linkage;
8798
10138
protected:
8802
10142
  CT_LinkageSpec *Linkage () const { return _linkage; }
8803
10143
};
8804
10144
 
 
10145
 
 
10146
#line 10147 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8805
10147
} // closed Puma
8806
10148
class WinIfExists;
8807
10149
class WinImportHandler;
8822
10164
class CCExprResolve;
8823
10165
class CExprResolve;
8824
10166
namespace Puma {
8825
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
10167
 
 
10168
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10169
class CT_Program : public CT_DeclList, public CSemScope {
 
10170
#line 10171 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10171
  friend class ::WinIfExists;
8826
10172
  friend class ::WinImportHandler;
8827
10173
  friend class ::WinMacros;
8828
10174
  friend class ::CMatchSyntax;
8841
10187
  friend class ::CCExprResolve;
8842
10188
  friend class ::CExprResolve;
8843
10189
 
 
10190
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10191
 
8844
10192
public:
8845
10193
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
8846
10194
  static const char *NodeId ();
8847
10195
  const char *NodeName () const { return NodeId (); }
8848
10196
};
8849
10197
   
 
10198
 
 
10199
#line 10200 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8850
10200
} // closed Puma
8851
10201
class WinIfExists;
8852
10202
class WinImportHandler;
8867
10217
class CCExprResolve;
8868
10218
class CExprResolve;
8869
10219
namespace Puma {
8870
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
 
10220
 
 
10221
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10222
class CT_ObjDecl : public CT_Decl {
 
10223
#line 10224 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10224
  friend class ::WinIfExists;
8871
10225
  friend class ::WinImportHandler;
8872
10226
  friend class ::WinMacros;
8873
10227
  friend class ::CMatchSyntax;
8886
10240
  friend class ::CCExprResolve;
8887
10241
  friend class ::CExprResolve;
8888
10242
 
 
10243
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10244
 
8889
10245
  CTree *sons[3]; // declspecs, declarators, colon
8890
10246
 
8891
10247
public:
8903
10259
  }
8904
10260
};
8905
10261
 
 
10262
 
 
10263
#line 10264 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8906
10264
} // closed Puma
8907
10265
class WinIfExists;
8908
10266
class WinImportHandler;
8923
10281
class CCExprResolve;
8924
10282
class CExprResolve;
8925
10283
namespace Puma {
8926
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
10284
 
 
10285
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10286
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
10287
#line 10288 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10288
  friend class ::WinIfExists;
8927
10289
  friend class ::WinImportHandler;
8928
10290
  friend class ::WinMacros;
8929
10291
  friend class ::CMatchSyntax;
8942
10304
  friend class ::CCExprResolve;
8943
10305
  friend class ::CExprResolve;
8944
10306
 
 
10307
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10308
 
8945
10309
  CTree *sons[3]; // export, param_list, decl
8946
10310
 
8947
10311
public:
8962
10326
  CTree *Declaration () const { return sons[2]; }
8963
10327
};
8964
10328
 
 
10329
 
 
10330
#line 10331 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
8965
10331
} // closed Puma
8966
10332
class WinIfExists;
8967
10333
class WinImportHandler;
8982
10348
class CCExprResolve;
8983
10349
class CExprResolve;
8984
10350
namespace Puma {
8985
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
10351
 
 
10352
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10353
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
10354
#line 10355 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10355
  friend class ::WinIfExists;
8986
10356
  friend class ::WinImportHandler;
8987
10357
  friend class ::WinMacros;
8988
10358
  friend class ::CMatchSyntax;
9001
10371
  friend class ::CCExprResolve;
9002
10372
  friend class ::CExprResolve;
9003
10373
 
 
10374
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10375
 
9004
10376
protected:
9005
10377
  CT_TemplateParamDecl () {}
9006
10378
  
9009
10381
  CSemObject *SemObject () const { return (CSemObject*)this; }
9010
10382
};
9011
10383
 
 
10384
 
 
10385
#line 10386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9012
10386
} // closed Puma
9013
10387
class WinIfExists;
9014
10388
class WinImportHandler;
9029
10403
class CCExprResolve;
9030
10404
class CExprResolve;
9031
10405
namespace Puma {
9032
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
10406
 
 
10407
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10408
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
10409
#line 10410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10410
  friend class ::WinIfExists;
9033
10411
  friend class ::WinImportHandler;
9034
10412
  friend class ::WinMacros;
9035
10413
  friend class ::CMatchSyntax;
9048
10426
  friend class ::CCExprResolve;
9049
10427
  friend class ::CExprResolve;
9050
10428
 
 
10429
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10430
 
9051
10431
  CTree *sons[3]; // declspecs, declarator, init
9052
10432
 
9053
10433
public:
9068
10448
  }
9069
10449
};
9070
10450
 
 
10451
 
 
10452
#line 10453 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9071
10453
} // closed Puma
9072
10454
class WinIfExists;
9073
10455
class WinImportHandler;
9088
10470
class CCExprResolve;
9089
10471
class CExprResolve;
9090
10472
namespace Puma {
9091
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
10473
 
 
10474
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10475
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
10476
#line 10477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10477
  friend class ::WinIfExists;
9092
10478
  friend class ::WinImportHandler;
9093
10479
  friend class ::WinMacros;
9094
10480
  friend class ::CMatchSyntax;
9107
10493
  friend class ::CCExprResolve;
9108
10494
  friend class ::CExprResolve;
9109
10495
 
 
10496
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10497
 
9110
10498
  CTree *sons[4]; // params, key, id, init
9111
10499
 
9112
10500
public:
9128
10516
  }
9129
10517
};
9130
10518
 
 
10519
 
 
10520
#line 10521 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9131
10521
} // closed Puma
9132
10522
class WinIfExists;
9133
10523
class WinImportHandler;
9148
10538
class CCExprResolve;
9149
10539
class CExprResolve;
9150
10540
namespace Puma {
9151
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
10541
 
 
10542
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10543
class CT_EnumDef : public CT_Decl, public CSemObject {
 
10544
#line 10545 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10545
  friend class ::WinIfExists;
9152
10546
  friend class ::WinImportHandler;
9153
10547
  friend class ::WinMacros;
9154
10548
  friend class ::CMatchSyntax;
9167
10561
  friend class ::CCExprResolve;
9168
10562
  friend class ::CExprResolve;
9169
10563
 
 
10564
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10565
 
9170
10566
  CTree *sons[3]; // key, name, enumerators
9171
10567
 
9172
10568
public:
9186
10582
  CSemObject *SemObject () const { return (CSemObject*)this; }
9187
10583
};
9188
10584
 
 
10585
 
 
10586
#line 10587 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9189
10587
} // closed Puma
9190
10588
class WinIfExists;
9191
10589
class WinImportHandler;
9206
10604
class CCExprResolve;
9207
10605
class CExprResolve;
9208
10606
namespace Puma {
9209
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
10607
 
 
10608
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10609
class CT_Enumerator : public CT_Decl, public CSemObject {
 
10610
#line 10611 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10611
  friend class ::WinIfExists;
9210
10612
  friend class ::WinImportHandler;
9211
10613
  friend class ::WinMacros;
9212
10614
  friend class ::CMatchSyntax;
9225
10627
  friend class ::CCExprResolve;
9226
10628
  friend class ::CExprResolve;
9227
10629
 
 
10630
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10631
 
9228
10632
  CTree *sons[2]; // name, init
9229
10633
 
9230
10634
public:
9242
10646
  CSemObject *SemObject () const { return (CSemObject*)this; }
9243
10647
};
9244
10648
 
 
10649
 
 
10650
#line 10651 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9245
10651
} // closed Puma
9246
10652
class WinIfExists;
9247
10653
class WinImportHandler;
9262
10668
class CCExprResolve;
9263
10669
class CExprResolve;
9264
10670
namespace Puma {
9265
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
10671
 
 
10672
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10673
class CT_FctDef : public CT_Decl, public CSemObject {
 
10674
#line 10675 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10675
  friend class ::WinIfExists;
9266
10676
  friend class ::WinImportHandler;
9267
10677
  friend class ::WinMacros;
9268
10678
  friend class ::CMatchSyntax;
9281
10691
  friend class ::CCExprResolve;
9282
10692
  friend class ::CExprResolve;
9283
10693
 
 
10694
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10695
 
9284
10696
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
9285
10697
 
9286
10698
public:
9311
10723
  }
9312
10724
};
9313
10725
 
 
10726
 
 
10727
#line 10728 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9314
10728
} // closed Puma
9315
10729
class WinIfExists;
9316
10730
class WinImportHandler;
9331
10745
class CCExprResolve;
9332
10746
class CExprResolve;
9333
10747
namespace Puma {
9334
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
 
10748
 
 
10749
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10750
class CT_AsmDef : public CT_Decl {
 
10751
#line 10752 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10752
  friend class ::WinIfExists;
9335
10753
  friend class ::WinImportHandler;
9336
10754
  friend class ::WinMacros;
9337
10755
  friend class ::CMatchSyntax;
9350
10768
  friend class ::CCExprResolve;
9351
10769
  friend class ::CExprResolve;
9352
10770
 
 
10771
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10772
 
9353
10773
  CTree *sons[5]; // asm, open, str, close, semi_colon
9354
10774
 
9355
10775
public:
9366
10786
  }
9367
10787
};
9368
10788
 
 
10789
 
 
10790
#line 10791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9369
10791
} // closed Puma
9370
10792
class WinIfExists;
9371
10793
class WinImportHandler;
9386
10808
class CCExprResolve;
9387
10809
class CExprResolve;
9388
10810
namespace Puma {
9389
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
10811
 
 
10812
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10813
class CT_Handler : public CT_Decl, public CSemScope {
 
10814
#line 10815 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10815
  friend class ::WinIfExists;
9390
10816
  friend class ::WinImportHandler;
9391
10817
  friend class ::WinMacros;
9392
10818
  friend class ::CMatchSyntax;
9405
10831
  friend class ::CCExprResolve;
9406
10832
  friend class ::CExprResolve;
9407
10833
 
 
10834
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10835
 
9408
10836
  CTree *sons[3]; // catch, exception_decl, stmt
9409
10837
 
9410
10838
public:
9422
10850
  }
9423
10851
};
9424
10852
 
 
10853
 
 
10854
#line 10855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9425
10855
} // closed Puma
9426
10856
class WinIfExists;
9427
10857
class WinImportHandler;
9442
10872
class CCExprResolve;
9443
10873
class CExprResolve;
9444
10874
namespace Puma {
9445
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
 
10875
 
 
10876
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10877
class CT_LinkageSpec : public CT_Decl {
 
10878
#line 10879 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10879
  friend class ::WinIfExists;
9446
10880
  friend class ::WinImportHandler;
9447
10881
  friend class ::WinMacros;
9448
10882
  friend class ::CMatchSyntax;
9461
10895
  friend class ::CCExprResolve;
9462
10896
  friend class ::CExprResolve;
9463
10897
 
 
10898
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10899
 
9464
10900
  CTree *sons[5]; // extern, str, open, decls, close
9465
10901
 
9466
10902
public:
9485
10921
  }
9486
10922
};
9487
10923
 
 
10924
 
 
10925
#line 10926 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9488
10926
} // closed Puma
9489
10927
class WinIfExists;
9490
10928
class WinImportHandler;
9505
10943
class CCExprResolve;
9506
10944
class CExprResolve;
9507
10945
namespace Puma {
9508
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
10946
 
 
10947
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10948
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
10949
#line 10950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
10950
  friend class ::WinIfExists;
9509
10951
  friend class ::WinImportHandler;
9510
10952
  friend class ::WinMacros;
9511
10953
  friend class ::CMatchSyntax;
9524
10966
  friend class ::CCExprResolve;
9525
10967
  friend class ::CExprResolve;
9526
10968
 
 
10969
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
10970
 
9527
10971
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
9528
10972
 
9529
10973
public:
9548
10992
  }
9549
10993
};
9550
10994
 
 
10995
 
 
10996
#line 10997 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9551
10997
} // closed Puma
9552
10998
class WinIfExists;
9553
10999
class WinImportHandler;
9568
11014
class CCExprResolve;
9569
11015
class CExprResolve;
9570
11016
namespace Puma {
9571
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
11017
 
 
11018
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11019
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
11020
#line 11021 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11021
  friend class ::WinIfExists;
9572
11022
  friend class ::WinImportHandler;
9573
11023
  friend class ::WinMacros;
9574
11024
  friend class ::CMatchSyntax;
9587
11037
  friend class ::CCExprResolve;
9588
11038
  friend class ::CExprResolve;
9589
11039
 
 
11040
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11041
 
9590
11042
public:
9591
11043
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
9592
11044
   CT_DeclList (size, 2) { AddProperties (props); }
9594
11046
  const char *NodeName () const { return NodeId (); }
9595
11047
};
9596
11048
 
 
11049
 
 
11050
#line 11051 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9597
11051
} // closed Puma
9598
11052
class WinIfExists;
9599
11053
class WinImportHandler;
9614
11068
class CCExprResolve;
9615
11069
class CExprResolve;
9616
11070
namespace Puma {
9617
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
11071
 
 
11072
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11073
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
11074
#line 11075 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11075
  friend class ::WinIfExists;
9618
11076
  friend class ::WinImportHandler;
9619
11077
  friend class ::WinMacros;
9620
11078
  friend class ::CMatchSyntax;
9633
11091
  friend class ::CCExprResolve;
9634
11092
  friend class ::CExprResolve;
9635
11093
 
 
11094
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11095
 
9636
11096
public:
9637
11097
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
9638
11098
  static const char *NodeId ();
9639
11099
  const char *NodeName () const { return NodeId (); }
9640
11100
};
9641
11101
 
 
11102
 
 
11103
#line 11104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9642
11104
} // closed Puma
9643
11105
class WinIfExists;
9644
11106
class WinImportHandler;
9659
11121
class CCExprResolve;
9660
11122
class CExprResolve;
9661
11123
namespace Puma {
9662
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
 
11124
 
 
11125
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11126
class CT_ArgNameList : public CT_ArgDeclList {
 
11127
#line 11128 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11128
  friend class ::WinIfExists;
9663
11129
  friend class ::WinImportHandler;
9664
11130
  friend class ::WinMacros;
9665
11131
  friend class ::CMatchSyntax;
9678
11144
  friend class ::CCExprResolve;
9679
11145
  friend class ::CExprResolve;
9680
11146
 
 
11147
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11148
 
9681
11149
public:
9682
11150
  CT_ArgNameList () : CT_ArgDeclList () {}
9683
11151
  static const char *NodeId ();
9684
11152
  const char *NodeName () const { return NodeId (); }
9685
11153
};
9686
11154
 
 
11155
 
 
11156
#line 11157 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9687
11157
} // closed Puma
9688
11158
class WinIfExists;
9689
11159
class WinImportHandler;
9704
11174
class CCExprResolve;
9705
11175
class CExprResolve;
9706
11176
namespace Puma {
9707
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
11177
 
 
11178
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11179
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
11180
#line 11181 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11181
  friend class ::WinIfExists;
9708
11182
  friend class ::WinImportHandler;
9709
11183
  friend class ::WinMacros;
9710
11184
  friend class ::CMatchSyntax;
9723
11197
  friend class ::CCExprResolve;
9724
11198
  friend class ::CExprResolve;
9725
11199
 
 
11200
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11201
 
9726
11202
  CTree *sons[3]; // ns, name, members
9727
11203
 
9728
11204
public:
9745
11221
  }
9746
11222
};
9747
11223
 
 
11224
 
 
11225
#line 11226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9748
11226
} // closed Puma
9749
11227
class WinIfExists;
9750
11228
class WinImportHandler;
9765
11243
class CCExprResolve;
9766
11244
class CExprResolve;
9767
11245
namespace Puma {
9768
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
11246
 
 
11247
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11248
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
11249
#line 11250 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11250
  friend class ::WinIfExists;
9769
11251
  friend class ::WinImportHandler;
9770
11252
  friend class ::WinMacros;
9771
11253
  friend class ::CMatchSyntax;
9784
11266
  friend class ::CCExprResolve;
9785
11267
  friend class ::CExprResolve;
9786
11268
 
 
11269
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11270
 
9787
11271
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
9788
11272
 
9789
11273
public:
9802
11286
  }
9803
11287
};
9804
11288
 
 
11289
 
 
11290
#line 11291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9805
11291
} // closed Puma
9806
11292
class WinIfExists;
9807
11293
class WinImportHandler;
9822
11308
class CCExprResolve;
9823
11309
class CExprResolve;
9824
11310
namespace Puma {
9825
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
 
11311
 
 
11312
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11313
class CT_UsingDirective : public CT_Decl {
 
11314
#line 11315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11315
  friend class ::WinIfExists;
9826
11316
  friend class ::WinImportHandler;
9827
11317
  friend class ::WinMacros;
9828
11318
  friend class ::CMatchSyntax;
9841
11331
  friend class ::CCExprResolve;
9842
11332
  friend class ::CExprResolve;
9843
11333
 
 
11334
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11335
 
9844
11336
  CTree *sons[4]; // using, ns, name, semi_colon
9845
11337
 
9846
11338
public:
9863
11355
/*                                                                           */
9864
11356
/*****************************************************************************/
9865
11357
 
 
11358
 
 
11359
#line 11360 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9866
11360
} // closed Puma
9867
11361
class WinIfExists;
9868
11362
class WinImportHandler;
9883
11377
class CCExprResolve;
9884
11378
class CExprResolve;
9885
11379
namespace Puma {
9886
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
 
11380
 
 
11381
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11382
class CT_Declarator : public CTree {
 
11383
#line 11384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11384
  friend class ::WinIfExists;
9887
11385
  friend class ::WinImportHandler;
9888
11386
  friend class ::WinMacros;
9889
11387
  friend class ::CMatchSyntax;
9902
11400
  friend class ::CCExprResolve;
9903
11401
  friend class ::CExprResolve;
9904
11402
 
 
11403
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11404
 
9905
11405
protected:
9906
11406
  CT_Declarator () {}
9907
11407
 
9914
11414
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
9915
11415
};
9916
11416
 
 
11417
 
 
11418
#line 11419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9917
11419
} // closed Puma
9918
11420
class WinIfExists;
9919
11421
class WinImportHandler;
9934
11436
class CCExprResolve;
9935
11437
class CExprResolve;
9936
11438
namespace Puma {
9937
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
11439
 
 
11440
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11441
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
11442
#line 11443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11443
  friend class ::WinIfExists;
9938
11444
  friend class ::WinImportHandler;
9939
11445
  friend class ::WinMacros;
9940
11446
  friend class ::CMatchSyntax;
9953
11459
  friend class ::CCExprResolve;
9954
11460
  friend class ::CExprResolve;
9955
11461
 
 
11462
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11463
 
9956
11464
  CTree *sons[2]; // declarator, init
9957
11465
  CTree *obj_decl;
9958
11466
 
9975
11483
  }
9976
11484
};
9977
11485
 
 
11486
 
 
11487
#line 11488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
9978
11488
} // closed Puma
9979
11489
class WinIfExists;
9980
11490
class WinImportHandler;
9995
11505
class CCExprResolve;
9996
11506
class CExprResolve;
9997
11507
namespace Puma {
9998
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
11508
 
 
11509
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11510
class CT_BracedDeclarator : public CT_Declarator {
 
11511
#line 11512 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11512
  friend class ::WinIfExists;
9999
11513
  friend class ::WinImportHandler;
10000
11514
  friend class ::WinMacros;
10001
11515
  friend class ::CMatchSyntax;
10014
11528
  friend class ::CCExprResolve;
10015
11529
  friend class ::CExprResolve;
10016
11530
 
 
11531
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11532
 
10017
11533
  CTree *sons[4]; // open, win_specs, declarator, close
10018
11534
 
10019
11535
public:
10033
11549
  }
10034
11550
};
10035
11551
 
 
11552
 
 
11553
#line 11554 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10036
11554
} // closed Puma
10037
11555
class WinIfExists;
10038
11556
class WinImportHandler;
10053
11571
class CCExprResolve;
10054
11572
class CExprResolve;
10055
11573
namespace Puma {
10056
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
 
11574
 
 
11575
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11576
class CT_ArrayDelimiter : public CTree {
 
11577
#line 11578 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11578
  friend class ::WinIfExists;
10057
11579
  friend class ::WinImportHandler;
10058
11580
  friend class ::WinMacros;
10059
11581
  friend class ::CMatchSyntax;
10072
11594
  friend class ::CCExprResolve;
10073
11595
  friend class ::CExprResolve;
10074
11596
 
 
11597
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11598
 
10075
11599
  CTree *sons[4]; // star, static, quals, expr
10076
11600
  bool pos0;
10077
11601
 
10092
11616
  }
10093
11617
};
10094
11618
 
 
11619
 
 
11620
#line 11621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10095
11621
} // closed Puma
10096
11622
class WinIfExists;
10097
11623
class WinImportHandler;
10112
11638
class CCExprResolve;
10113
11639
class CExprResolve;
10114
11640
namespace Puma {
10115
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
 
11641
 
 
11642
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11643
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
11644
#line 11645 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11645
  friend class ::WinIfExists;
10116
11646
  friend class ::WinImportHandler;
10117
11647
  friend class ::WinMacros;
10118
11648
  friend class ::CMatchSyntax;
10131
11661
  friend class ::CCExprResolve;
10132
11662
  friend class ::CExprResolve;
10133
11663
 
 
11664
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11665
 
10134
11666
  CTree *sons[4]; // declarator, open, delim, close
10135
11667
 
10136
11668
public:
10152
11684
  CSemValue *SemValue () const { return (CSemValue*)this; }
10153
11685
};
10154
11686
 
 
11687
 
 
11688
#line 11689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10155
11689
} // closed Puma
10156
11690
class WinIfExists;
10157
11691
class WinImportHandler;
10172
11706
class CCExprResolve;
10173
11707
class CExprResolve;
10174
11708
namespace Puma {
10175
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
11709
 
 
11710
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11711
class CT_FctDeclarator : public CT_Declarator {
 
11712
#line 11713 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11713
  friend class ::WinIfExists;
10176
11714
  friend class ::WinImportHandler;
10177
11715
  friend class ::WinMacros;
10178
11716
  friend class ::CMatchSyntax;
10191
11729
  friend class ::CCExprResolve;
10192
11730
  friend class ::CExprResolve;
10193
11731
 
 
11732
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11733
 
10194
11734
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
10195
11735
 
10196
11736
public:
10210
11750
  }
10211
11751
};
10212
11752
 
 
11753
 
 
11754
#line 11755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10213
11755
} // closed Puma
10214
11756
class WinIfExists;
10215
11757
class WinImportHandler;
10230
11772
class CCExprResolve;
10231
11773
class CExprResolve;
10232
11774
namespace Puma {
10233
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
11775
 
 
11776
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11777
class CT_RefDeclarator : public CT_Declarator {
 
11778
#line 11779 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11779
  friend class ::WinIfExists;
10234
11780
  friend class ::WinImportHandler;
10235
11781
  friend class ::WinMacros;
10236
11782
  friend class ::CMatchSyntax;
10249
11795
  friend class ::CCExprResolve;
10250
11796
  friend class ::CExprResolve;
10251
11797
 
 
11798
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11799
 
10252
11800
  CTree *sons[2]; // ref, declarator
10253
11801
 
10254
11802
public:
10263
11811
  }
10264
11812
};
10265
11813
 
 
11814
 
 
11815
#line 11816 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10266
11816
} // closed Puma
10267
11817
class WinIfExists;
10268
11818
class WinImportHandler;
10283
11833
class CCExprResolve;
10284
11834
class CExprResolve;
10285
11835
namespace Puma {
10286
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
11836
 
 
11837
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11838
class CT_PtrDeclarator : public CT_Declarator {
 
11839
#line 11840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11840
  friend class ::WinIfExists;
10287
11841
  friend class ::WinImportHandler;
10288
11842
  friend class ::WinMacros;
10289
11843
  friend class ::CMatchSyntax;
10302
11856
  friend class ::CCExprResolve;
10303
11857
  friend class ::CExprResolve;
10304
11858
 
 
11859
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11860
 
10305
11861
  CTree *sons[3]; // ptr, cv_quals, declarator
10306
11862
 
10307
11863
public:
10319
11875
  }
10320
11876
};
10321
11877
 
 
11878
 
 
11879
#line 11880 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10322
11880
} // closed Puma
10323
11881
class WinIfExists;
10324
11882
class WinImportHandler;
10339
11897
class CCExprResolve;
10340
11898
class CExprResolve;
10341
11899
namespace Puma {
10342
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
11900
 
 
11901
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11902
class CT_MembPtrDeclarator : public CT_Declarator {
 
11903
#line 11904 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11904
  friend class ::WinIfExists;
10343
11905
  friend class ::WinImportHandler;
10344
11906
  friend class ::WinMacros;
10345
11907
  friend class ::CMatchSyntax;
10358
11920
  friend class ::CCExprResolve;
10359
11921
  friend class ::CExprResolve;
10360
11922
 
 
11923
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11924
 
10361
11925
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
10362
11926
 
10363
11927
public:
10376
11940
  }
10377
11941
};
10378
11942
 
 
11943
 
 
11944
#line 11945 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10379
11945
} // closed Puma
10380
11946
class WinIfExists;
10381
11947
class WinImportHandler;
10396
11962
class CCExprResolve;
10397
11963
class CExprResolve;
10398
11964
namespace Puma {
10399
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
11965
 
 
11966
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11967
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
11968
#line 11969 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
11969
  friend class ::WinIfExists;
10400
11970
  friend class ::WinImportHandler;
10401
11971
  friend class ::WinMacros;
10402
11972
  friend class ::CMatchSyntax;
10415
11985
  friend class ::CCExprResolve;
10416
11986
  friend class ::CExprResolve;
10417
11987
 
 
11988
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
11989
 
10418
11990
  CTree *sons[3]; // declarator, colon, expr
10419
11991
 
10420
11992
public:
10440
12012
/*                                                                           */
10441
12013
/*****************************************************************************/
10442
12014
 
 
12015
 
 
12016
#line 12017 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10443
12017
} // closed Puma
10444
12018
class WinIfExists;
10445
12019
class WinImportHandler;
10460
12034
class CCExprResolve;
10461
12035
class CExprResolve;
10462
12036
namespace Puma {
10463
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
 
12037
 
 
12038
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12039
class CT_Statement : public CTree {
 
12040
#line 12041 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12041
  friend class ::WinIfExists;
10464
12042
  friend class ::WinImportHandler;
10465
12043
  friend class ::WinMacros;
10466
12044
  friend class ::CMatchSyntax;
10478
12056
  friend class ::PragmaOnce;
10479
12057
  friend class ::CCExprResolve;
10480
12058
  friend class ::CExprResolve;
 
12059
 
 
12060
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
10481
12061
 
10482
12062
protected:
10483
12063
  CT_Statement () {}
10484
12064
};
10485
12065
 
 
12066
 
 
12067
#line 12068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10486
12068
} // closed Puma
10487
12069
class WinIfExists;
10488
12070
class WinImportHandler;
10503
12085
class CCExprResolve;
10504
12086
class CExprResolve;
10505
12087
namespace Puma {
10506
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
 
12088
 
 
12089
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12090
class CT_LabelStmt : public CT_Statement {
 
12091
#line 12092 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12092
  friend class ::WinIfExists;
10507
12093
  friend class ::WinImportHandler;
10508
12094
  friend class ::WinMacros;
10509
12095
  friend class ::CMatchSyntax;
10522
12108
  friend class ::CCExprResolve;
10523
12109
  friend class ::CExprResolve;
10524
12110
 
 
12111
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12112
 
10525
12113
  CTree *sons[3]; // id, colon, stmt
10526
12114
 
10527
12115
public:
10539
12127
  }
10540
12128
};
10541
12129
 
 
12130
 
 
12131
#line 12132 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10542
12132
} // closed Puma
10543
12133
class WinIfExists;
10544
12134
class WinImportHandler;
10559
12149
class CCExprResolve;
10560
12150
class CExprResolve;
10561
12151
namespace Puma {
10562
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
 
12152
 
 
12153
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12154
class CT_DefaultStmt : public CT_Statement {
 
12155
#line 12156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12156
  friend class ::WinIfExists;
10563
12157
  friend class ::WinImportHandler;
10564
12158
  friend class ::WinMacros;
10565
12159
  friend class ::CMatchSyntax;
10578
12172
  friend class ::CCExprResolve;
10579
12173
  friend class ::CExprResolve;
10580
12174
 
 
12175
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12176
 
10581
12177
  CTree *sons[3]; // keyword, colon, stmt
10582
12178
 
10583
12179
public:
10594
12190
  }
10595
12191
};
10596
12192
 
 
12193
 
 
12194
#line 12195 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10597
12195
} // closed Puma
10598
12196
class WinIfExists;
10599
12197
class WinImportHandler;
10614
12212
class CCExprResolve;
10615
12213
class CExprResolve;
10616
12214
namespace Puma {
10617
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
 
12215
 
 
12216
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12217
class CT_TryStmt : public CT_Statement {
 
12218
#line 12219 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12219
  friend class ::WinIfExists;
10618
12220
  friend class ::WinImportHandler;
10619
12221
  friend class ::WinMacros;
10620
12222
  friend class ::CMatchSyntax;
10633
12235
  friend class ::CCExprResolve;
10634
12236
  friend class ::CExprResolve;
10635
12237
 
 
12238
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12239
 
10636
12240
  CTree *sons[3]; // try, stmt, handlers
10637
12241
 
10638
12242
public:
10650
12254
  }
10651
12255
};
10652
12256
 
 
12257
 
 
12258
#line 12259 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10653
12259
} // closed Puma
10654
12260
class WinIfExists;
10655
12261
class WinImportHandler;
10670
12276
class CCExprResolve;
10671
12277
class CExprResolve;
10672
12278
namespace Puma {
10673
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
 
12279
 
 
12280
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12281
class CT_CaseStmt : public CT_Statement {
 
12282
#line 12283 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12283
  friend class ::WinIfExists;
10674
12284
  friend class ::WinImportHandler;
10675
12285
  friend class ::WinMacros;
10676
12286
  friend class ::CMatchSyntax;
10689
12299
  friend class ::CCExprResolve;
10690
12300
  friend class ::CExprResolve;
10691
12301
 
 
12302
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12303
 
10692
12304
  CTree *sons[4]; // keyword, expr, colon, stmt
10693
12305
 
10694
12306
public:
10706
12318
  }
10707
12319
};
10708
12320
 
 
12321
 
 
12322
#line 12323 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10709
12323
} // closed Puma
10710
12324
class WinIfExists;
10711
12325
class WinImportHandler;
10726
12340
class CCExprResolve;
10727
12341
class CExprResolve;
10728
12342
namespace Puma {
10729
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
 
12343
 
 
12344
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12345
class CT_ExprStmt : public CT_Statement {
 
12346
#line 12347 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12347
  friend class ::WinIfExists;
10730
12348
  friend class ::WinImportHandler;
10731
12349
  friend class ::WinMacros;
10732
12350
  friend class ::CMatchSyntax;
10745
12363
  friend class ::CCExprResolve;
10746
12364
  friend class ::CExprResolve;
10747
12365
 
 
12366
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12367
 
10748
12368
  CTree *sons[2]; // expr, semi_colon
10749
12369
 
10750
12370
public:
10759
12379
  }
10760
12380
};
10761
12381
 
 
12382
 
 
12383
#line 12384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10762
12384
} // closed Puma
10763
12385
class WinIfExists;
10764
12386
class WinImportHandler;
10779
12401
class CCExprResolve;
10780
12402
class CExprResolve;
10781
12403
namespace Puma {
10782
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
 
12404
 
 
12405
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12406
class CT_DeclStmt : public CT_Statement {
 
12407
#line 12408 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12408
  friend class ::WinIfExists;
10783
12409
  friend class ::WinImportHandler;
10784
12410
  friend class ::WinMacros;
10785
12411
  friend class ::CMatchSyntax;
10798
12424
  friend class ::CCExprResolve;
10799
12425
  friend class ::CExprResolve;
10800
12426
 
 
12427
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12428
 
10801
12429
  CTree *_decl;
10802
12430
 
10803
12431
public:
10810
12438
   { if (old_son == _decl) _decl = new_son; }
10811
12439
};
10812
12440
 
 
12441
 
 
12442
#line 12443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10813
12443
} // closed Puma
10814
12444
class WinIfExists;
10815
12445
class WinImportHandler;
10830
12460
class CCExprResolve;
10831
12461
class CExprResolve;
10832
12462
namespace Puma {
10833
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
12463
 
 
12464
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12465
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
12466
#line 12467 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12467
  friend class ::WinIfExists;
10834
12468
  friend class ::WinImportHandler;
10835
12469
  friend class ::WinMacros;
10836
12470
  friend class ::CMatchSyntax;
10849
12483
  friend class ::CCExprResolve;
10850
12484
  friend class ::CExprResolve;
10851
12485
 
 
12486
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12487
 
10852
12488
  CTree *sons[5]; // keyword, open, cond, close, stmt
10853
12489
 
10854
12490
public:
10866
12502
  }
10867
12503
};
10868
12504
 
 
12505
 
 
12506
#line 12507 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10869
12507
} // closed Puma
10870
12508
class WinIfExists;
10871
12509
class WinImportHandler;
10886
12524
class CCExprResolve;
10887
12525
class CExprResolve;
10888
12526
namespace Puma {
10889
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
12527
 
 
12528
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12529
class CT_IfStmt : public CT_Statement, public CSemScope {
 
12530
#line 12531 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12531
  friend class ::WinIfExists;
10890
12532
  friend class ::WinImportHandler;
10891
12533
  friend class ::WinMacros;
10892
12534
  friend class ::CMatchSyntax;
10905
12547
  friend class ::CCExprResolve;
10906
12548
  friend class ::CExprResolve;
10907
12549
 
 
12550
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12551
 
10908
12552
  CTree *sons[5]; // keyword, open, cond, close, stmt
10909
12553
 
10910
12554
public:
10922
12566
  }
10923
12567
};
10924
12568
 
 
12569
 
 
12570
#line 12571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10925
12571
} // closed Puma
10926
12572
class WinIfExists;
10927
12573
class WinImportHandler;
10942
12588
class CCExprResolve;
10943
12589
class CExprResolve;
10944
12590
namespace Puma {
10945
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
12591
 
 
12592
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12593
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
12594
#line 12595 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12595
  friend class ::WinIfExists;
10946
12596
  friend class ::WinImportHandler;
10947
12597
  friend class ::WinMacros;
10948
12598
  friend class ::CMatchSyntax;
10961
12611
  friend class ::CCExprResolve;
10962
12612
  friend class ::CExprResolve;
10963
12613
 
 
12614
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12615
 
10964
12616
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
10965
12617
 
10966
12618
public:
10981
12633
  }
10982
12634
};
10983
12635
 
 
12636
 
 
12637
#line 12638 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
10984
12638
} // closed Puma
10985
12639
class WinIfExists;
10986
12640
class WinImportHandler;
11001
12655
class CCExprResolve;
11002
12656
class CExprResolve;
11003
12657
namespace Puma {
11004
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
 
12658
 
 
12659
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12660
class CT_BreakStmt : public CT_Statement {
 
12661
#line 12662 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12662
  friend class ::WinIfExists;
11005
12663
  friend class ::WinImportHandler;
11006
12664
  friend class ::WinMacros;
11007
12665
  friend class ::CMatchSyntax;
11020
12678
  friend class ::CCExprResolve;
11021
12679
  friend class ::CExprResolve;
11022
12680
 
 
12681
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12682
 
11023
12683
  CTree *sons[2]; // key, semi_colon
11024
12684
 
11025
12685
public:
11033
12693
  }
11034
12694
};
11035
12695
 
 
12696
 
 
12697
#line 12698 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11036
12698
} // closed Puma
11037
12699
class WinIfExists;
11038
12700
class WinImportHandler;
11053
12715
class CCExprResolve;
11054
12716
class CExprResolve;
11055
12717
namespace Puma {
11056
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
 
12718
 
 
12719
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12720
class CT_ContinueStmt : public CT_Statement {
 
12721
#line 12722 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12722
  friend class ::WinIfExists;
11057
12723
  friend class ::WinImportHandler;
11058
12724
  friend class ::WinMacros;
11059
12725
  friend class ::CMatchSyntax;
11072
12738
  friend class ::CCExprResolve;
11073
12739
  friend class ::CExprResolve;
11074
12740
 
 
12741
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12742
 
11075
12743
  CTree *sons[2]; // key, semi_colon
11076
12744
 
11077
12745
public:
11085
12753
  }
11086
12754
};
11087
12755
 
 
12756
 
 
12757
#line 12758 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11088
12758
} // closed Puma
11089
12759
class WinIfExists;
11090
12760
class WinImportHandler;
11105
12775
class CCExprResolve;
11106
12776
class CExprResolve;
11107
12777
namespace Puma {
11108
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
 
12778
 
 
12779
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12780
class CT_GotoStmt : public CT_Statement {
 
12781
#line 12782 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12782
  friend class ::WinIfExists;
11109
12783
  friend class ::WinImportHandler;
11110
12784
  friend class ::WinMacros;
11111
12785
  friend class ::CMatchSyntax;
11124
12798
  friend class ::CCExprResolve;
11125
12799
  friend class ::CExprResolve;
11126
12800
 
 
12801
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12802
 
11127
12803
  CTree *sons[3]; // key, label, semi_colon
11128
12804
 
11129
12805
public:
11140
12816
  }
11141
12817
};
11142
12818
 
 
12819
 
 
12820
#line 12821 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11143
12821
} // closed Puma
11144
12822
class WinIfExists;
11145
12823
class WinImportHandler;
11160
12838
class CCExprResolve;
11161
12839
class CExprResolve;
11162
12840
namespace Puma {
11163
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
 
12841
 
 
12842
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12843
class CT_ReturnStmt : public CT_Statement {
 
12844
#line 12845 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12845
  friend class ::WinIfExists;
11164
12846
  friend class ::WinImportHandler;
11165
12847
  friend class ::WinMacros;
11166
12848
  friend class ::CMatchSyntax;
11179
12861
  friend class ::CCExprResolve;
11180
12862
  friend class ::CExprResolve;
11181
12863
 
 
12864
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12865
 
11182
12866
  CTree *sons[3]; // key, expr, semi_colon
11183
12867
 
11184
12868
public:
11195
12879
  }
11196
12880
};
11197
12881
 
 
12882
 
 
12883
#line 12884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11198
12884
} // closed Puma
11199
12885
class WinIfExists;
11200
12886
class WinImportHandler;
11215
12901
class CCExprResolve;
11216
12902
class CExprResolve;
11217
12903
namespace Puma {
11218
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
12904
 
 
12905
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12906
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
12907
#line 12908 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12908
  friend class ::WinIfExists;
11219
12909
  friend class ::WinImportHandler;
11220
12910
  friend class ::WinMacros;
11221
12911
  friend class ::CMatchSyntax;
11234
12924
  friend class ::CCExprResolve;
11235
12925
  friend class ::CExprResolve;
11236
12926
 
 
12927
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12928
 
11237
12929
  CTree *sons[5]; // key, open, cond, close, stmt
11238
12930
 
11239
12931
public:
11251
12943
  }
11252
12944
};
11253
12945
 
 
12946
 
 
12947
#line 12948 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11254
12948
} // closed Puma
11255
12949
class WinIfExists;
11256
12950
class WinImportHandler;
11271
12965
class CCExprResolve;
11272
12966
class CExprResolve;
11273
12967
namespace Puma {
11274
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
 
12968
 
 
12969
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12970
class CT_DoStmt : public CT_Statement {
 
12971
#line 12972 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
12972
  friend class ::WinIfExists;
11275
12973
  friend class ::WinImportHandler;
11276
12974
  friend class ::WinMacros;
11277
12975
  friend class ::CMatchSyntax;
11290
12988
  friend class ::CCExprResolve;
11291
12989
  friend class ::CExprResolve;
11292
12990
 
 
12991
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
12992
 
11293
12993
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
11294
12994
 
11295
12995
public:
11309
13009
  }
11310
13010
};
11311
13011
 
 
13012
 
 
13013
#line 13014 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11312
13014
} // closed Puma
11313
13015
class WinIfExists;
11314
13016
class WinImportHandler;
11329
13031
class CCExprResolve;
11330
13032
class CExprResolve;
11331
13033
namespace Puma {
11332
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
13034
 
 
13035
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13036
class CT_ForStmt : public CT_Statement, public CSemScope {
 
13037
#line 13038 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13038
  friend class ::WinIfExists;
11333
13039
  friend class ::WinImportHandler;
11334
13040
  friend class ::WinMacros;
11335
13041
  friend class ::CMatchSyntax;
11348
13054
  friend class ::CCExprResolve;
11349
13055
  friend class ::CExprResolve;
11350
13056
 
 
13057
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13058
 
11351
13059
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
11352
13060
 
11353
13061
public:
11369
13077
  }
11370
13078
};
11371
13079
 
 
13080
 
 
13081
#line 13082 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11372
13082
} // closed Puma
11373
13083
class WinIfExists;
11374
13084
class WinImportHandler;
11389
13099
class CCExprResolve;
11390
13100
class CExprResolve;
11391
13101
namespace Puma {
11392
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
13102
 
 
13103
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13104
class CT_Condition : public CT_Decl, public CSemObject {
 
13105
#line 13106 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13106
  friend class ::WinIfExists;
11393
13107
  friend class ::WinImportHandler;
11394
13108
  friend class ::WinMacros;
11395
13109
  friend class ::CMatchSyntax;
11408
13122
  friend class ::CCExprResolve;
11409
13123
  friend class ::CExprResolve;
11410
13124
 
 
13125
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13126
 
11411
13127
  CTree *sons[3]; // declspecs, declarator, init
11412
13128
 
11413
13129
public:
11434
13150
/*                                                                           */
11435
13151
/*****************************************************************************/
11436
13152
 
 
13153
 
 
13154
#line 13155 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11437
13155
} // closed Puma
11438
13156
class WinIfExists;
11439
13157
class WinImportHandler;
11454
13172
class CCExprResolve;
11455
13173
class CExprResolve;
11456
13174
namespace Puma {
11457
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
13175
 
 
13176
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13177
class CT_ClassDef : public CT_Decl, public CSemObject {
 
13178
#line 13179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13179
  friend class ::WinIfExists;
11458
13180
  friend class ::WinImportHandler;
11459
13181
  friend class ::WinMacros;
11460
13182
  friend class ::CMatchSyntax;
11473
13195
  friend class ::CCExprResolve;
11474
13196
  friend class ::CExprResolve;
11475
13197
 
 
13198
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13199
 
11476
13200
   
 
13201
#line 13202 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13202
 
11477
13203
  struct __ac_wrapper_sons {
11478
13204
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
11479
13205
    operator A& () { return _data; }
11486
13212
    operator const void* () const { return _data; }
11487
13213
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
11488
13214
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
11489
 
  } sons; // key, name, bases, members
 
13215
  } sons
 
13216
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13217
 
 
13218
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13219
; // key, name, bases, members
11490
13220
  CTree *obj_decl;
11491
13221
 
11492
13222
public:
11493
13223
  
 
13224
#line 13225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13225
 
11494
13226
 
11495
13227
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
11496
13228
  typedef void Result;
11526
13258
 
11527
13259
};
11528
13260
 
11529
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
 
13261
 
 
13262
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13263
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
13264
#line 13265 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13265
{
11530
13266
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
11531
13267
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
11532
13268
this->__exec_old_C1(arg0, arg1, arg2);
11533
13269
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
11534
13270
 
11535
13271
}
11536
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
 
13272
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
13273
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13274
{
11537
13275
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
11538
13276
  }
11539
13277
  static const char *NodeId ();
11553
13291
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
11554
13292
  }
11555
13293
   private:
 
13294
 
 
13295
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
11556
13296
 CTree * _intro_members ;
11557
13297
public :
11558
13298
CTree * IntroMembers ( ) const { return _intro_members ; }
11559
13299
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
13300
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13301
 
 
13302
#line 13303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13303
 
11560
13304
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
11561
13305
  typedef void Result;
11562
13306
  typedef ::Puma::CT_ClassDef That;
11584
13328
};
11585
13329
 
11586
13330
 
 
13331
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13332
 
 
13333
#line 13334 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13334
 
11587
13335
public:
11588
13336
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
11589
13337
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
11592
13340
 
11593
13341
}
11594
13342
 
 
13343
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13344
 
 
13345
#line 13346 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13346
 
11595
13347
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
11596
13348
  typedef void Result;
11597
13349
  typedef ::Puma::CT_ClassDef That;
11615
13367
};
11616
13368
 
11617
13369
 
 
13370
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13371
 
 
13372
#line 13373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13373
 
11618
13374
public:
11619
13375
inline ~CT_ClassDef () {
11620
13376
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
11622
13378
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
11623
13379
 
11624
13380
}
 
13381
 
 
13382
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
11625
13383
};
11626
13384
      
 
13385
 
 
13386
#line 13387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11627
13387
} // closed Puma
11628
13388
class WinIfExists;
11629
13389
class WinImportHandler;
11644
13404
class CCExprResolve;
11645
13405
class CExprResolve;
11646
13406
namespace Puma {
11647
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
 
13407
 
 
13408
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13409
class CT_UnionDef : public CT_ClassDef {
 
13410
#line 13411 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13411
  friend class ::WinIfExists;
11648
13412
  friend class ::WinImportHandler;
11649
13413
  friend class ::WinMacros;
11650
13414
  friend class ::CMatchSyntax;
11663
13427
  friend class ::CCExprResolve;
11664
13428
  friend class ::CExprResolve;
11665
13429
 
 
13430
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13431
 
11666
13432
public:
11667
13433
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
11668
13434
  static const char *NodeId ();
11669
13435
  const char *NodeName () const { return NodeId (); }
11670
13436
};
11671
13437
      
 
13438
 
 
13439
#line 13440 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11672
13440
} // closed Puma
11673
13441
class WinIfExists;
11674
13442
class WinImportHandler;
11689
13457
class CCExprResolve;
11690
13458
class CExprResolve;
11691
13459
namespace Puma {
11692
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
13460
 
 
13461
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13462
class CT_MembList : public CT_DeclList, public CSemScope {
 
13463
#line 13464 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13464
  friend class ::WinIfExists;
11693
13465
  friend class ::WinImportHandler;
11694
13466
  friend class ::WinMacros;
11695
13467
  friend class ::CMatchSyntax;
11708
13480
  friend class ::CCExprResolve;
11709
13481
  friend class ::CExprResolve;
11710
13482
 
 
13483
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13484
 
11711
13485
public:
11712
13486
  CT_MembList (int size = 10, int incr = 10) : 
11713
13487
    CT_DeclList (size, incr) {}
11715
13489
  const char *NodeName () const { return NodeId (); }
11716
13490
};
11717
13491
 
 
13492
 
 
13493
#line 13494 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11718
13494
} // closed Puma
11719
13495
class WinIfExists;
11720
13496
class WinImportHandler;
11735
13511
class CCExprResolve;
11736
13512
class CExprResolve;
11737
13513
namespace Puma {
11738
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
13514
 
 
13515
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13516
class CT_MembInitList : public CT_List, public CSemScope {
 
13517
#line 13518 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13518
  friend class ::WinIfExists;
11739
13519
  friend class ::WinImportHandler;
11740
13520
  friend class ::WinMacros;
11741
13521
  friend class ::CMatchSyntax;
11754
13534
  friend class ::CCExprResolve;
11755
13535
  friend class ::CExprResolve;
11756
13536
 
 
13537
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13538
 
11757
13539
public:
11758
13540
  CT_MembInitList (int size = 2) : 
11759
13541
    CT_List (size, 2, CT_List::OPEN) {}
11761
13543
  const char *NodeName () const { return NodeId (); }
11762
13544
};
11763
13545
 
 
13546
 
 
13547
#line 13548 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11764
13548
} // closed Puma
11765
13549
class WinIfExists;
11766
13550
class WinImportHandler;
11781
13565
class CCExprResolve;
11782
13566
class CExprResolve;
11783
13567
namespace Puma {
11784
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
13568
 
 
13569
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13570
class CT_MembInit : public CT_Expression, public CSemObject {
 
13571
#line 13572 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13572
  friend class ::WinIfExists;
11785
13573
  friend class ::WinImportHandler;
11786
13574
  friend class ::WinMacros;
11787
13575
  friend class ::CMatchSyntax;
11800
13588
  friend class ::CCExprResolve;
11801
13589
  friend class ::CExprResolve;
11802
13590
 
 
13591
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13592
 
11803
13593
  CTree *sons[2]; // name, init
11804
13594
 
11805
13595
public:
11816
13606
  CSemObject *SemObject () const { return (CSemObject*)this; }
11817
13607
   private:
11818
13608
  typedef CT_MembInit CCExprResolveExpr;
 
13609
 
 
13610
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
11819
13611
 public :
11820
13612
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
11821
13613
  typedef CT_MembInit CExprResolveExpr;
 
13614
 
 
13615
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
11822
13616
 public :
11823
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
11824
 
 
 
13617
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
13618
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13619
};
 
13620
 
 
13621
 
 
13622
#line 13623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11825
13623
} // closed Puma
11826
13624
class WinIfExists;
11827
13625
class WinImportHandler;
11842
13640
class CCExprResolve;
11843
13641
class CExprResolve;
11844
13642
namespace Puma {
11845
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
 
13643
 
 
13644
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13645
class CT_BaseSpecList : public CT_List {
 
13646
#line 13647 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13647
  friend class ::WinIfExists;
11846
13648
  friend class ::WinImportHandler;
11847
13649
  friend class ::WinMacros;
11848
13650
  friend class ::CMatchSyntax;
11861
13663
  friend class ::CCExprResolve;
11862
13664
  friend class ::CExprResolve;
11863
13665
 
 
13666
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13667
 
11864
13668
public:
11865
13669
  CT_BaseSpecList (int size = 2) : 
11866
13670
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
11868
13672
  const char *NodeName () const { return NodeId (); }
11869
13673
};
11870
13674
 
 
13675
 
 
13676
#line 13677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11871
13677
} // closed Puma
11872
13678
class WinIfExists;
11873
13679
class WinImportHandler;
11888
13694
class CCExprResolve;
11889
13695
class CExprResolve;
11890
13696
namespace Puma {
11891
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
 
13697
 
 
13698
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13699
class CT_AccessSpec : public CTree {
 
13700
#line 13701 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13701
  friend class ::WinIfExists;
11892
13702
  friend class ::WinImportHandler;
11893
13703
  friend class ::WinMacros;
11894
13704
  friend class ::CMatchSyntax;
11907
13717
  friend class ::CCExprResolve;
11908
13718
  friend class ::CExprResolve;
11909
13719
 
 
13720
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13721
 
11910
13722
  CTree *sons[2]; // access, colon
11911
13723
 
11912
13724
public:
11921
13733
  }
11922
13734
};
11923
13735
 
 
13736
 
 
13737
#line 13738 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11924
13738
} // closed Puma
11925
13739
class WinIfExists;
11926
13740
class WinImportHandler;
11941
13755
class CCExprResolve;
11942
13756
class CExprResolve;
11943
13757
namespace Puma {
11944
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
 
13758
 
 
13759
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13760
class CT_BaseSpec : public CTree {
 
13761
#line 13762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13762
  friend class ::WinIfExists;
11945
13763
  friend class ::WinImportHandler;
11946
13764
  friend class ::WinMacros;
11947
13765
  friend class ::CMatchSyntax;
11960
13778
  friend class ::CCExprResolve;
11961
13779
  friend class ::CExprResolve;
11962
13780
 
 
13781
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13782
 
11963
13783
  CTree *sons[3]; // virtual, access, name
11964
13784
 
11965
13785
public:
11979
13799
  }
11980
13800
};
11981
13801
 
 
13802
 
 
13803
#line 13804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
11982
13804
} // closed Puma
11983
13805
class WinIfExists;
11984
13806
class WinImportHandler;
11999
13821
class CCExprResolve;
12000
13822
class CExprResolve;
12001
13823
namespace Puma {
12002
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
 
13824
 
 
13825
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13826
class CT_AccessDecl : public CT_Decl {
 
13827
#line 13828 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13828
  friend class ::WinIfExists;
12003
13829
  friend class ::WinImportHandler;
12004
13830
  friend class ::WinMacros;
12005
13831
  friend class ::CMatchSyntax;
12018
13844
  friend class ::CCExprResolve;
12019
13845
  friend class ::CExprResolve;
12020
13846
 
 
13847
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13848
 
12021
13849
  CTree *sons[2]; // name, semi_colon
12022
13850
 
12023
13851
public:
12032
13860
  }
12033
13861
};
12034
13862
 
 
13863
 
 
13864
#line 13865 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12035
13865
} // closed Puma
12036
13866
class WinIfExists;
12037
13867
class WinImportHandler;
12052
13882
class CCExprResolve;
12053
13883
class CExprResolve;
12054
13884
namespace Puma {
12055
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
 
13885
 
 
13886
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13887
class CT_UsingDecl : public CT_AccessDecl {
 
13888
#line 13889 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13889
  friend class ::WinIfExists;
12056
13890
  friend class ::WinImportHandler;
12057
13891
  friend class ::WinMacros;
12058
13892
  friend class ::CMatchSyntax;
12071
13905
  friend class ::CCExprResolve;
12072
13906
  friend class ::CExprResolve;
12073
13907
 
 
13908
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13909
 
12074
13910
  CTree *sons[2]; // using, typename
12075
13911
 
12076
13912
public:
12101
13937
/*                                                                           */
12102
13938
/*****************************************************************************/
12103
13939
 
 
13940
 
 
13941
#line 13942 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12104
13942
} // closed Puma
12105
13943
class WinIfExists;
12106
13944
class WinImportHandler;
12121
13959
class CCExprResolve;
12122
13960
class CExprResolve;
12123
13961
namespace Puma {
12124
 
class CT_Any : public CTree {  friend class ::WinIfExists;
 
13962
 
 
13963
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13964
class CT_Any : public CTree {
 
13965
#line 13966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
13966
  friend class ::WinIfExists;
12125
13967
  friend class ::WinImportHandler;
12126
13968
  friend class ::WinMacros;
12127
13969
  friend class ::CMatchSyntax;
12140
13982
  friend class ::CCExprResolve;
12141
13983
  friend class ::CExprResolve;
12142
13984
 
 
13985
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
13986
 
12143
13987
  CTree *sons[2]; // keyword, extension
12144
13988
 
12145
13989
public:
12155
13999
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
12156
14000
};
12157
14001
 
 
14002
 
 
14003
#line 14004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12158
14004
} // closed Puma
12159
14005
class WinIfExists;
12160
14006
class WinImportHandler;
12175
14021
class CCExprResolve;
12176
14022
class CExprResolve;
12177
14023
namespace Puma {
12178
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
 
14024
 
 
14025
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
14026
class CT_AnyList : public CT_Any {
 
14027
#line 14028 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14028
  friend class ::WinIfExists;
12179
14029
  friend class ::WinImportHandler;
12180
14030
  friend class ::WinMacros;
12181
14031
  friend class ::CMatchSyntax;
12194
14044
  friend class ::CCExprResolve;
12195
14045
  friend class ::CExprResolve;
12196
14046
 
 
14047
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
14048
 
12197
14049
public:
12198
14050
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
12199
14051
  static const char *NodeId ();
12200
14052
  const char *NodeName () const { return NodeId (); }
12201
14053
};
12202
14054
 
 
14055
 
 
14056
#line 14057 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12203
14057
} // closed Puma
12204
14058
class WinIfExists;
12205
14059
class WinImportHandler;
12220
14074
class CCExprResolve;
12221
14075
class CExprResolve;
12222
14076
namespace Puma {
12223
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
 
14077
 
 
14078
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
14079
class CT_AnyExtension : public CTree, public CSemValue {
 
14080
#line 14081 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14081
  friend class ::WinIfExists;
12224
14082
  friend class ::WinImportHandler;
12225
14083
  friend class ::WinMacros;
12226
14084
  friend class ::CMatchSyntax;
12239
14097
  friend class ::CCExprResolve;
12240
14098
  friend class ::CExprResolve;
12241
14099
 
 
14100
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
14101
 
12242
14102
  CTree *sons[5]; // open, string, comma, cond, close
12243
14103
 
12244
14104
public:
12261
14121
  CSemValue *SemValue () const { return (CSemValue*)this; }
12262
14122
};
12263
14123
 
 
14124
 
 
14125
#line 14126 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12264
14126
} // closed Puma
12265
14127
class WinIfExists;
12266
14128
class WinImportHandler;
12281
14143
class CCExprResolve;
12282
14144
class CExprResolve;
12283
14145
namespace Puma {
12284
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
 
14146
 
 
14147
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
14148
class CT_AnyCondition : public CTree {
 
14149
#line 14150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14150
  friend class ::WinIfExists;
12285
14151
  friend class ::WinImportHandler;
12286
14152
  friend class ::WinMacros;
12287
14153
  friend class ::CMatchSyntax;
12300
14166
  friend class ::CCExprResolve;
12301
14167
  friend class ::CExprResolve;
12302
14168
 
 
14169
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
14170
 
12303
14171
  CTree *sons[3]; // arg1, arg2, arg3
12304
14172
 
12305
14173
public:
12319
14187
} // namespace Puma
12320
14188
 
12321
14189
#endif /* __CTree_h__ */
12322
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
14190
 
 
14191
#line 14192 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14192
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
14193
 
 
14194
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
14195
 
 
14196
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
12323
14197
namespace Puma {
12324
14198
 
12325
14199
 
 
14200
 
 
14201
#line 14202 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12326
14202
} // closed Puma
12327
14203
class WinIfExists;
12328
14204
class WinImportHandler;
12343
14219
class CCExprResolve;
12344
14220
class CExprResolve;
12345
14221
namespace Puma {
12346
 
class CT_GnuAsmDef : public CT_AsmDef {  friend class ::WinIfExists;
 
14222
 
 
14223
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14224
class CT_GnuAsmDef : public CT_AsmDef {
 
14225
#line 14226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14226
  friend class ::WinIfExists;
12347
14227
  friend class ::WinImportHandler;
12348
14228
  friend class ::WinMacros;
12349
14229
  friend class ::CMatchSyntax;
12362
14242
  friend class ::CCExprResolve;
12363
14243
  friend class ::CExprResolve;
12364
14244
 
 
14245
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14246
 
12365
14247
  CTree *_cvqual;
12366
14248
  CTree *_operands0;
12367
14249
  CTree *_operands1;
12415
14297
  }
12416
14298
};
12417
14299
 
 
14300
 
 
14301
#line 14302 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12418
14302
} // closed Puma
12419
14303
class WinIfExists;
12420
14304
class WinImportHandler;
12435
14319
class CCExprResolve;
12436
14320
class CExprResolve;
12437
14321
namespace Puma {
12438
 
class CT_GnuAsmOperand : public CTree {  friend class ::WinIfExists;
 
14322
 
 
14323
#line 92 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14324
class CT_GnuAsmOperand : public CTree {
 
14325
#line 14326 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14326
  friend class ::WinIfExists;
12439
14327
  friend class ::WinImportHandler;
12440
14328
  friend class ::WinMacros;
12441
14329
  friend class ::CMatchSyntax;
12454
14342
  friend class ::CCExprResolve;
12455
14343
  friend class ::CExprResolve;
12456
14344
 
 
14345
#line 92 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14346
 
12457
14347
  CTree *_string;
12458
14348
  CTree *_open;   // CT_Token
12459
14349
  CTree *_expr;
12484
14374
  }
12485
14375
};
12486
14376
 
 
14377
 
 
14378
#line 14379 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12487
14379
} // closed Puma
12488
14380
class WinIfExists;
12489
14381
class WinImportHandler;
12504
14396
class CCExprResolve;
12505
14397
class CExprResolve;
12506
14398
namespace Puma {
12507
 
class CT_GnuAsmOperands : public CT_List {  friend class ::WinIfExists;
 
14399
 
 
14400
#line 123 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14401
class CT_GnuAsmOperands : public CT_List {
 
14402
#line 14403 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14403
  friend class ::WinIfExists;
12508
14404
  friend class ::WinImportHandler;
12509
14405
  friend class ::WinMacros;
12510
14406
  friend class ::CMatchSyntax;
12523
14419
  friend class ::CCExprResolve;
12524
14420
  friend class ::CExprResolve;
12525
14421
 
 
14422
#line 123 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14423
 
12526
14424
public:
12527
14425
  CT_GnuAsmOperands () { AddProperties (OPEN | SEPARATORS); }
12528
14426
  static const char *NodeId ();
12529
14427
  const char *NodeName () const { return NodeId (); }  
12530
14428
};
12531
14429
 
 
14430
 
 
14431
#line 14432 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12532
14432
} // closed Puma
12533
14433
class WinIfExists;
12534
14434
class WinImportHandler;
12549
14449
class CCExprResolve;
12550
14450
class CExprResolve;
12551
14451
namespace Puma {
12552
 
class CT_GnuAsmClobbers : public CT_List {  friend class ::WinIfExists;
 
14452
 
 
14453
#line 130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14454
class CT_GnuAsmClobbers : public CT_List {
 
14455
#line 14456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14456
  friend class ::WinIfExists;
12553
14457
  friend class ::WinImportHandler;
12554
14458
  friend class ::WinMacros;
12555
14459
  friend class ::CMatchSyntax;
12568
14472
  friend class ::CCExprResolve;
12569
14473
  friend class ::CExprResolve;
12570
14474
 
 
14475
#line 130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14476
 
12571
14477
public:
12572
14478
  CT_GnuAsmClobbers () { AddProperties (OPEN | SEPARATORS); }
12573
14479
  static const char *NodeId ();
12580
14486
/*                                                                           */
12581
14487
/*****************************************************************************/
12582
14488
 
 
14489
 
 
14490
#line 14491 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12583
14491
} // closed Puma
12584
14492
class WinIfExists;
12585
14493
class WinImportHandler;
12600
14508
class CCExprResolve;
12601
14509
class CExprResolve;
12602
14510
namespace Puma {
12603
 
class CT_GnuStatementExpr : public CT_Expression {  friend class ::WinIfExists;
 
14511
 
 
14512
#line 143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14513
class CT_GnuStatementExpr : public CT_Expression {
 
14514
#line 14515 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14515
  friend class ::WinIfExists;
12604
14516
  friend class ::WinImportHandler;
12605
14517
  friend class ::WinMacros;
12606
14518
  friend class ::CMatchSyntax;
12619
14531
  friend class ::CCExprResolve;
12620
14532
  friend class ::CExprResolve;
12621
14533
 
 
14534
#line 143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14535
 
12622
14536
  CTree *_open;
12623
14537
  CTree *_stmt;
12624
14538
  CTree *_close;
12639
14553
  CT_CmpdStmt *CmpdStmt () const { return (CT_CmpdStmt*)Son (1); }
12640
14554
   private:
12641
14555
  typedef CT_GnuStatementExpr CCExprResolveExpr;
 
14556
 
 
14557
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
12642
14558
 public :
12643
14559
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
12644
14560
  typedef CT_GnuStatementExpr CExprResolveExpr;
 
14561
 
 
14562
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
12645
14563
 public :
12646
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
 
14564
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
14565
#line 162 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14566
};
12647
14567
 
12648
14568
/*****************************************************************************/
12649
14569
/*                                                                           */
12652
14572
/*****************************************************************************/
12653
14573
 
12654
14574
// typeof(expr) or typeof(named type) feature
 
14575
 
 
14576
#line 14577 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12655
14577
} // closed Puma
12656
14578
class WinIfExists;
12657
14579
class WinImportHandler;
12672
14594
class CCExprResolve;
12673
14595
class CExprResolve;
12674
14596
namespace Puma {
12675
 
class CT_GnuTypeof : public CT_DeclSpec, public CSemValue {  friend class ::WinIfExists;
 
14597
 
 
14598
#line 171 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14599
class CT_GnuTypeof : public CT_DeclSpec, public CSemValue {
 
14600
#line 14601 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14601
  friend class ::WinIfExists;
12676
14602
  friend class ::WinImportHandler;
12677
14603
  friend class ::WinMacros;
12678
14604
  friend class ::CMatchSyntax;
12691
14617
  friend class ::CCExprResolve;
12692
14618
  friend class ::CExprResolve;
12693
14619
 
 
14620
#line 171 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14621
 
12694
14622
  CTree *sons[5]; // key, open, type, close, expr
12695
14623
 
12696
14624
public:
12716
14644
} // namespace Puma
12717
14645
 
12718
14646
#endif /* __gnu_c_tree_h__ */
12719
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_GnuCTree_h__
 
14647
 
 
14648
#line 14649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14649
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_GnuCTree_h__
 
14650
 
 
14651
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/GnuCTree.h"
 
14652
 
 
14653
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStructure.h"
12720
14654
// This file is part of PUMA.
12721
14655
// Copyright (C) 1999-2003  The PUMA developer team.
12722
14656
//                                                                
12749
14683
// function and class template instances, member 
12750
14684
// aliases
12751
14685
 
 
14686
 
 
14687
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeInfo.h"
12752
14688
// This file is part of PUMA.
12753
14689
// Copyright (C) 1999-2003  The PUMA developer team.
12754
14690
//                                                                
12772
14708
 
12773
14709
// scope info
12774
14710
 
 
14711
 
 
14712
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CObjectInfo.h"
12775
14713
// This file is part of PUMA.
12776
14714
// Copyright (C) 1999-2003  The PUMA developer team.
12777
14715
//                                                                
12804
14742
// it belongs to, and other semantic info objects that refer
12805
14743
// to the same entity
12806
14744
 
 
14745
 
 
14746
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSourceInfo.h"
12807
14747
// This file is part of PUMA.
12808
14748
// Copyright (C) 1999-2003  The PUMA developer team.
12809
14749
//                                                                
12837
14777
class Token;
12838
14778
class Unit;
12839
14779
 
 
14780
 
 
14781
#line 14782 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12840
14782
} // closed Puma
12841
14783
class WinIfExists;
12842
14784
class WinImportHandler;
12857
14799
class CCExprResolve;
12858
14800
class CExprResolve;
12859
14801
namespace Puma {
12860
 
class CSourceInfo {  friend class ::WinIfExists;
 
14802
 
 
14803
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSourceInfo.h"
 
14804
class CSourceInfo {
 
14805
#line 14806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14806
  friend class ::WinIfExists;
12861
14807
  friend class ::WinImportHandler;
12862
14808
  friend class ::WinMacros;
12863
14809
  friend class ::CMatchSyntax;
12876
14822
  friend class ::CCExprResolve;
12877
14823
  friend class ::CExprResolve;
12878
14824
 
 
14825
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSourceInfo.h"
 
14826
 
12879
14827
  CFileInfo *_FileInfo; 
12880
14828
  CT_Token *_StartToken;
12881
14829
 
12947
14895
} // namespace Puma
12948
14896
 
12949
14897
#endif /* __CSourceInfo_h__ */
 
14898
 
 
14899
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProtection.h"
12950
14900
// This file is part of PUMA.
12951
14901
// Copyright (C) 1999-2003  The PUMA developer team.
12952
14902
//                                                                
12973
14923
namespace Puma {
12974
14924
 
12975
14925
 
 
14926
 
 
14927
#line 14928 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
12976
14928
} // closed Puma
12977
14929
class WinIfExists;
12978
14930
class WinImportHandler;
12993
14945
class CCExprResolve;
12994
14946
class CExprResolve;
12995
14947
namespace Puma {
12996
 
struct CProtection {  friend class ::WinIfExists;
 
14948
 
 
14949
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProtection.h"
 
14950
struct CProtection {
 
14951
#line 14952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
14952
  friend class ::WinIfExists;
12997
14953
  friend class ::WinImportHandler;
12998
14954
  friend class ::WinMacros;
12999
14955
  friend class ::CMatchSyntax;
13012
14968
  friend class ::CCExprResolve;
13013
14969
  friend class ::CExprResolve;
13014
14970
 
 
14971
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProtection.h"
 
14972
 
13015
14973
  enum Type {
13016
14974
    PROT_PUBLIC, 
13017
14975
    PROT_PROTECTED, 
13024
14982
} // namespace Puma
13025
14983
 
13026
14984
#endif /* __CProtection_h__ */
 
14985
 
 
14986
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStorage.h"
13027
14987
// This file is part of PUMA.
13028
14988
// Copyright (C) 1999-2003  The PUMA developer team.
13029
14989
//                                                                
13050
15010
namespace Puma {
13051
15011
 
13052
15012
 
 
15013
 
 
15014
#line 15015 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
13053
15015
} // closed Puma
13054
15016
class WinIfExists;
13055
15017
class WinImportHandler;
13070
15032
class CCExprResolve;
13071
15033
class CExprResolve;
13072
15034
namespace Puma {
13073
 
struct CStorage {  friend class ::WinIfExists;
 
15035
 
 
15036
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStorage.h"
 
15037
struct CStorage {
 
15038
#line 15039 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
15039
  friend class ::WinIfExists;
13074
15040
  friend class ::WinImportHandler;
13075
15041
  friend class ::WinMacros;
13076
15042
  friend class ::CMatchSyntax;
13089
15055
  friend class ::CCExprResolve;
13090
15056
  friend class ::CExprResolve;
13091
15057
 
 
15058
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStorage.h"
 
15059
 
13092
15060
  enum Type {
13093
15061
    CLASS_STATIC,
13094
15062
    CLASS_AUTOMATIC, 
13101
15069
} // namespace Puma
13102
15070
 
13103
15071
#endif /* __CStorage_h__ */
 
15072
 
 
15073
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLinkage.h"
13104
15074
// This file is part of PUMA.
13105
15075
// Copyright (C) 1999-2003  The PUMA developer team.
13106
15076
//                                                                
13127
15097
namespace Puma {
13128
15098
 
13129
15099
 
 
15100
 
 
15101
#line 15102 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
13130
15102
} // closed Puma
13131
15103
class WinIfExists;
13132
15104
class WinImportHandler;
13147
15119
class CCExprResolve;
13148
15120
class CExprResolve;
13149
15121
namespace Puma {
13150
 
struct CLinkage {  friend class ::WinIfExists;
 
15122
 
 
15123
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLinkage.h"
 
15124
struct CLinkage {
 
15125
#line 15126 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
15126
  friend class ::WinIfExists;
13151
15127
  friend class ::WinImportHandler;
13152
15128
  friend class ::WinMacros;
13153
15129
  friend class ::CMatchSyntax;
13166
15142
  friend class ::CCExprResolve;
13167
15143
  friend class ::CExprResolve;
13168
15144
 
 
15145
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLinkage.h"
 
15146
 
13169
15147
  enum Type {
13170
15148
    LINK_INTERNAL, 
13171
15149
    LINK_EXTERNAL, 
13177
15155
} // namespace Puma
13178
15156
 
13179
15157
#endif /* __CLinkage_h__ */
 
15158
 
 
15159
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLanguage.h"
13180
15160
// This file is part of PUMA.
13181
15161
// Copyright (C) 1999-2003  The PUMA developer team.
13182
15162
//                                                                
13198
15178
#ifndef __CLanguage_h__
13199
15179
#define __CLanguage_h__
13200
15180
 
 
15181
 
 
15182
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLanguage.h"
13201
15183
// Entity name encoding language; language linkage
13202
15184
 
13203
15185
namespace Puma {
13204
15186
 
13205
15187
 
 
15188
 
 
15189
#line 15190 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
13206
15190
} // closed Puma
13207
15191
class WinIfExists;
13208
15192
class WinImportHandler;
13223
15207
class CCExprResolve;
13224
15208
class CExprResolve;
13225
15209
namespace Puma {
13226
 
class CLanguage {  friend class ::WinIfExists;
 
15210
 
 
15211
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLanguage.h"
 
15212
class CLanguage {
 
15213
#line 15214 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
15214
  friend class ::WinIfExists;
13227
15215
  friend class ::WinImportHandler;
13228
15216
  friend class ::WinMacros;
13229
15217
  friend class ::CMatchSyntax;
13242
15230
  friend class ::CCExprResolve;
13243
15231
  friend class ::CExprResolve;
13244
15232
 
 
15233
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLanguage.h"
 
15234
 
13245
15235
public:
13246
15236
  enum LangType {
13247
15237
    LANG_C,
13275
15265
} // namespace Puma
13276
15266
 
13277
15267
#endif /* __CLanguage_h__ */
 
15268
 
 
15269
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSpecifiers.h"
13278
15270
// This file is part of PUMA.
13279
15271
// Copyright (C) 1999-2003  The PUMA developer team.
13280
15272
//                                                                
13301
15293
namespace Puma {
13302
15294
 
13303
15295
 
 
15296
 
 
15297
#line 15298 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
13304
15298
} // closed Puma
13305
15299
class WinIfExists;
13306
15300
class WinImportHandler;
13321
15315
class CCExprResolve;
13322
15316
class CExprResolve;
13323
15317
namespace Puma {
13324
 
class CSpecifiers {  friend class ::WinIfExists;
 
15318
 
 
15319
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSpecifiers.h"
 
15320
class CSpecifiers {
 
15321
#line 15322 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
15322
  friend class ::WinIfExists;
13325
15323
  friend class ::WinImportHandler;
13326
15324
  friend class ::WinMacros;
13327
15325
  friend class ::CMatchSyntax;
13340
15338
  friend class ::CCExprResolve;
13341
15339
  friend class ::CExprResolve;
13342
15340
 
 
15341
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSpecifiers.h"
 
15342
 
13343
15343
public:
13344
15344
  enum Spec {
13345
15345
    SPEC_NONE     = 0x0,
13391
15391
} // namespace Puma
13392
15392
 
13393
15393
#endif /* __CSpecifiers__ */
 
15394
 
 
15395
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CObjectInfo.h"
13394
15396
namespace Puma {
13395
15397
 
13396
15398
 
13423
15425
class CT_ExprList;
13424
15426
class CTemplateInstance;
13425
15427
 
 
15428
 
 
15429
#line 15430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
13426
15430
} // closed Puma
13427
15431
class WinIfExists;
13428
15432
class WinImportHandler;
13443
15447
class CCExprResolve;
13444
15448
class CExprResolve;
13445
15449
namespace Puma {
13446
 
class CObjectInfo {  friend class ::WinIfExists;
 
15450
 
 
15451
#line 74 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CObjectInfo.h"
 
15452
class CObjectInfo {
 
15453
#line 15454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
15454
  friend class ::WinIfExists;
13447
15455
  friend class ::WinImportHandler;
13448
15456
  friend class ::WinMacros;
13449
15457
  friend class ::CMatchSyntax;
13462
15470
  friend class ::CCExprResolve;
13463
15471
  friend class ::CExprResolve;
13464
15472
 
 
15473
#line 74 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CObjectInfo.h"
 
15474
 
13465
15475
protected:
13466
15476
  enum ObjectId {
13467
15477
    FILE_INFO, 
13803
15813
} // namespace Puma
13804
15814
 
13805
15815
#endif /* __CObjectInfo_h__ */
 
15816
 
 
15817
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeInfo.h"
13806
15818
namespace Puma {
13807
15819
 
13808
15820
 
13813
15825
class CUnionInfo;
13814
15826
class CTemplateInfo;
13815
15827
 
 
15828
 
 
15829
#line 15830 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
13816
15830
} // closed Puma
13817
15831
class WinIfExists;
13818
15832
class WinImportHandler;
13833
15847
class CCExprResolve;
13834
15848
class CExprResolve;
13835
15849
namespace Puma {
13836
 
class CScopeInfo : public CObjectInfo {  friend class ::WinIfExists;
 
15850
 
 
15851
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeInfo.h"
 
15852
class CScopeInfo : public CObjectInfo {
 
15853
#line 15854 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
15854
  friend class ::WinIfExists;
13837
15855
  friend class ::WinImportHandler;
13838
15856
  friend class ::WinMacros;
13839
15857
  friend class ::CMatchSyntax;
13852
15870
  friend class ::CCExprResolve;
13853
15871
  friend class ::CExprResolve;
13854
15872
 
 
15873
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeInfo.h"
 
15874
 
13855
15875
  Array<CScopeInfo*> _Children; // child scopes
13856
15876
  CScopeInfo *_Parent; // parent scope
13857
15877
 
13968
15988
} // namespace Puma
13969
15989
 
13970
15990
#endif /* __CScopeInfo_h__ */
 
15991
 
 
15992
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStructure.h"
13971
15993
#ifndef __puma
13972
15994
 
13973
15995
#include <map>
13993
16015
class CUsingInfo;
13994
16016
class CMemberAliasInfo;
13995
16017
 
 
16018
 
 
16019
#line 16020 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
13996
16020
} // closed Puma
13997
16021
class WinIfExists;
13998
16022
class WinImportHandler;
14013
16037
class CCExprResolve;
14014
16038
class CExprResolve;
14015
16039
namespace Puma {
14016
 
class CStructure : public CScopeInfo {  friend class ::WinIfExists;
 
16040
 
 
16041
#line 61 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStructure.h"
 
16042
class CStructure : public CScopeInfo {
 
16043
#line 16044 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
16044
  friend class ::WinIfExists;
14017
16045
  friend class ::WinImportHandler;
14018
16046
  friend class ::WinMacros;
14019
16047
  friend class ::CMatchSyntax;
14032
16060
  friend class ::CCExprResolve;
14033
16061
  friend class ::CExprResolve;
14034
16062
 
 
16063
#line 61 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CStructure.h"
 
16064
 
14035
16065
public:
14036
16066
#ifndef __puma
14037
16067
  typedef list<CObjectInfo*> ObjectInfoList;
14198
16228
} // namespace Puma
14199
16229
 
14200
16230
#endif /* __CStructure_h__ */
 
16231
 
 
16232
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemVisitor.h"
14201
16233
// This file is part of PUMA.
14202
16234
// Copyright (C) 1999-2003  The PUMA developer team.
14203
16235
//                                                                
14219
16251
#ifndef __CSemVisitor_h__
14220
16252
#define __CSemVisitor_h__
14221
16253
 
 
16254
 
 
16255
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorSink.h"
14222
16256
// This file is part of PUMA.
14223
16257
// Copyright (C) 1999-2003  The PUMA developer team.
14224
16258
//                                                                
14252
16286
// Specializations of this class could either build and print error
14253
16287
// messages or collect them for a later processing.
14254
16288
 
 
16289
 
 
16290
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorSink.h"
14255
16291
namespace Puma {
14256
16292
 
14257
16293
 
 
16294
 
 
16295
#line 16296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
14258
16296
} // closed Puma
14259
16297
class WinIfExists;
14260
16298
class WinImportHandler;
14275
16313
class CCExprResolve;
14276
16314
class CExprResolve;
14277
16315
namespace Puma {
14278
 
class ErrorSink {  friend class ::WinIfExists;
 
16316
 
 
16317
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorSink.h"
 
16318
class ErrorSink {
 
16319
#line 16320 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
16320
  friend class ::WinIfExists;
14279
16321
  friend class ::WinImportHandler;
14280
16322
  friend class ::WinMacros;
14281
16323
  friend class ::CMatchSyntax;
14294
16336
  friend class ::CCExprResolve;
14295
16337
  friend class ::CExprResolve;
14296
16338
 
 
16339
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorSink.h"
 
16340
 
14297
16341
public:
14298
16342
  virtual ~ErrorSink () {}
14299
16343
  virtual ErrorSink &operator << (const char *) = 0;
14316
16360
} // namespace Puma
14317
16361
 
14318
16362
#endif /* __error_sink_h__ */
 
16363
 
 
16364
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CVisitor.h"
14319
16365
// This file is part of PUMA.
14320
16366
// Copyright (C) 1999-2003  The PUMA developer team.
14321
16367
//                                                                
14344
16390
 
14345
16391
class CTree;
14346
16392
 
 
16393
 
 
16394
#line 16395 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
14347
16395
} // closed Puma
14348
16396
class WinIfExists;
14349
16397
class WinImportHandler;
14364
16412
class CCExprResolve;
14365
16413
class CExprResolve;
14366
16414
namespace Puma {
14367
 
class CVisitor {  friend class ::WinIfExists;
 
16415
 
 
16416
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CVisitor.h"
 
16417
class CVisitor {
 
16418
#line 16419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
16419
  friend class ::WinIfExists;
14368
16420
  friend class ::WinImportHandler;
14369
16421
  friend class ::WinMacros;
14370
16422
  friend class ::CMatchSyntax;
14383
16435
  friend class ::CCExprResolve;
14384
16436
  friend class ::CExprResolve;
14385
16437
 
 
16438
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CVisitor.h"
 
16439
 
14386
16440
  bool _aborted;
14387
16441
  bool _pruned;
14388
16442
 
14407
16461
} // namespace Puma
14408
16462
 
14409
16463
#endif /* __CVisitor_h__ */
 
16464
 
 
16465
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Limits.h"
14410
16466
/* This file was generated by the PUMA library, version 1.1. */
14411
16467
 
14412
16468
// This file is part of PUMA.
14430
16486
#ifndef __Limits_h__
14431
16487
#define __Limits_h__
14432
16488
 
 
16489
 
 
16490
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Limits.h"
14433
16491
namespace Puma {
14434
16492
 
14435
16493
 
14484
16542
} // namespace Puma
14485
16543
 
14486
16544
#endif /* __Limits_h__ */
 
16545
 
 
16546
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Config.h"
14487
16547
// This file is part of PUMA.
14488
16548
// Copyright (C) 1999-2003  The PUMA developer team.
14489
16549
//                                                                
14508
16568
// Class Config provides evaluation of configuration 
14509
16569
// information from file or command line.
14510
16570
 
 
16571
 
 
16572
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Flags.h"
14511
16573
// This file is part of PUMA.
14512
16574
// Copyright (C) 1999-2003  The PUMA developer team.
14513
16575
//                                                                
14532
16594
namespace Puma {
14533
16595
 
14534
16596
 
 
16597
 
 
16598
#line 16599 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
14535
16599
} // closed Puma
14536
16600
class WinIfExists;
14537
16601
class WinImportHandler;
14552
16616
class CCExprResolve;
14553
16617
class CExprResolve;
14554
16618
namespace Puma {
14555
 
class Flags {  friend class ::WinIfExists;
 
16619
 
 
16620
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Flags.h"
 
16621
class Flags {
 
16622
#line 16623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
16623
  friend class ::WinIfExists;
14556
16624
  friend class ::WinImportHandler;
14557
16625
  friend class ::WinMacros;
14558
16626
  friend class ::CMatchSyntax;
14571
16639
  friend class ::CCExprResolve;
14572
16640
  friend class ::CExprResolve;
14573
16641
 
 
16642
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Flags.h"
 
16643
 
14574
16644
public:
14575
16645
  enum Flag {
14576
16646
    NONE                       = 0x0,
14632
16702
} // namespace Puma
14633
16703
 
14634
16704
#endif /* __Flags_h__ */
 
16705
 
 
16706
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ConfOption.h"
14635
16707
// This file is part of PUMA.
14636
16708
// Copyright (C) 1999-2003  The PUMA developer team.
14637
16709
//                                                                
14653
16725
#ifndef __ConfOption_h__
14654
16726
#define __ConfOption_h__
14655
16727
 
 
16728
 
 
16729
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ConfOption.h"
14656
16730
#include <stdlib.h>
14657
16731
 
14658
16732
namespace Puma {
14659
16733
 
14660
16734
 
 
16735
 
 
16736
#line 16737 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
14661
16737
} // closed Puma
14662
16738
class WinIfExists;
14663
16739
class WinImportHandler;
14678
16754
class CCExprResolve;
14679
16755
class CExprResolve;
14680
16756
namespace Puma {
14681
 
class ConfOption {  friend class ::WinIfExists;
 
16757
 
 
16758
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ConfOption.h"
 
16759
class ConfOption {
 
16760
#line 16761 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
16761
  friend class ::WinIfExists;
14682
16762
  friend class ::WinImportHandler;
14683
16763
  friend class ::WinMacros;
14684
16764
  friend class ::CMatchSyntax;
14697
16777
  friend class ::CCExprResolve;
14698
16778
  friend class ::CExprResolve;
14699
16779
 
 
16780
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ConfOption.h"
 
16781
 
14700
16782
  const char *_name;
14701
16783
  Array<const char *> _args;
14702
16784
  
14740
16822
} // namespace Puma
14741
16823
 
14742
16824
#endif /* __ConfOption_h__ */
 
16825
 
 
16826
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorStream.h"
14743
16827
// This file is part of PUMA.
14744
16828
// Copyright (C) 1999-2003  The PUMA developer team.
14745
16829
//                                                                
14766
16850
// The ErrorStream can be reset to it's initial state.
14767
16851
 
14768
16852
#include <sstream>
 
16853
 
 
16854
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorStream.h"
14769
16855
using namespace std;
14770
16856
 
14771
16857
namespace Puma {
14772
16858
 
14773
16859
 
 
16860
 
 
16861
#line 16862 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
14774
16862
} // closed Puma
14775
16863
class WinIfExists;
14776
16864
class WinImportHandler;
14791
16879
class CCExprResolve;
14792
16880
class CExprResolve;
14793
16881
namespace Puma {
14794
 
class ErrorStream : public ErrorSink {  friend class ::WinIfExists;
 
16882
 
 
16883
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorStream.h"
 
16884
class ErrorStream : public ErrorSink {
 
16885
#line 16886 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
16886
  friend class ::WinIfExists;
14795
16887
  friend class ::WinImportHandler;
14796
16888
  friend class ::WinMacros;
14797
16889
  friend class ::CMatchSyntax;
14810
16902
  friend class ::CCExprResolve;
14811
16903
  friend class ::CExprResolve;
14812
16904
 
 
16905
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorStream.h"
 
16906
 
14813
16907
  ostream *_ostream;
14814
16908
  ErrorSeverity _max_severity;
14815
16909
  ErrorSeverity _curr_severity;
14850
16944
} // namespace Puma
14851
16945
 
14852
16946
#endif /* __error_stream_h__ */
 
16947
 
 
16948
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OptsParser.h"
14853
16949
// This file is part of PUMA.
14854
16950
// Copyright (C) 1999-2003  The PUMA developer team.
14855
16951
//                                                                
14871
16967
#ifndef __OptsParser_h__
14872
16968
#define __OptsParser_h__
14873
16969
 
 
16970
 
 
16971
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SimpleParser.h"
14874
16972
// This file is part of PUMA.
14875
16973
// Copyright (C) 1999-2003  The PUMA developer team.
14876
16974
//                                                                
14892
16990
#ifndef __SimpleParser_h__
14893
16991
#define __SimpleParser_h__
14894
16992
 
 
16993
 
 
16994
#line 23 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SimpleParser.h"
14895
16995
#include <vector>
14896
16996
using namespace std;
14897
16997
 
14898
16998
namespace Puma {
14899
16999
 
14900
17000
 
 
17001
 
 
17002
#line 17003 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
14901
17003
} // closed Puma
14902
17004
class WinIfExists;
14903
17005
class WinImportHandler;
14918
17020
class CCExprResolve;
14919
17021
class CExprResolve;
14920
17022
namespace Puma {
14921
 
class SimpleParser {  friend class ::WinIfExists;
 
17023
 
 
17024
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SimpleParser.h"
 
17025
class SimpleParser {
 
17026
#line 17027 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17027
  friend class ::WinIfExists;
14922
17028
  friend class ::WinImportHandler;
14923
17029
  friend class ::WinMacros;
14924
17030
  friend class ::CMatchSyntax;
14937
17043
  friend class ::CCExprResolve;
14938
17044
  friend class ::CExprResolve;
14939
17045
 
 
17046
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SimpleParser.h"
 
17047
 
14940
17048
public:
14941
17049
  SimpleParser() {}
14942
17050
  ~SimpleParser() {}
14950
17058
} // namespace Puma
14951
17059
 
14952
17060
#endif /* __SimpleParser_h__ */
 
17061
 
 
17062
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OptsParser.h"
14953
17063
using namespace std;
14954
17064
 
14955
17065
namespace Puma {
14956
17066
 
14957
17067
 
 
17068
 
 
17069
#line 17070 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
14958
17070
} // closed Puma
14959
17071
class WinIfExists;
14960
17072
class WinImportHandler;
14975
17087
class CCExprResolve;
14976
17088
class CExprResolve;
14977
17089
namespace Puma {
14978
 
class OptsParser : public SimpleParser {  friend class ::WinIfExists;
 
17090
 
 
17091
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OptsParser.h"
 
17092
class OptsParser : public SimpleParser {
 
17093
#line 17094 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17094
  friend class ::WinIfExists;
14979
17095
  friend class ::WinImportHandler;
14980
17096
  friend class ::WinMacros;
14981
17097
  friend class ::CMatchSyntax;
14994
17110
  friend class ::CCExprResolve;
14995
17111
  friend class ::CExprResolve;
14996
17112
 
 
17113
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OptsParser.h"
 
17114
 
14997
17115
  vector<string> m_argv;
14998
17116
  unsigned int m_curarg;
14999
17117
  unsigned int m_tonext;
15008
17126
  
15009
17127
  enum ArgType { AT_NONE = 0, AT_MANDATORY = 1, AT_OPTIONAL = 2 };
15010
17128
  
15011
 
  struct Option {  friend class ::WinIfExists;
 
17129
  struct Option {
 
17130
#line 17131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17131
  friend class ::WinIfExists;
15012
17132
  friend class ::WinImportHandler;
15013
17133
  friend class ::WinMacros;
15014
17134
  friend class ::CMatchSyntax;
15027
17147
  friend class ::CCExprResolve;
15028
17148
  friend class ::CExprResolve;
15029
17149
 
 
17150
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OptsParser.h"
 
17151
 
15030
17152
    int number;
15031
17153
    char key; 
15032
17154
    const char *name;
15061
17183
} // namespace Puma
15062
17184
 
15063
17185
#endif /* __OptsParser_h__ */
 
17186
 
 
17187
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Config.h"
15064
17188
using namespace std;
15065
17189
 
15066
17190
namespace Puma {
15067
17191
 
15068
17192
 
 
17193
 
 
17194
#line 17195 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15069
17195
} // closed Puma
15070
17196
class WinIfExists;
15071
17197
class WinImportHandler;
15086
17212
class CCExprResolve;
15087
17213
class CExprResolve;
15088
17214
namespace Puma {
15089
 
class Config {  friend class ::WinIfExists;
 
17215
 
 
17216
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Config.h"
 
17217
class Config {
 
17218
#line 17219 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17219
  friend class ::WinIfExists;
15090
17220
  friend class ::WinImportHandler;
15091
17221
  friend class ::WinMacros;
15092
17222
  friend class ::CMatchSyntax;
15105
17235
  friend class ::CCExprResolve;
15106
17236
  friend class ::CExprResolve;
15107
17237
 
 
17238
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Config.h"
 
17239
 
15108
17240
  Flags _flags;
15109
17241
  ErrorStream &_err;
15110
17242
  Array<const ConfOption *> _options;
15213
17345
 
15214
17346
#endif /* __Config_h__ */
15215
17347
 
 
17348
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17349
 
 
17350
#line 17351 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17351
 
15216
17352
#ifndef __ac_fwd_ExtACTree__
15217
17353
#define __ac_fwd_ExtACTree__
15218
17354
class ExtACTree;
15224
17360
}
15225
17361
#endif
15226
17362
 
15227
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
15228
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
17363
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
17364
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
15229
17365
#endif
15230
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
15231
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
17366
 
 
17367
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17368
 
 
17369
#line 17370 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17370
 
 
17371
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17372
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
17373
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
17374
 
 
17375
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
15232
17376
// This file is part of PUMA.
15233
17377
// Copyright (C) 1999-2003  The PUMA developer team.
15234
17378
//                                                                
15410
17554
/*                                                                           */
15411
17555
/*****************************************************************************/
15412
17556
 
 
17557
 
 
17558
#line 17559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15413
17559
} // closed Puma
15414
17560
class WinIfExists;
15415
17561
class WinImportHandler;
15430
17576
class CCExprResolve;
15431
17577
class CExprResolve;
15432
17578
namespace Puma {
15433
 
class CTree {  friend class ::WinIfExists;
 
17579
 
 
17580
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17581
class CTree {
 
17582
#line 17583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17583
  friend class ::WinIfExists;
15434
17584
  friend class ::WinImportHandler;
15435
17585
  friend class ::WinMacros;
15436
17586
  friend class ::CMatchSyntax;
15449
17599
  friend class ::CCExprResolve;
15450
17600
  friend class ::CExprResolve;
15451
17601
 
 
17602
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17603
 
15452
17604
public:
15453
17605
  /*DEBUG*/static int alloc;
15454
17606
  /*DEBUG*/static int release;
15484
17636
  virtual CT_Declarator *IsDeclarator () { return 0; }
15485
17637
   private:
15486
17638
  typedef CTree CCExprResolveCTree;
 
17639
 
 
17640
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
15487
17641
 public :
15488
17642
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
15489
17643
  typedef CTree CExprResolveCTree;
 
17644
 
 
17645
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
15490
17646
 public :
15491
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
15492
 
 
 
17647
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
17648
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17649
};
 
17650
 
 
17651
 
 
17652
#line 17653 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15493
17653
} // closed Puma
15494
17654
class WinIfExists;
15495
17655
class WinImportHandler;
15510
17670
class CCExprResolve;
15511
17671
class CExprResolve;
15512
17672
namespace Puma {
15513
 
class CT_Error : public CTree {  friend class ::WinIfExists;
 
17673
 
 
17674
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17675
class CT_Error : public CTree {
 
17676
#line 17677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17677
  friend class ::WinIfExists;
15514
17678
  friend class ::WinImportHandler;
15515
17679
  friend class ::WinMacros;
15516
17680
  friend class ::CMatchSyntax;
15529
17693
  friend class ::CCExprResolve;
15530
17694
  friend class ::CExprResolve;
15531
17695
 
 
17696
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17697
 
15532
17698
public:
15533
17699
  static const char *NodeId ();
15534
17700
  const char *NodeName () const { return NodeId (); }
15535
17701
  int Sons () const { return 0; }
15536
17702
};
15537
17703
 
 
17704
 
 
17705
#line 17706 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15538
17706
} // closed Puma
15539
17707
class WinIfExists;
15540
17708
class WinImportHandler;
15555
17723
class CCExprResolve;
15556
17724
class CExprResolve;
15557
17725
namespace Puma {
15558
 
class CT_Token : public CTree {  friend class ::WinIfExists;
 
17726
 
 
17727
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17728
class CT_Token : public CTree {
 
17729
#line 17730 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17730
  friend class ::WinIfExists;
15559
17731
  friend class ::WinImportHandler;
15560
17732
  friend class ::WinMacros;
15561
17733
  friend class ::CMatchSyntax;
15574
17746
  friend class ::CCExprResolve;
15575
17747
  friend class ::CExprResolve;
15576
17748
 
 
17749
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17750
 
15577
17751
  Token *_token;
15578
17752
  unsigned long int _number;
15579
17753
  
15600
17774
/*                                                                           */
15601
17775
/*****************************************************************************/
15602
17776
 
 
17777
 
 
17778
#line 17779 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15603
17779
} // closed Puma
15604
17780
class WinIfExists;
15605
17781
class WinImportHandler;
15620
17796
class CCExprResolve;
15621
17797
class CExprResolve;
15622
17798
namespace Puma {
15623
 
class CT_List : public CTree {  friend class ::WinIfExists;
 
17799
 
 
17800
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17801
class CT_List : public CTree {
 
17802
#line 17803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17803
  friend class ::WinIfExists;
15624
17804
  friend class ::WinImportHandler;
15625
17805
  friend class ::WinMacros;
15626
17806
  friend class ::CMatchSyntax;
15639
17819
  friend class ::CCExprResolve;
15640
17820
  friend class ::CExprResolve;
15641
17821
 
 
17822
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17823
 
15642
17824
  Array<CTree*> _sons;
15643
17825
  int _properties;
15644
17826
 
15677
17859
   { if (idx < Sons ()) _sons.remove (idx); }
15678
17860
};
15679
17861
 
 
17862
 
 
17863
#line 17864 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15680
17864
} // closed Puma
15681
17865
class WinIfExists;
15682
17866
class WinImportHandler;
15697
17881
class CCExprResolve;
15698
17882
class CExprResolve;
15699
17883
namespace Puma {
15700
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
17884
 
 
17885
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17886
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
17887
#line 17888 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17888
  friend class ::WinIfExists;
15701
17889
  friend class ::WinImportHandler;
15702
17890
  friend class ::WinMacros;
15703
17891
  friend class ::CMatchSyntax;
15716
17904
  friend class ::CCExprResolve;
15717
17905
  friend class ::CExprResolve;
15718
17906
 
 
17907
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17908
 
15719
17909
public:
15720
17910
  CT_ExprList () { AddProperties (SEPARATORS); }
15721
17911
  static const char *NodeId ();
15727
17917
  CSemObject *SemObject () const { return (CSemObject*)this; }
15728
17918
};
15729
17919
 
 
17920
 
 
17921
#line 17922 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15730
17922
} // closed Puma
15731
17923
class WinIfExists;
15732
17924
class WinImportHandler;
15747
17939
class CCExprResolve;
15748
17940
class CExprResolve;
15749
17941
namespace Puma {
15750
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
 
17942
 
 
17943
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17944
class CT_DeclaratorList : public CT_List {
 
17945
#line 17946 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17946
  friend class ::WinIfExists;
15751
17947
  friend class ::WinImportHandler;
15752
17948
  friend class ::WinMacros;
15753
17949
  friend class ::CMatchSyntax;
15766
17962
  friend class ::CCExprResolve;
15767
17963
  friend class ::CExprResolve;
15768
17964
 
 
17965
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17966
 
15769
17967
public:
15770
17968
  static const char *NodeId ();
15771
17969
  const char *NodeName () const { return NodeId (); }
15772
17970
};
15773
17971
 
 
17972
 
 
17973
#line 17974 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15774
17974
} // closed Puma
15775
17975
class WinIfExists;
15776
17976
class WinImportHandler;
15791
17991
class CCExprResolve;
15792
17992
class CExprResolve;
15793
17993
namespace Puma {
15794
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
 
17994
 
 
17995
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
17996
class CT_EnumeratorList : public CT_List {
 
17997
#line 17998 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
17998
  friend class ::WinIfExists;
15795
17999
  friend class ::WinImportHandler;
15796
18000
  friend class ::WinMacros;
15797
18001
  friend class ::CMatchSyntax;
15810
18014
  friend class ::CCExprResolve;
15811
18015
  friend class ::CExprResolve;
15812
18016
 
 
18017
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18018
 
15813
18019
public:
15814
18020
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
15815
18021
  static const char *NodeId ();
15816
18022
  const char *NodeName () const { return NodeId (); }
15817
18023
};
15818
18024
   
 
18025
 
 
18026
#line 18027 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15819
18027
} // closed Puma
15820
18028
class WinIfExists;
15821
18029
class WinImportHandler;
15836
18044
class CCExprResolve;
15837
18045
class CExprResolve;
15838
18046
namespace Puma {
15839
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
 
18047
 
 
18048
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18049
class CT_DeclList : public CT_List {
 
18050
#line 18051 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18051
  friend class ::WinIfExists;
15840
18052
  friend class ::WinImportHandler;
15841
18053
  friend class ::WinMacros;
15842
18054
  friend class ::CMatchSyntax;
15855
18067
  friend class ::CCExprResolve;
15856
18068
  friend class ::CExprResolve;
15857
18069
 
 
18070
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18071
 
15858
18072
public:
15859
18073
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
15860
18074
  static const char *NodeId ();
15862
18076
  void Linkage (CT_LinkageSpec *l);
15863
18077
};
15864
18078
 
 
18079
 
 
18080
#line 18081 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15865
18081
} // closed Puma
15866
18082
class WinIfExists;
15867
18083
class WinImportHandler;
15882
18098
class CCExprResolve;
15883
18099
class CExprResolve;
15884
18100
namespace Puma {
15885
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
 
18101
 
 
18102
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18103
class CT_DeclSpecSeq : public CT_List {
 
18104
#line 18105 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18105
  friend class ::WinIfExists;
15886
18106
  friend class ::WinImportHandler;
15887
18107
  friend class ::WinMacros;
15888
18108
  friend class ::CMatchSyntax;
15901
18121
  friend class ::CCExprResolve;
15902
18122
  friend class ::CExprResolve;
15903
18123
 
 
18124
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18125
 
15904
18126
public:
15905
18127
  static const char *NodeId ();
15906
18128
  const char *NodeName () const { return NodeId (); }
15907
18129
};
15908
18130
 
 
18131
 
 
18132
#line 18133 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15909
18133
} // closed Puma
15910
18134
class WinIfExists;
15911
18135
class WinImportHandler;
15926
18150
class CCExprResolve;
15927
18151
class CExprResolve;
15928
18152
namespace Puma {
15929
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
18153
 
 
18154
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18155
class CT_CmpdStmt : public CT_List, public CSemScope {
 
18156
#line 18157 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18157
  friend class ::WinIfExists;
15930
18158
  friend class ::WinImportHandler;
15931
18159
  friend class ::WinMacros;
15932
18160
  friend class ::CMatchSyntax;
15945
18173
  friend class ::CCExprResolve;
15946
18174
  friend class ::CExprResolve;
15947
18175
 
 
18176
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18177
 
15948
18178
public:
15949
18179
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
15950
18180
  static const char *NodeId ();
15951
18181
  const char *NodeName () const { return NodeId (); }
15952
18182
};
15953
18183
 
 
18184
 
 
18185
#line 18186 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15954
18186
} // closed Puma
15955
18187
class WinIfExists;
15956
18188
class WinImportHandler;
15971
18203
class CCExprResolve;
15972
18204
class CExprResolve;
15973
18205
namespace Puma {
15974
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
 
18206
 
 
18207
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18208
class CT_HandlerSeq : public CT_List {
 
18209
#line 18210 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18210
  friend class ::WinIfExists;
15975
18211
  friend class ::WinImportHandler;
15976
18212
  friend class ::WinMacros;
15977
18213
  friend class ::CMatchSyntax;
15990
18226
  friend class ::CCExprResolve;
15991
18227
  friend class ::CExprResolve;
15992
18228
 
 
18229
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18230
 
15993
18231
public:
15994
18232
  static const char *NodeId ();
15995
18233
  const char *NodeName () const { return NodeId (); }
15996
18234
};
15997
18235
 
 
18236
 
 
18237
#line 18238 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
15998
18238
} // closed Puma
15999
18239
class WinIfExists;
16000
18240
class WinImportHandler;
16015
18255
class CCExprResolve;
16016
18256
class CExprResolve;
16017
18257
namespace Puma {
16018
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
18258
 
 
18259
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18260
class CT_TemplateParamList : public CT_List, public CSemScope {
 
18261
#line 18262 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18262
  friend class ::WinIfExists;
16019
18263
  friend class ::WinImportHandler;
16020
18264
  friend class ::WinMacros;
16021
18265
  friend class ::CMatchSyntax;
16034
18278
  friend class ::CCExprResolve;
16035
18279
  friend class ::CExprResolve;
16036
18280
 
 
18281
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18282
 
16037
18283
public:
16038
18284
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
16039
18285
  static const char *NodeId ();
16040
18286
  const char *NodeName () const { return NodeId (); }
16041
18287
};
16042
18288
 
 
18289
 
 
18290
#line 18291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16043
18291
} // closed Puma
16044
18292
class WinIfExists;
16045
18293
class WinImportHandler;
16060
18308
class CCExprResolve;
16061
18309
class CExprResolve;
16062
18310
namespace Puma {
16063
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
 
18311
 
 
18312
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18313
class CT_TemplateArgList : public CT_List {
 
18314
#line 18315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18315
  friend class ::WinIfExists;
16064
18316
  friend class ::WinImportHandler;
16065
18317
  friend class ::WinMacros;
16066
18318
  friend class ::CMatchSyntax;
16079
18331
  friend class ::CCExprResolve;
16080
18332
  friend class ::CExprResolve;
16081
18333
 
 
18334
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18335
 
16082
18336
public:
16083
18337
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
16084
18338
  static const char *NodeId ();
16091
18345
/*                                                                           */
16092
18346
/*****************************************************************************/
16093
18347
 
 
18348
 
 
18349
#line 18350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16094
18350
} // closed Puma
16095
18351
class WinIfExists;
16096
18352
class WinImportHandler;
16111
18367
class CCExprResolve;
16112
18368
class CExprResolve;
16113
18369
namespace Puma {
16114
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
 
18370
 
 
18371
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18372
class CT_Expression : public CTree, public CSemValue {
 
18373
#line 18374 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18374
  friend class ::WinIfExists;
16115
18375
  friend class ::WinImportHandler;
16116
18376
  friend class ::WinMacros;
16117
18377
  friend class ::CMatchSyntax;
16130
18390
  friend class ::CCExprResolve;
16131
18391
  friend class ::CExprResolve;
16132
18392
 
 
18393
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18394
 
16133
18395
protected:
16134
18396
  CT_Expression () {}
16135
18397
 
16141
18403
  CSemValue *SemValue () const { return (CSemValue*)this; }
16142
18404
   private:
16143
18405
  typedef CT_Expression CCExprResolveExpr;
 
18406
 
 
18407
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16144
18408
 public :
16145
18409
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16146
18410
  typedef CT_Expression CExprResolveExpr;
 
18411
 
 
18412
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16147
18413
 public :
16148
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16149
 
 
 
18414
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18415
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18416
};
 
18417
 
 
18418
 
 
18419
#line 18420 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16150
18420
} // closed Puma
16151
18421
class WinIfExists;
16152
18422
class WinImportHandler;
16167
18437
class CCExprResolve;
16168
18438
class CExprResolve;
16169
18439
namespace Puma {
16170
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
18440
 
 
18441
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18442
class CT_String : public CT_List, public CSemValue {
 
18443
#line 18444 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18444
  friend class ::WinIfExists;
16171
18445
  friend class ::WinImportHandler;
16172
18446
  friend class ::WinMacros;
16173
18447
  friend class ::CMatchSyntax;
16186
18460
  friend class ::CCExprResolve;
16187
18461
  friend class ::CExprResolve;
16188
18462
 
 
18463
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18464
 
16189
18465
public:
16190
18466
  CT_String (int size) : CT_List (size, 1) {}
16191
18467
  static const char *NodeId ();
16196
18472
  CSemValue *SemValue () const { return (CSemValue*)this; }
16197
18473
   private:
16198
18474
  typedef CT_String CCExprResolveExpr;
 
18475
 
 
18476
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16199
18477
 public :
16200
18478
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16201
18479
  typedef CT_String CExprResolveExpr;
 
18480
 
 
18481
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16202
18482
 public :
16203
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16204
 
 
 
18483
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18484
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18485
};
 
18486
 
 
18487
 
 
18488
#line 18489 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16205
18489
} // closed Puma
16206
18490
class WinIfExists;
16207
18491
class WinImportHandler;
16222
18506
class CCExprResolve;
16223
18507
class CExprResolve;
16224
18508
namespace Puma {
16225
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
 
18509
 
 
18510
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18511
class CT_WideString : public CT_String {
 
18512
#line 18513 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18513
  friend class ::WinIfExists;
16226
18514
  friend class ::WinImportHandler;
16227
18515
  friend class ::WinMacros;
16228
18516
  friend class ::CMatchSyntax;
16241
18529
  friend class ::CCExprResolve;
16242
18530
  friend class ::CExprResolve;
16243
18531
 
 
18532
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18533
 
16244
18534
public:
16245
18535
  CT_WideString (int size) : CT_String (size) {}
16246
18536
  static const char *NodeId ();
16247
18537
  const char *NodeName () const { return NodeId (); }
16248
18538
   private:
16249
18539
  typedef CT_WideString CCExprResolveExpr;
 
18540
 
 
18541
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16250
18542
 public :
16251
18543
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16252
18544
  typedef CT_WideString CExprResolveExpr;
 
18545
 
 
18546
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16253
18547
 public :
16254
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16255
 
 
 
18548
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18549
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18550
};
 
18551
 
 
18552
 
 
18553
#line 18554 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16256
18554
} // closed Puma
16257
18555
class WinIfExists;
16258
18556
class WinImportHandler;
16273
18571
class CCExprResolve;
16274
18572
class CExprResolve;
16275
18573
namespace Puma {
16276
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
 
18574
 
 
18575
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18576
class CT_Integer : public CT_Expression {
 
18577
#line 18578 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18578
  friend class ::WinIfExists;
16277
18579
  friend class ::WinImportHandler;
16278
18580
  friend class ::WinMacros;
16279
18581
  friend class ::CMatchSyntax;
16292
18594
  friend class ::CCExprResolve;
16293
18595
  friend class ::CExprResolve;
16294
18596
 
 
18597
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18598
 
16295
18599
  CTree *_value;  // CT_Token
16296
18600
 
16297
18601
public:
16304
18608
   { if (old_son == _value) _value = new_son; }
16305
18609
   private:
16306
18610
  typedef CT_Integer CCExprResolveExpr;
 
18611
 
 
18612
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16307
18613
 public :
16308
18614
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16309
18615
  typedef CT_Integer CExprResolveExpr;
 
18616
 
 
18617
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16310
18618
 public :
16311
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16312
 
 
 
18619
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18620
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18621
};
 
18622
 
 
18623
 
 
18624
#line 18625 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16313
18625
} // closed Puma
16314
18626
class WinIfExists;
16315
18627
class WinImportHandler;
16330
18642
class CCExprResolve;
16331
18643
class CExprResolve;
16332
18644
namespace Puma {
16333
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
 
18645
 
 
18646
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18647
class CT_Character : public CT_Expression {
 
18648
#line 18649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18649
  friend class ::WinIfExists;
16334
18650
  friend class ::WinImportHandler;
16335
18651
  friend class ::WinMacros;
16336
18652
  friend class ::CMatchSyntax;
16349
18665
  friend class ::CCExprResolve;
16350
18666
  friend class ::CExprResolve;
16351
18667
 
 
18668
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18669
 
16352
18670
  CTree *_value;  // CT_Token
16353
18671
 
16354
18672
public:
16361
18679
   { if (old_son == _value) _value = new_son; }
16362
18680
   private:
16363
18681
  typedef CT_Character CCExprResolveExpr;
 
18682
 
 
18683
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16364
18684
 public :
16365
18685
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16366
18686
  typedef CT_Character CExprResolveExpr;
 
18687
 
 
18688
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16367
18689
 public :
16368
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16369
 
 
 
18690
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18691
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18692
};
 
18693
 
 
18694
 
 
18695
#line 18696 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16370
18696
} // closed Puma
16371
18697
class WinIfExists;
16372
18698
class WinImportHandler;
16387
18713
class CCExprResolve;
16388
18714
class CExprResolve;
16389
18715
namespace Puma {
16390
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
 
18716
 
 
18717
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18718
class CT_WideCharacter : public CT_Character {
 
18719
#line 18720 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18720
  friend class ::WinIfExists;
16391
18721
  friend class ::WinImportHandler;
16392
18722
  friend class ::WinMacros;
16393
18723
  friend class ::CMatchSyntax;
16406
18736
  friend class ::CCExprResolve;
16407
18737
  friend class ::CExprResolve;
16408
18738
 
 
18739
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18740
 
16409
18741
  CTree *_value;  // CT_Token
16410
18742
 
16411
18743
public:
16416
18748
   { if (old_son == _value) _value = new_son; }
16417
18749
   private:
16418
18750
  typedef CT_WideCharacter CCExprResolveExpr;
 
18751
 
 
18752
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16419
18753
 public :
16420
18754
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16421
18755
  typedef CT_WideCharacter CExprResolveExpr;
 
18756
 
 
18757
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16422
18758
 public :
16423
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16424
 
 
 
18759
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18760
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18761
};
 
18762
 
 
18763
 
 
18764
#line 18765 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16425
18765
} // closed Puma
16426
18766
class WinIfExists;
16427
18767
class WinImportHandler;
16442
18782
class CCExprResolve;
16443
18783
class CExprResolve;
16444
18784
namespace Puma {
16445
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
 
18785
 
 
18786
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18787
class CT_Float : public CT_Expression {
 
18788
#line 18789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18789
  friend class ::WinIfExists;
16446
18790
  friend class ::WinImportHandler;
16447
18791
  friend class ::WinMacros;
16448
18792
  friend class ::CMatchSyntax;
16461
18805
  friend class ::CCExprResolve;
16462
18806
  friend class ::CExprResolve;
16463
18807
 
 
18808
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18809
 
16464
18810
  CTree *_value;  // CT_Token
16465
18811
 
16466
18812
public:
16473
18819
   { if (old_son == _value) _value = new_son; }
16474
18820
   private:
16475
18821
  typedef CT_Float CCExprResolveExpr;
 
18822
 
 
18823
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16476
18824
 public :
16477
18825
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16478
18826
  typedef CT_Float CExprResolveExpr;
 
18827
 
 
18828
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16479
18829
 public :
16480
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16481
 
 
 
18830
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18831
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18832
};
 
18833
 
 
18834
 
 
18835
#line 18836 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16482
18836
} // closed Puma
16483
18837
class WinIfExists;
16484
18838
class WinImportHandler;
16499
18853
class CCExprResolve;
16500
18854
class CExprResolve;
16501
18855
namespace Puma {
16502
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
 
18856
 
 
18857
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18858
class CT_Bool : public CT_Expression {
 
18859
#line 18860 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18860
  friend class ::WinIfExists;
16503
18861
  friend class ::WinImportHandler;
16504
18862
  friend class ::WinMacros;
16505
18863
  friend class ::CMatchSyntax;
16518
18876
  friend class ::CCExprResolve;
16519
18877
  friend class ::CExprResolve;
16520
18878
 
 
18879
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18880
 
16521
18881
  CTree *_value;  // CT_Token
16522
18882
 
16523
18883
public:
16530
18890
   { if (old_son == _value) _value = new_son; }
16531
18891
   private:
16532
18892
  typedef CT_Bool CCExprResolveExpr;
 
18893
 
 
18894
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16533
18895
 public :
16534
18896
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16535
18897
  typedef CT_Bool CExprResolveExpr;
 
18898
 
 
18899
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16536
18900
 public :
16537
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16538
 
 
 
18901
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18902
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18903
};
 
18904
 
 
18905
 
 
18906
#line 18907 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16539
18907
} // closed Puma
16540
18908
class WinIfExists;
16541
18909
class WinImportHandler;
16556
18924
class CCExprResolve;
16557
18925
class CExprResolve;
16558
18926
namespace Puma {
16559
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
 
18927
 
 
18928
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18929
class CT_BracedExpr : public CT_Expression {
 
18930
#line 18931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
18931
  friend class ::WinIfExists;
16560
18932
  friend class ::WinImportHandler;
16561
18933
  friend class ::WinMacros;
16562
18934
  friend class ::CMatchSyntax;
16575
18947
  friend class ::CCExprResolve;
16576
18948
  friend class ::CExprResolve;
16577
18949
 
 
18950
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18951
 
16578
18952
  CTree *sons[3]; // open, expr, close
16579
18953
 
16580
18954
public:
16594
18968
  }
16595
18969
   private:
16596
18970
  typedef CT_BracedExpr CCExprResolveExpr;
 
18971
 
 
18972
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16597
18973
 public :
16598
18974
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16599
18975
  typedef CT_BracedExpr CExprResolveExpr;
 
18976
 
 
18977
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16600
18978
 public :
16601
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16602
 
 
 
18979
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
18980
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
18981
};
 
18982
 
 
18983
 
 
18984
#line 18985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16603
18985
} // closed Puma
16604
18986
class WinIfExists;
16605
18987
class WinImportHandler;
16620
19002
class CCExprResolve;
16621
19003
class CExprResolve;
16622
19004
namespace Puma {
 
19005
 
 
19006
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
16623
19007
class CT_SimpleName : public CT_List, public Printable, 
16624
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
19008
                      public CSemValue, public CSemObject {
 
19009
#line 19010 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19010
  friend class ::WinIfExists;
16625
19011
  friend class ::WinImportHandler;
16626
19012
  friend class ::WinMacros;
16627
19013
  friend class ::CMatchSyntax;
16640
19026
  friend class ::CCExprResolve;
16641
19027
  friend class ::CExprResolve;
16642
19028
 
 
19029
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19030
 
16643
19031
protected:
16644
19032
  CT_SimpleName (int size) : CT_List (size, 1) {}
16645
19033
  CT_SimpleName (int size, int properties) : 
16664
19052
  virtual CT_SimpleName *IsSimpleName () { return this; }  
16665
19053
   private:
16666
19054
  typedef CT_SimpleName CCExprResolveExpr;
 
19055
 
 
19056
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16667
19057
 public :
16668
19058
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16669
19059
  typedef CT_SimpleName CExprResolveExpr;
 
19060
 
 
19061
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16670
19062
 public :
16671
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16672
 
 
 
19063
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19064
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19065
};
 
19066
 
 
19067
 
 
19068
#line 19069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16673
19069
} // closed Puma
16674
19070
class WinIfExists;
16675
19071
class WinImportHandler;
16690
19086
class CCExprResolve;
16691
19087
class CExprResolve;
16692
19088
namespace Puma {
16693
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
 
19089
 
 
19090
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19091
class CT_SpecialName : public CT_SimpleName {
 
19092
#line 19093 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19093
  friend class ::WinIfExists;
16694
19094
  friend class ::WinImportHandler;
16695
19095
  friend class ::WinMacros;
16696
19096
  friend class ::CMatchSyntax;
16709
19109
  friend class ::CCExprResolve;
16710
19110
  friend class ::CExprResolve;
16711
19111
 
 
19112
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19113
 
16712
19114
  char *_name;
16713
19115
  
16714
19116
protected:
16728
19130
  void  operator delete (void *);
16729
19131
   private:
16730
19132
  typedef CT_SpecialName CCExprResolveExpr;
 
19133
 
 
19134
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16731
19135
 public :
16732
19136
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16733
19137
  typedef CT_SpecialName CExprResolveExpr;
 
19138
 
 
19139
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16734
19140
 public :
16735
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16736
 
 
 
19141
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19142
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19143
};
 
19144
 
 
19145
 
 
19146
#line 19147 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16737
19147
} // closed Puma
16738
19148
class WinIfExists;
16739
19149
class WinImportHandler;
16754
19164
class CCExprResolve;
16755
19165
class CExprResolve;
16756
19166
namespace Puma {
16757
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
 
19167
 
 
19168
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19169
class CT_PrivateName : public CT_SpecialName {
 
19170
#line 19171 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19171
  friend class ::WinIfExists;
16758
19172
  friend class ::WinImportHandler;
16759
19173
  friend class ::WinMacros;
16760
19174
  friend class ::CMatchSyntax;
16773
19187
  friend class ::CCExprResolve;
16774
19188
  friend class ::CExprResolve;
16775
19189
 
 
19190
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19191
 
16776
19192
public:
16777
19193
  CT_PrivateName (const char *n) { Name (n); }
16778
19194
  static const char *NodeId ();
16784
19200
  void  operator delete (void *);
16785
19201
   private:
16786
19202
  typedef CT_PrivateName CCExprResolveExpr;
 
19203
 
 
19204
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16787
19205
 public :
16788
19206
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16789
19207
  typedef CT_PrivateName CExprResolveExpr;
 
19208
 
 
19209
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16790
19210
 public :
16791
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16792
 
 
 
19211
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19212
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19213
};
 
19214
 
 
19215
 
 
19216
#line 19217 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16793
19217
} // closed Puma
16794
19218
class WinIfExists;
16795
19219
class WinImportHandler;
16810
19234
class CCExprResolve;
16811
19235
class CExprResolve;
16812
19236
namespace Puma {
16813
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
 
19237
 
 
19238
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19239
class CT_DestructorName : public CT_SpecialName {
 
19240
#line 19241 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19241
  friend class ::WinIfExists;
16814
19242
  friend class ::WinImportHandler;
16815
19243
  friend class ::WinMacros;
16816
19244
  friend class ::CMatchSyntax;
16829
19257
  friend class ::CCExprResolve;
16830
19258
  friend class ::CExprResolve;
16831
19259
 
 
19260
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19261
 
16832
19262
public:
16833
19263
  CT_DestructorName (CTree *, CTree *);
16834
19264
  static const char *NodeId ();
16838
19268
  void  operator delete (void *);
16839
19269
   private:
16840
19270
  typedef CT_DestructorName CCExprResolveExpr;
 
19271
 
 
19272
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16841
19273
 public :
16842
19274
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16843
19275
  typedef CT_DestructorName CExprResolveExpr;
 
19276
 
 
19277
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16844
19278
 public :
16845
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16846
 
 
 
19279
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19280
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19281
};
 
19282
 
 
19283
 
 
19284
#line 19285 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16847
19285
} // closed Puma
16848
19286
class WinIfExists;
16849
19287
class WinImportHandler;
16864
19302
class CCExprResolve;
16865
19303
class CExprResolve;
16866
19304
namespace Puma {
16867
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
 
19305
 
 
19306
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19307
class CT_TemplateName : public CT_SpecialName {
 
19308
#line 19309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19309
  friend class ::WinIfExists;
16868
19310
  friend class ::WinImportHandler;
16869
19311
  friend class ::WinMacros;
16870
19312
  friend class ::CMatchSyntax;
16883
19325
  friend class ::CCExprResolve;
16884
19326
  friend class ::CExprResolve;
16885
19327
 
 
19328
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19329
 
16886
19330
public:
16887
19331
  CT_TemplateName (CTree *n, CTree *a) 
16888
19332
   { AddSon (n); AddSon (a); }
16899
19343
  void  operator delete (void *);
16900
19344
   private:
16901
19345
  typedef CT_TemplateName CCExprResolveExpr;
 
19346
 
 
19347
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16902
19348
 public :
16903
19349
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16904
19350
  typedef CT_TemplateName CExprResolveExpr;
 
19351
 
 
19352
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16905
19353
 public :
16906
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16907
 
 
 
19354
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19355
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19356
};
 
19357
 
 
19358
 
 
19359
#line 19360 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16908
19360
} // closed Puma
16909
19361
class WinIfExists;
16910
19362
class WinImportHandler;
16925
19377
class CCExprResolve;
16926
19378
class CExprResolve;
16927
19379
namespace Puma {
16928
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
 
19380
 
 
19381
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19382
class CT_OperatorName : public CT_SpecialName {
 
19383
#line 19384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19384
  friend class ::WinIfExists;
16929
19385
  friend class ::WinImportHandler;
16930
19386
  friend class ::WinMacros;
16931
19387
  friend class ::CMatchSyntax;
16944
19400
  friend class ::CCExprResolve;
16945
19401
  friend class ::CExprResolve;
16946
19402
 
 
19403
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19404
 
16947
19405
  int _oper;
16948
19406
 
16949
19407
public:
16965
19423
  void  operator delete (void *);
16966
19424
   private:
16967
19425
  typedef CT_OperatorName CCExprResolveExpr;
 
19426
 
 
19427
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
16968
19428
 public :
16969
19429
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
16970
19430
  typedef CT_OperatorName CExprResolveExpr;
 
19431
 
 
19432
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
16971
19433
 public :
16972
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
16973
 
 
 
19434
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19435
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19436
};
 
19437
 
 
19438
 
 
19439
#line 19440 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
16974
19440
} // closed Puma
16975
19441
class WinIfExists;
16976
19442
class WinImportHandler;
16991
19457
class CCExprResolve;
16992
19458
class CExprResolve;
16993
19459
namespace Puma {
16994
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
 
19460
 
 
19461
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19462
class CT_ConversionName : public CT_SpecialName {
 
19463
#line 19464 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19464
  friend class ::WinIfExists;
16995
19465
  friend class ::WinImportHandler;
16996
19466
  friend class ::WinMacros;
16997
19467
  friend class ::CMatchSyntax;
17010
19480
  friend class ::CCExprResolve;
17011
19481
  friend class ::CExprResolve;
17012
19482
 
 
19483
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19484
 
17013
19485
public:
17014
19486
  CT_ConversionName (CTree *, CTree *);
17015
19487
  static const char *NodeId ();
17020
19492
  void  operator delete (void *);
17021
19493
   private:
17022
19494
  typedef CT_ConversionName CCExprResolveExpr;
 
19495
 
 
19496
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17023
19497
 public :
17024
19498
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17025
19499
  typedef CT_ConversionName CExprResolveExpr;
 
19500
 
 
19501
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17026
19502
 public :
17027
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17028
 
 
 
19503
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19504
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19505
};
 
19506
 
 
19507
 
 
19508
#line 19509 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17029
19509
} // closed Puma
17030
19510
class WinIfExists;
17031
19511
class WinImportHandler;
17046
19526
class CCExprResolve;
17047
19527
class CExprResolve;
17048
19528
namespace Puma {
17049
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
 
19529
 
 
19530
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19531
class CT_QualName : public CT_SimpleName {
 
19532
#line 19533 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19533
  friend class ::WinIfExists;
17050
19534
  friend class ::WinImportHandler;
17051
19535
  friend class ::WinMacros;
17052
19536
  friend class ::CMatchSyntax;
17065
19549
  friend class ::CCExprResolve;
17066
19550
  friend class ::CExprResolve;
17067
19551
 
 
19552
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19553
 
17068
19554
public:
17069
19555
  CT_QualName (int size = 3) : 
17070
19556
    CT_SimpleName (size, CT_List::SEPARATORS) {}
17082
19568
  void  operator delete (void *);
17083
19569
   private:
17084
19570
  typedef CT_QualName CCExprResolveExpr;
 
19571
 
 
19572
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17085
19573
 public :
17086
19574
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17087
19575
  typedef CT_QualName CExprResolveExpr;
 
19576
 
 
19577
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17088
19578
 public :
17089
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17090
 
 
 
19579
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19580
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19581
};
 
19582
 
 
19583
 
 
19584
#line 19585 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17091
19585
} // closed Puma
17092
19586
class WinIfExists;
17093
19587
class WinImportHandler;
17108
19602
class CCExprResolve;
17109
19603
class CExprResolve;
17110
19604
namespace Puma {
17111
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
 
19605
 
 
19606
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19607
class CT_RootQualName : public CT_QualName {
 
19608
#line 19609 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19609
  friend class ::WinIfExists;
17112
19610
  friend class ::WinImportHandler;
17113
19611
  friend class ::WinMacros;
17114
19612
  friend class ::CMatchSyntax;
17127
19625
  friend class ::CCExprResolve;
17128
19626
  friend class ::CExprResolve;
17129
19627
 
 
19628
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19629
 
17130
19630
public:
17131
19631
  CT_RootQualName (int size = 2) : 
17132
19632
    CT_QualName (size) { AddProperties (INTRO); }
17137
19637
  void  operator delete (void *);
17138
19638
   private:
17139
19639
  typedef CT_RootQualName CCExprResolveExpr;
 
19640
 
 
19641
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17140
19642
 public :
17141
19643
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17142
19644
  typedef CT_RootQualName CExprResolveExpr;
 
19645
 
 
19646
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17143
19647
 public :
17144
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17145
 
 
 
19648
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19649
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19650
};
 
19651
 
 
19652
 
 
19653
#line 19654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17146
19654
} // closed Puma
17147
19655
class WinIfExists;
17148
19656
class WinImportHandler;
17163
19671
class CCExprResolve;
17164
19672
class CExprResolve;
17165
19673
namespace Puma {
17166
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
19674
 
 
19675
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19676
class CT_BinaryExpr : public CT_Expression {
 
19677
#line 19678 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19678
  friend class ::WinIfExists;
17167
19679
  friend class ::WinImportHandler;
17168
19680
  friend class ::WinMacros;
17169
19681
  friend class ::CMatchSyntax;
17182
19694
  friend class ::CCExprResolve;
17183
19695
  friend class ::CExprResolve;
17184
19696
 
 
19697
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19698
 
17185
19699
  CTree *sons[3]; // expr, oper, expr
17186
19700
 
17187
19701
public:
17197
19711
  }
17198
19712
   private:
17199
19713
  typedef CT_BinaryExpr CCExprResolveExpr;
 
19714
 
 
19715
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17200
19716
 public :
17201
19717
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17202
19718
  typedef CT_BinaryExpr CExprResolveExpr;
 
19719
 
 
19720
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17203
19721
 public :
17204
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17205
 
 
 
19722
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19723
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19724
};
 
19725
 
 
19726
 
 
19727
#line 19728 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17206
19728
} // closed Puma
17207
19729
class WinIfExists;
17208
19730
class WinImportHandler;
17223
19745
class CCExprResolve;
17224
19746
class CExprResolve;
17225
19747
namespace Puma {
17226
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
 
19748
 
 
19749
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19750
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
19751
#line 19752 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19752
  friend class ::WinIfExists;
17227
19753
  friend class ::WinImportHandler;
17228
19754
  friend class ::WinMacros;
17229
19755
  friend class ::CMatchSyntax;
17242
19768
  friend class ::CCExprResolve;
17243
19769
  friend class ::CExprResolve;
17244
19770
 
 
19771
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19772
 
17245
19773
public:
17246
19774
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
17247
19775
    CT_BinaryExpr (e, o, i) {}
17250
19778
  CSemObject *SemObject () const { return (CSemObject*)this; }
17251
19779
   private:
17252
19780
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
19781
 
 
19782
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17253
19783
 public :
17254
19784
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17255
19785
  typedef CT_MembPtrExpr CExprResolveExpr;
 
19786
 
 
19787
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17256
19788
 public :
17257
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17258
 
 
 
19789
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19790
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19791
};
 
19792
 
 
19793
 
 
19794
#line 19795 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17259
19795
} // closed Puma
17260
19796
class WinIfExists;
17261
19797
class WinImportHandler;
17276
19812
class CCExprResolve;
17277
19813
class CExprResolve;
17278
19814
namespace Puma {
17279
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
 
19815
 
 
19816
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19817
class CT_MembRefExpr : public CT_MembPtrExpr {
 
19818
#line 19819 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19819
  friend class ::WinIfExists;
17280
19820
  friend class ::WinImportHandler;
17281
19821
  friend class ::WinMacros;
17282
19822
  friend class ::CMatchSyntax;
17295
19835
  friend class ::CCExprResolve;
17296
19836
  friend class ::CExprResolve;
17297
19837
 
 
19838
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19839
 
17298
19840
public:
17299
19841
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
17300
19842
    CT_MembPtrExpr (e, o, i) {}
17302
19844
  const char *NodeName () const { return NodeId (); }
17303
19845
   private:
17304
19846
  typedef CT_MembRefExpr CCExprResolveExpr;
 
19847
 
 
19848
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17305
19849
 public :
17306
19850
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17307
19851
  typedef CT_MembRefExpr CExprResolveExpr;
 
19852
 
 
19853
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17308
19854
 public :
17309
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17310
 
 
 
19855
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19856
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19857
};
 
19858
 
 
19859
 
 
19860
#line 19861 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17311
19861
} // closed Puma
17312
19862
class WinIfExists;
17313
19863
class WinImportHandler;
17328
19878
class CCExprResolve;
17329
19879
class CExprResolve;
17330
19880
namespace Puma {
17331
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
19881
 
 
19882
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19883
class CT_UnaryExpr : public CT_Expression {
 
19884
#line 19885 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19885
  friend class ::WinIfExists;
17332
19886
  friend class ::WinImportHandler;
17333
19887
  friend class ::WinMacros;
17334
19888
  friend class ::CMatchSyntax;
17347
19901
  friend class ::CCExprResolve;
17348
19902
  friend class ::CExprResolve;
17349
19903
 
 
19904
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19905
 
17350
19906
  CTree *sons[2]; // oper, expr
17351
19907
 
17352
19908
public:
17361
19917
  CTree *Expr () const { return sons[1]; }
17362
19918
   private:
17363
19919
  typedef CT_UnaryExpr CCExprResolveExpr;
 
19920
 
 
19921
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17364
19922
 public :
17365
19923
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17366
19924
  typedef CT_UnaryExpr CExprResolveExpr;
 
19925
 
 
19926
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17367
19927
 public :
17368
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17369
 
 
 
19928
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19929
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19930
};
 
19931
 
 
19932
 
 
19933
#line 19934 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17370
19934
} // closed Puma
17371
19935
class WinIfExists;
17372
19936
class WinImportHandler;
17387
19951
class CCExprResolve;
17388
19952
class CExprResolve;
17389
19953
namespace Puma {
17390
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
19954
 
 
19955
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19956
class CT_PostfixExpr : public CT_UnaryExpr {
 
19957
#line 19958 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
19958
  friend class ::WinIfExists;
17391
19959
  friend class ::WinImportHandler;
17392
19960
  friend class ::WinMacros;
17393
19961
  friend class ::CMatchSyntax;
17406
19974
  friend class ::CCExprResolve;
17407
19975
  friend class ::CExprResolve;
17408
19976
 
 
19977
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19978
 
17409
19979
public:
17410
19980
  CT_PostfixExpr (CTree *e, CTree *o) :
17411
19981
    CT_UnaryExpr (e, o) {}
17413
19983
  const char *NodeName () const { return NodeId (); }
17414
19984
   private:
17415
19985
  typedef CT_PostfixExpr CCExprResolveExpr;
 
19986
 
 
19987
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17416
19988
 public :
17417
19989
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17418
19990
  typedef CT_PostfixExpr CExprResolveExpr;
 
19991
 
 
19992
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17419
19993
 public :
17420
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17421
 
 
 
19994
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
19995
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
19996
};
 
19997
 
 
19998
 
 
19999
#line 20000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17422
20000
} // closed Puma
17423
20001
class WinIfExists;
17424
20002
class WinImportHandler;
17439
20017
class CCExprResolve;
17440
20018
class CExprResolve;
17441
20019
namespace Puma {
17442
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
20020
 
 
20021
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20022
class CT_AddrExpr : public CT_UnaryExpr {
 
20023
#line 20024 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20024
  friend class ::WinIfExists;
17443
20025
  friend class ::WinImportHandler;
17444
20026
  friend class ::WinMacros;
17445
20027
  friend class ::CMatchSyntax;
17458
20040
  friend class ::CCExprResolve;
17459
20041
  friend class ::CExprResolve;
17460
20042
 
 
20043
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20044
 
17461
20045
public:
17462
20046
  CT_AddrExpr (CTree *o, CTree *e) :
17463
20047
    CT_UnaryExpr (o, e) {}
17465
20049
  const char *NodeName () const { return NodeId (); }
17466
20050
   private:
17467
20051
  typedef CT_AddrExpr CCExprResolveExpr;
 
20052
 
 
20053
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17468
20054
 public :
17469
20055
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17470
20056
  typedef CT_AddrExpr CExprResolveExpr;
 
20057
 
 
20058
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17471
20059
 public :
17472
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17473
 
 
 
20060
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20061
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20062
};
 
20063
 
 
20064
 
 
20065
#line 20066 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17474
20066
} // closed Puma
17475
20067
class WinIfExists;
17476
20068
class WinImportHandler;
17491
20083
class CCExprResolve;
17492
20084
class CExprResolve;
17493
20085
namespace Puma {
17494
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
20086
 
 
20087
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20088
class CT_DerefExpr : public CT_UnaryExpr {
 
20089
#line 20090 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20090
  friend class ::WinIfExists;
17495
20091
  friend class ::WinImportHandler;
17496
20092
  friend class ::WinMacros;
17497
20093
  friend class ::CMatchSyntax;
17510
20106
  friend class ::CCExprResolve;
17511
20107
  friend class ::CExprResolve;
17512
20108
 
 
20109
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20110
 
17513
20111
public:
17514
20112
  CT_DerefExpr (CTree *o, CTree *e) :
17515
20113
    CT_UnaryExpr (o, e) {}
17517
20115
  const char *NodeName () const { return NodeId (); }
17518
20116
   private:
17519
20117
  typedef CT_DerefExpr CCExprResolveExpr;
 
20118
 
 
20119
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17520
20120
 public :
17521
20121
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17522
20122
  typedef CT_DerefExpr CExprResolveExpr;
 
20123
 
 
20124
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17523
20125
 public :
17524
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17525
 
 
 
20126
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20127
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20128
};
 
20129
 
 
20130
 
 
20131
#line 20132 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17526
20132
} // closed Puma
17527
20133
class WinIfExists;
17528
20134
class WinImportHandler;
17543
20149
class CCExprResolve;
17544
20150
class CExprResolve;
17545
20151
namespace Puma {
17546
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
20152
 
 
20153
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20154
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
20155
#line 20156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20156
  friend class ::WinIfExists;
17547
20157
  friend class ::WinImportHandler;
17548
20158
  friend class ::WinMacros;
17549
20159
  friend class ::CMatchSyntax;
17562
20172
  friend class ::CCExprResolve;
17563
20173
  friend class ::CExprResolve;
17564
20174
 
 
20175
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20176
 
17565
20177
  CTree *sons[2]; // oper, expr
17566
20178
 
17567
20179
public:
17578
20190
  CSemObject *SemObject () const { return (CSemObject*)this; }
17579
20191
   private:
17580
20192
  typedef CT_DeleteExpr CCExprResolveExpr;
 
20193
 
 
20194
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17581
20195
 public :
17582
20196
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17583
20197
  typedef CT_DeleteExpr CExprResolveExpr;
 
20198
 
 
20199
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17584
20200
 public :
17585
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17586
 
 
 
20201
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20202
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20203
};
 
20204
 
 
20205
 
 
20206
#line 20207 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17587
20207
} // closed Puma
17588
20208
class WinIfExists;
17589
20209
class WinImportHandler;
17604
20224
class CCExprResolve;
17605
20225
class CExprResolve;
17606
20226
namespace Puma {
17607
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
20227
 
 
20228
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20229
class CT_NewExpr : public CT_Expression, public CSemObject {
 
20230
#line 20231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20231
  friend class ::WinIfExists;
17608
20232
  friend class ::WinImportHandler;
17609
20233
  friend class ::WinMacros;
17610
20234
  friend class ::CMatchSyntax;
17623
20247
  friend class ::CCExprResolve;
17624
20248
  friend class ::CExprResolve;
17625
20249
 
 
20250
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20251
 
17626
20252
  CTree *sons[6]; // oper, placement, open, type, close, init
17627
20253
 
17628
20254
public:
17643
20269
  CSemObject *SemObject () const { return (CSemObject*)this; }
17644
20270
   private:
17645
20271
  typedef CT_NewExpr CCExprResolveExpr;
 
20272
 
 
20273
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17646
20274
 public :
17647
20275
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17648
20276
  typedef CT_NewExpr CExprResolveExpr;
 
20277
 
 
20278
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17649
20279
 public :
17650
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17651
 
 
 
20280
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20281
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20282
};
 
20283
 
 
20284
 
 
20285
#line 20286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17652
20286
} // closed Puma
17653
20287
class WinIfExists;
17654
20288
class WinImportHandler;
17669
20303
class CCExprResolve;
17670
20304
class CExprResolve;
17671
20305
namespace Puma {
17672
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
 
20306
 
 
20307
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20308
class CT_IfThenExpr : public CT_Expression {
 
20309
#line 20310 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20310
  friend class ::WinIfExists;
17673
20311
  friend class ::WinImportHandler;
17674
20312
  friend class ::WinMacros;
17675
20313
  friend class ::CMatchSyntax;
17688
20326
  friend class ::CCExprResolve;
17689
20327
  friend class ::CExprResolve;
17690
20328
 
 
20329
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20330
 
17691
20331
  CTree *sons[5]; // cond, oper, left, colon, right
17692
20332
 
17693
20333
public:
17709
20349
  }
17710
20350
   private:
17711
20351
  typedef CT_IfThenExpr CCExprResolveExpr;
 
20352
 
 
20353
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17712
20354
 public :
17713
20355
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17714
20356
  typedef CT_IfThenExpr CExprResolveExpr;
 
20357
 
 
20358
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17715
20359
 public :
17716
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17717
 
 
 
20360
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20361
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20362
};
 
20363
 
 
20364
 
 
20365
#line 20366 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17718
20366
} // closed Puma
17719
20367
class WinIfExists;
17720
20368
class WinImportHandler;
17735
20383
class CCExprResolve;
17736
20384
class CExprResolve;
17737
20385
namespace Puma {
17738
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
20386
 
 
20387
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20388
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
20389
#line 20390 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20390
  friend class ::WinIfExists;
17739
20391
  friend class ::WinImportHandler;
17740
20392
  friend class ::WinMacros;
17741
20393
  friend class ::CMatchSyntax;
17754
20406
  friend class ::CCExprResolve;
17755
20407
  friend class ::CExprResolve;
17756
20408
 
 
20409
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20410
 
17757
20411
  CTree *sons[4]; // open, type, close, init
17758
20412
 
17759
20413
public:
17772
20426
  CSemObject *SemObject () const { return (CSemObject*)this; }
17773
20427
   private:
17774
20428
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
20429
 
 
20430
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17775
20431
 public :
17776
20432
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17777
20433
  typedef CT_CmpdLiteral CExprResolveExpr;
 
20434
 
 
20435
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17778
20436
 public :
17779
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17780
 
 
 
20437
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20438
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20439
};
 
20440
 
 
20441
 
 
20442
#line 20443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17781
20443
} // closed Puma
17782
20444
class WinIfExists;
17783
20445
class WinImportHandler;
17798
20460
class CCExprResolve;
17799
20461
class CExprResolve;
17800
20462
namespace Puma {
17801
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
20463
 
 
20464
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20465
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
20466
#line 20467 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20467
  friend class ::WinIfExists;
17802
20468
  friend class ::WinImportHandler;
17803
20469
  friend class ::WinMacros;
17804
20470
  friend class ::CMatchSyntax;
17817
20483
  friend class ::CCExprResolve;
17818
20484
  friend class ::CExprResolve;
17819
20485
 
 
20486
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20487
 
17820
20488
  CTree *sons[2]; // type, init
17821
20489
 
17822
20490
public:
17833
20501
  CSemObject *SemObject () const { return (CSemObject*)this; }
17834
20502
   private:
17835
20503
  typedef CT_ConstructExpr CCExprResolveExpr;
 
20504
 
 
20505
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17836
20506
 public :
17837
20507
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17838
20508
  typedef CT_ConstructExpr CExprResolveExpr;
 
20509
 
 
20510
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17839
20511
 public :
17840
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17841
 
 
 
20512
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20513
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20514
};
 
20515
 
 
20516
 
 
20517
#line 20518 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17842
20518
} // closed Puma
17843
20519
class WinIfExists;
17844
20520
class WinImportHandler;
17859
20535
class CCExprResolve;
17860
20536
class CExprResolve;
17861
20537
namespace Puma {
17862
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
 
20538
 
 
20539
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20540
class CT_ThrowExpr : public CT_Expression {
 
20541
#line 20542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20542
  friend class ::WinIfExists;
17863
20543
  friend class ::WinImportHandler;
17864
20544
  friend class ::WinMacros;
17865
20545
  friend class ::CMatchSyntax;
17878
20558
  friend class ::CCExprResolve;
17879
20559
  friend class ::CExprResolve;
17880
20560
 
 
20561
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20562
 
17881
20563
  CTree *sons[2]; // throw, expr
17882
20564
 
17883
20565
public:
17892
20574
  CTree *Expr () const { return sons[1]; }
17893
20575
   private:
17894
20576
  typedef CT_ThrowExpr CCExprResolveExpr;
 
20577
 
 
20578
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17895
20579
 public :
17896
20580
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17897
20581
  typedef CT_ThrowExpr CExprResolveExpr;
 
20582
 
 
20583
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17898
20584
 public :
17899
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17900
 
 
 
20585
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20586
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20587
};
 
20588
 
 
20589
 
 
20590
#line 20591 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17901
20591
} // closed Puma
17902
20592
class WinIfExists;
17903
20593
class WinImportHandler;
17918
20608
class CCExprResolve;
17919
20609
class CExprResolve;
17920
20610
namespace Puma {
17921
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
 
20611
 
 
20612
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20613
class CT_IndexExpr : public CT_Expression {
 
20614
#line 20615 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20615
  friend class ::WinIfExists;
17922
20616
  friend class ::WinImportHandler;
17923
20617
  friend class ::WinMacros;
17924
20618
  friend class ::CMatchSyntax;
17937
20631
  friend class ::CCExprResolve;
17938
20632
  friend class ::CExprResolve;
17939
20633
 
 
20634
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20635
 
17940
20636
  CTree *sons[4]; // expr, open, index, close
17941
20637
 
17942
20638
public:
17952
20648
  }
17953
20649
   private:
17954
20650
  typedef CT_IndexExpr CCExprResolveExpr;
 
20651
 
 
20652
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
17955
20653
 public :
17956
20654
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
17957
20655
  typedef CT_IndexExpr CExprResolveExpr;
 
20656
 
 
20657
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
17958
20658
 public :
17959
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
17960
 
 
 
20659
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20660
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20661
};
 
20662
 
 
20663
 
 
20664
#line 20665 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
17961
20665
} // closed Puma
17962
20666
class WinIfExists;
17963
20667
class WinImportHandler;
17978
20682
class CCExprResolve;
17979
20683
class CExprResolve;
17980
20684
namespace Puma {
17981
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
20685
 
 
20686
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20687
class CT_CallExpr : public CT_Expression, public CSemObject {
 
20688
#line 20689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20689
  friend class ::WinIfExists;
17982
20690
  friend class ::WinImportHandler;
17983
20691
  friend class ::WinMacros;
17984
20692
  friend class ::CMatchSyntax;
17997
20705
  friend class ::CCExprResolve;
17998
20706
  friend class ::CExprResolve;
17999
20707
 
 
20708
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20709
 
18000
20710
  CTree *sons[2]; // expr, args
18001
20711
 
18002
20712
public:
18014
20724
  CSemObject *SemObject () const { return (CSemObject*)this; }
18015
20725
   private:
18016
20726
  typedef CT_CallExpr CCExprResolveExpr;
 
20727
 
 
20728
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18017
20729
 public :
18018
20730
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18019
20731
  typedef CT_CallExpr CExprResolveExpr;
 
20732
 
 
20733
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18020
20734
 public :
18021
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18022
 
 
 
20735
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20736
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20737
};
 
20738
 
 
20739
 
 
20740
#line 20741 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18023
20741
} // closed Puma
18024
20742
class WinIfExists;
18025
20743
class WinImportHandler;
18040
20758
class CCExprResolve;
18041
20759
class CExprResolve;
18042
20760
namespace Puma {
18043
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
 
20761
 
 
20762
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20763
class CT_CastExpr : public CT_Expression {
 
20764
#line 20765 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20765
  friend class ::WinIfExists;
18044
20766
  friend class ::WinImportHandler;
18045
20767
  friend class ::WinMacros;
18046
20768
  friend class ::CMatchSyntax;
18059
20781
  friend class ::CCExprResolve;
18060
20782
  friend class ::CExprResolve;
18061
20783
 
 
20784
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20785
 
18062
20786
  CTree *sons[4]; // open, type, close, expr
18063
20787
 
18064
20788
public:
18076
20800
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
18077
20801
   private:
18078
20802
  typedef CT_CastExpr CCExprResolveExpr;
 
20803
 
 
20804
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18079
20805
 public :
18080
20806
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18081
20807
  typedef CT_CastExpr CExprResolveExpr;
 
20808
 
 
20809
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18082
20810
 public :
18083
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18084
 
 
 
20811
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20812
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20813
};
 
20814
 
 
20815
 
 
20816
#line 20817 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18085
20817
} // closed Puma
18086
20818
class WinIfExists;
18087
20819
class WinImportHandler;
18102
20834
class CCExprResolve;
18103
20835
class CExprResolve;
18104
20836
namespace Puma {
18105
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
 
20837
 
 
20838
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20839
class CT_StaticCast : public CT_Expression {
 
20840
#line 20841 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20841
  friend class ::WinIfExists;
18106
20842
  friend class ::WinImportHandler;
18107
20843
  friend class ::WinMacros;
18108
20844
  friend class ::CMatchSyntax;
18121
20857
  friend class ::CCExprResolve;
18122
20858
  friend class ::CExprResolve;
18123
20859
 
 
20860
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20861
 
18124
20862
  CTree *sons[5]; // cast, open, type, close, expr
18125
20863
 
18126
20864
public:
18138
20876
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
18139
20877
   private:
18140
20878
  typedef CT_StaticCast CCExprResolveExpr;
 
20879
 
 
20880
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18141
20881
 public :
18142
20882
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18143
20883
  typedef CT_StaticCast CExprResolveExpr;
 
20884
 
 
20885
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18144
20886
 public :
18145
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18146
 
 
 
20887
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20888
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20889
};
 
20890
 
 
20891
 
 
20892
#line 20893 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18147
20893
} // closed Puma
18148
20894
class WinIfExists;
18149
20895
class WinImportHandler;
18164
20910
class CCExprResolve;
18165
20911
class CExprResolve;
18166
20912
namespace Puma {
18167
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
 
20913
 
 
20914
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20915
class CT_ConstCast : public CT_StaticCast {
 
20916
#line 20917 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20917
  friend class ::WinIfExists;
18168
20918
  friend class ::WinImportHandler;
18169
20919
  friend class ::WinMacros;
18170
20920
  friend class ::CMatchSyntax;
18183
20933
  friend class ::CCExprResolve;
18184
20934
  friend class ::CExprResolve;
18185
20935
 
 
20936
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20937
 
18186
20938
public:
18187
20939
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
18188
20940
    CT_StaticCast (cst, o, t, c, e) {}
18190
20942
  const char *NodeName () const { return NodeId (); }
18191
20943
   private:
18192
20944
  typedef CT_ConstCast CCExprResolveExpr;
 
20945
 
 
20946
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18193
20947
 public :
18194
20948
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18195
20949
  typedef CT_ConstCast CExprResolveExpr;
 
20950
 
 
20951
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18196
20952
 public :
18197
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18198
 
 
 
20953
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
20954
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20955
};
 
20956
 
 
20957
 
 
20958
#line 20959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18199
20959
} // closed Puma
18200
20960
class WinIfExists;
18201
20961
class WinImportHandler;
18216
20976
class CCExprResolve;
18217
20977
class CExprResolve;
18218
20978
namespace Puma {
18219
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
 
20979
 
 
20980
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
20981
class CT_ReintCast : public CT_StaticCast {
 
20982
#line 20983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
20983
  friend class ::WinIfExists;
18220
20984
  friend class ::WinImportHandler;
18221
20985
  friend class ::WinMacros;
18222
20986
  friend class ::CMatchSyntax;
18235
20999
  friend class ::CCExprResolve;
18236
21000
  friend class ::CExprResolve;
18237
21001
 
 
21002
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21003
 
18238
21004
public:
18239
21005
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
18240
21006
    CT_StaticCast (cst, o, t, c, e) {}
18242
21008
  const char *NodeName () const { return NodeId (); }
18243
21009
   private:
18244
21010
  typedef CT_ReintCast CCExprResolveExpr;
 
21011
 
 
21012
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18245
21013
 public :
18246
21014
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18247
21015
  typedef CT_ReintCast CExprResolveExpr;
 
21016
 
 
21017
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18248
21018
 public :
18249
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18250
 
 
 
21019
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
21020
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21021
};
 
21022
 
 
21023
 
 
21024
#line 21025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18251
21025
} // closed Puma
18252
21026
class WinIfExists;
18253
21027
class WinImportHandler;
18268
21042
class CCExprResolve;
18269
21043
class CExprResolve;
18270
21044
namespace Puma {
18271
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
 
21045
 
 
21046
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21047
class CT_DynamicCast : public CT_StaticCast {
 
21048
#line 21049 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21049
  friend class ::WinIfExists;
18272
21050
  friend class ::WinImportHandler;
18273
21051
  friend class ::WinMacros;
18274
21052
  friend class ::CMatchSyntax;
18287
21065
  friend class ::CCExprResolve;
18288
21066
  friend class ::CExprResolve;
18289
21067
 
 
21068
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21069
 
18290
21070
public:
18291
21071
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
18292
21072
    CT_StaticCast (cst, o, t, c, e) {}
18294
21074
  const char *NodeName () const { return NodeId (); }
18295
21075
   private:
18296
21076
  typedef CT_DynamicCast CCExprResolveExpr;
 
21077
 
 
21078
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18297
21079
 public :
18298
21080
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18299
21081
  typedef CT_DynamicCast CExprResolveExpr;
 
21082
 
 
21083
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18300
21084
 public :
18301
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18302
 
 
 
21085
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
21086
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21087
};
 
21088
 
 
21089
 
 
21090
#line 21091 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18303
21091
} // closed Puma
18304
21092
class WinIfExists;
18305
21093
class WinImportHandler;
18320
21108
class CCExprResolve;
18321
21109
class CExprResolve;
18322
21110
namespace Puma {
18323
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
 
21111
 
 
21112
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21113
class CT_ImplicitCast : public CT_Expression {
 
21114
#line 21115 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21115
  friend class ::WinIfExists;
18324
21116
  friend class ::WinImportHandler;
18325
21117
  friend class ::WinMacros;
18326
21118
  friend class ::CMatchSyntax;
18339
21131
  friend class ::CCExprResolve;
18340
21132
  friend class ::CExprResolve;
18341
21133
 
 
21134
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21135
 
18342
21136
  CTree *_expr; // casted expression
18343
21137
 
18344
21138
public:
18352
21146
   { if (old_son == _expr) _expr = new_son; }
18353
21147
   private:
18354
21148
  typedef CT_ImplicitCast CCExprResolveExpr;
 
21149
 
 
21150
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18355
21151
 public :
18356
21152
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18357
21153
  typedef CT_ImplicitCast CExprResolveExpr;
 
21154
 
 
21155
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18358
21156
 public :
18359
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18360
 
 
 
21157
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
21158
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21159
};
 
21160
 
 
21161
 
 
21162
#line 21163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18361
21163
} // closed Puma
18362
21164
class WinIfExists;
18363
21165
class WinImportHandler;
18378
21180
class CCExprResolve;
18379
21181
class CExprResolve;
18380
21182
namespace Puma {
18381
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
 
21183
 
 
21184
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21185
class CT_TypeidExpr : public CT_Expression {
 
21186
#line 21187 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21187
  friend class ::WinIfExists;
18382
21188
  friend class ::WinImportHandler;
18383
21189
  friend class ::WinMacros;
18384
21190
  friend class ::CMatchSyntax;
18397
21203
  friend class ::CCExprResolve;
18398
21204
  friend class ::CExprResolve;
18399
21205
 
 
21206
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21207
 
18400
21208
  CTree *sons[4]; // typeid, open, type_id/expr, close
18401
21209
 
18402
21210
public:
18413
21221
  CTree *Arg () const { return sons[2]; }
18414
21222
   private:
18415
21223
  typedef CT_TypeidExpr CCExprResolveExpr;
 
21224
 
 
21225
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18416
21226
 public :
18417
21227
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18418
21228
  typedef CT_TypeidExpr CExprResolveExpr;
 
21229
 
 
21230
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18419
21231
 public :
18420
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18421
 
 
 
21232
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
21233
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21234
};
 
21235
 
 
21236
 
 
21237
#line 21238 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18422
21238
} // closed Puma
18423
21239
class WinIfExists;
18424
21240
class WinImportHandler;
18439
21255
class CCExprResolve;
18440
21256
class CExprResolve;
18441
21257
namespace Puma {
18442
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
 
21258
 
 
21259
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21260
class CT_SizeofExpr : public CT_Expression {
 
21261
#line 21262 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21262
  friend class ::WinIfExists;
18443
21263
  friend class ::WinImportHandler;
18444
21264
  friend class ::WinMacros;
18445
21265
  friend class ::CMatchSyntax;
18458
21278
  friend class ::CCExprResolve;
18459
21279
  friend class ::CExprResolve;
18460
21280
 
 
21281
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21282
 
18461
21283
  CTree *sons[5]; // key, open, type, close, expr
18462
21284
 
18463
21285
public:
18478
21300
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
18479
21301
   private:
18480
21302
  typedef CT_SizeofExpr CCExprResolveExpr;
 
21303
 
 
21304
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18481
21305
 public :
18482
21306
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18483
21307
  typedef CT_SizeofExpr CExprResolveExpr;
 
21308
 
 
21309
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18484
21310
 public :
18485
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18486
 
 
 
21311
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
21312
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21313
};
 
21314
 
 
21315
 
 
21316
#line 21317 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18487
21317
} // closed Puma
18488
21318
class WinIfExists;
18489
21319
class WinImportHandler;
18504
21334
class CCExprResolve;
18505
21335
class CExprResolve;
18506
21336
namespace Puma {
18507
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
 
21337
 
 
21338
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21339
class CT_IndexDesignator : public CT_Expression {
 
21340
#line 21341 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21341
  friend class ::WinIfExists;
18508
21342
  friend class ::WinImportHandler;
18509
21343
  friend class ::WinMacros;
18510
21344
  friend class ::CMatchSyntax;
18523
21357
  friend class ::CCExprResolve;
18524
21358
  friend class ::CExprResolve;
18525
21359
 
 
21360
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21361
 
18526
21362
  CTree *sons[3]; // open, index, close
18527
21363
 
18528
21364
public:
18538
21374
  }
18539
21375
   private:
18540
21376
  typedef CT_IndexDesignator CCExprResolveExpr;
 
21377
 
 
21378
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18541
21379
 public :
18542
21380
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18543
21381
  typedef CT_IndexDesignator CExprResolveExpr;
 
21382
 
 
21383
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18544
21384
 public :
18545
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18546
 
 
 
21385
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
21386
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21387
};
 
21388
 
 
21389
 
 
21390
#line 21391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18547
21391
} // closed Puma
18548
21392
class WinIfExists;
18549
21393
class WinImportHandler;
18564
21408
class CCExprResolve;
18565
21409
class CExprResolve;
18566
21410
namespace Puma {
18567
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
 
21411
 
 
21412
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21413
class CT_MembDesignator : public CT_Expression {
 
21414
#line 21415 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21415
  friend class ::WinIfExists;
18568
21416
  friend class ::WinImportHandler;
18569
21417
  friend class ::WinMacros;
18570
21418
  friend class ::CMatchSyntax;
18583
21431
  friend class ::CCExprResolve;
18584
21432
  friend class ::CExprResolve;
18585
21433
 
 
21434
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21435
 
18586
21436
  CTree *sons[2]; // dot, member
18587
21437
 
18588
21438
public:
18596
21446
  }
18597
21447
   private:
18598
21448
  typedef CT_MembDesignator CCExprResolveExpr;
 
21449
 
 
21450
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
18599
21451
 public :
18600
21452
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
18601
21453
  typedef CT_MembDesignator CExprResolveExpr;
 
21454
 
 
21455
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
18602
21456
 public :
18603
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
18604
 
 
 
21457
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
21458
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21459
};
 
21460
 
 
21461
 
 
21462
#line 21463 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18605
21463
} // closed Puma
18606
21464
class WinIfExists;
18607
21465
class WinImportHandler;
18622
21480
class CCExprResolve;
18623
21481
class CExprResolve;
18624
21482
namespace Puma {
18625
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
21483
 
 
21484
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21485
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
21486
#line 21487 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21487
  friend class ::WinIfExists;
18626
21488
  friend class ::WinImportHandler;
18627
21489
  friend class ::WinMacros;
18628
21490
  friend class ::CMatchSyntax;
18641
21503
  friend class ::CCExprResolve;
18642
21504
  friend class ::CExprResolve;
18643
21505
 
 
21506
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21507
 
18644
21508
public:
18645
21509
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
18646
21510
  static const char *NodeId ();
18657
21521
/*                                                                           */
18658
21522
/*****************************************************************************/
18659
21523
 
 
21524
 
 
21525
#line 21526 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18660
21526
} // closed Puma
18661
21527
class WinIfExists;
18662
21528
class WinImportHandler;
18677
21543
class CCExprResolve;
18678
21544
class CExprResolve;
18679
21545
namespace Puma {
18680
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
 
21546
 
 
21547
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21548
class CT_DeclSpec : public CTree {
 
21549
#line 21550 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21550
  friend class ::WinIfExists;
18681
21551
  friend class ::WinImportHandler;
18682
21552
  friend class ::WinMacros;
18683
21553
  friend class ::CMatchSyntax;
18696
21566
  friend class ::CCExprResolve;
18697
21567
  friend class ::CExprResolve;
18698
21568
 
 
21569
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21570
 
18699
21571
protected:
18700
21572
  CT_DeclSpec () {}
18701
21573
};
18702
21574
 
 
21575
 
 
21576
#line 21577 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18703
21577
} // closed Puma
18704
21578
class WinIfExists;
18705
21579
class WinImportHandler;
18720
21594
class CCExprResolve;
18721
21595
class CExprResolve;
18722
21596
namespace Puma {
18723
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
21597
 
 
21598
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21599
class CT_PrimDeclSpec : public CT_DeclSpec {
 
21600
#line 21601 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21601
  friend class ::WinIfExists;
18724
21602
  friend class ::WinImportHandler;
18725
21603
  friend class ::WinMacros;
18726
21604
  friend class ::CMatchSyntax;
18739
21617
  friend class ::CCExprResolve;
18740
21618
  friend class ::CExprResolve;
18741
21619
 
 
21620
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21621
 
18742
21622
public:
18743
21623
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
18744
21624
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
18771
21651
  static const int NumTypes = PDS_NUM;
18772
21652
};
18773
21653
 
 
21654
 
 
21655
#line 21656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18774
21656
} // closed Puma
18775
21657
class WinIfExists;
18776
21658
class WinImportHandler;
18791
21673
class CCExprResolve;
18792
21674
class CExprResolve;
18793
21675
namespace Puma {
18794
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
21676
 
 
21677
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21678
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
21679
#line 21680 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21680
  friend class ::WinIfExists;
18795
21681
  friend class ::WinImportHandler;
18796
21682
  friend class ::WinMacros;
18797
21683
  friend class ::CMatchSyntax;
18810
21696
  friend class ::CCExprResolve;
18811
21697
  friend class ::CExprResolve;
18812
21698
 
 
21699
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21700
 
18813
21701
  CTree *sons[2]; // declspecs, declarator
18814
21702
 
18815
21703
public:
18825
21713
  CSemObject *SemObject () const { return (CSemObject*)this; }
18826
21714
};
18827
21715
      
 
21716
 
 
21717
#line 21718 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18828
21718
} // closed Puma
18829
21719
class WinIfExists;
18830
21720
class WinImportHandler;
18845
21735
class CCExprResolve;
18846
21736
class CExprResolve;
18847
21737
namespace Puma {
18848
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
21738
 
 
21739
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21740
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
21741
#line 21742 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21742
  friend class ::WinIfExists;
18849
21743
  friend class ::WinImportHandler;
18850
21744
  friend class ::WinMacros;
18851
21745
  friend class ::CMatchSyntax;
18864
21758
  friend class ::CCExprResolve;
18865
21759
  friend class ::CExprResolve;
18866
21760
 
 
21761
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21762
 
18867
21763
  CTree *sons[2]; // key, name
18868
21764
  
18869
21765
public:
18879
21775
  }
18880
21776
};
18881
21777
 
 
21778
 
 
21779
#line 21780 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18882
21780
} // closed Puma
18883
21781
class WinIfExists;
18884
21782
class WinImportHandler;
18899
21797
class CCExprResolve;
18900
21798
class CExprResolve;
18901
21799
namespace Puma {
18902
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
21800
 
 
21801
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21802
class CT_UnionSpec : public CT_ClassSpec {
 
21803
#line 21804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21804
  friend class ::WinIfExists;
18903
21805
  friend class ::WinImportHandler;
18904
21806
  friend class ::WinMacros;
18905
21807
  friend class ::CMatchSyntax;
18918
21820
  friend class ::CCExprResolve;
18919
21821
  friend class ::CExprResolve;
18920
21822
 
 
21823
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21824
 
18921
21825
public:
18922
21826
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
18923
21827
  static const char *NodeId ();
18924
21828
  const char *NodeName () const { return NodeId (); }
18925
21829
};
18926
21830
 
 
21831
 
 
21832
#line 21833 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18927
21833
} // closed Puma
18928
21834
class WinIfExists;
18929
21835
class WinImportHandler;
18944
21850
class CCExprResolve;
18945
21851
class CExprResolve;
18946
21852
namespace Puma {
18947
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
21853
 
 
21854
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21855
class CT_EnumSpec : public CT_ClassSpec {
 
21856
#line 21857 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21857
  friend class ::WinIfExists;
18948
21858
  friend class ::WinImportHandler;
18949
21859
  friend class ::WinMacros;
18950
21860
  friend class ::CMatchSyntax;
18963
21873
  friend class ::CCExprResolve;
18964
21874
  friend class ::CExprResolve;
18965
21875
 
 
21876
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21877
 
18966
21878
public:
18967
21879
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
18968
21880
  static const char *NodeId ();
18969
21881
  const char *NodeName () const { return NodeId (); }
18970
21882
};
18971
21883
 
 
21884
 
 
21885
#line 21886 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
18972
21886
} // closed Puma
18973
21887
class WinIfExists;
18974
21888
class WinImportHandler;
18989
21903
class CCExprResolve;
18990
21904
class CExprResolve;
18991
21905
namespace Puma {
18992
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
21906
 
 
21907
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21908
class CT_ExceptionSpec : public CT_DeclSpec {
 
21909
#line 21910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21910
  friend class ::WinIfExists;
18993
21911
  friend class ::WinImportHandler;
18994
21912
  friend class ::WinMacros;
18995
21913
  friend class ::CMatchSyntax;
19008
21926
  friend class ::CCExprResolve;
19009
21927
  friend class ::CExprResolve;
19010
21928
 
 
21929
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21930
 
19011
21931
  CTree *sons[2]; // throw, type_id_list
19012
21932
  
19013
21933
public:
19028
21948
/*                                                                           */
19029
21949
/*****************************************************************************/
19030
21950
 
 
21951
 
 
21952
#line 21953 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19031
21953
} // closed Puma
19032
21954
class WinIfExists;
19033
21955
class WinImportHandler;
19048
21970
class CCExprResolve;
19049
21971
class CExprResolve;
19050
21972
namespace Puma {
19051
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
 
21973
 
 
21974
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
21975
class CT_Decl : public CTree {
 
21976
#line 21977 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
21977
  friend class ::WinIfExists;
19052
21978
  friend class ::WinImportHandler;
19053
21979
  friend class ::WinMacros;
19054
21980
  friend class ::CMatchSyntax;
19066
21992
  friend class ::PragmaOnce;
19067
21993
  friend class ::CCExprResolve;
19068
21994
  friend class ::CExprResolve;
 
21995
 
 
21996
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
19069
21997
 
19070
21998
  CT_LinkageSpec *_linkage;
19071
21999
protected:
19075
22003
  CT_LinkageSpec *Linkage () const { return _linkage; }
19076
22004
};
19077
22005
 
 
22006
 
 
22007
#line 22008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19078
22008
} // closed Puma
19079
22009
class WinIfExists;
19080
22010
class WinImportHandler;
19095
22025
class CCExprResolve;
19096
22026
class CExprResolve;
19097
22027
namespace Puma {
19098
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
22028
 
 
22029
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22030
class CT_Program : public CT_DeclList, public CSemScope {
 
22031
#line 22032 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22032
  friend class ::WinIfExists;
19099
22033
  friend class ::WinImportHandler;
19100
22034
  friend class ::WinMacros;
19101
22035
  friend class ::CMatchSyntax;
19114
22048
  friend class ::CCExprResolve;
19115
22049
  friend class ::CExprResolve;
19116
22050
 
 
22051
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22052
 
19117
22053
public:
19118
22054
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
19119
22055
  static const char *NodeId ();
19120
22056
  const char *NodeName () const { return NodeId (); }
19121
22057
};
19122
22058
   
 
22059
 
 
22060
#line 22061 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19123
22061
} // closed Puma
19124
22062
class WinIfExists;
19125
22063
class WinImportHandler;
19140
22078
class CCExprResolve;
19141
22079
class CExprResolve;
19142
22080
namespace Puma {
19143
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
 
22081
 
 
22082
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22083
class CT_ObjDecl : public CT_Decl {
 
22084
#line 22085 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22085
  friend class ::WinIfExists;
19144
22086
  friend class ::WinImportHandler;
19145
22087
  friend class ::WinMacros;
19146
22088
  friend class ::CMatchSyntax;
19159
22101
  friend class ::CCExprResolve;
19160
22102
  friend class ::CExprResolve;
19161
22103
 
 
22104
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22105
 
19162
22106
  CTree *sons[3]; // declspecs, declarators, colon
19163
22107
 
19164
22108
public:
19176
22120
  }
19177
22121
};
19178
22122
 
 
22123
 
 
22124
#line 22125 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19179
22125
} // closed Puma
19180
22126
class WinIfExists;
19181
22127
class WinImportHandler;
19196
22142
class CCExprResolve;
19197
22143
class CExprResolve;
19198
22144
namespace Puma {
19199
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
22145
 
 
22146
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22147
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
22148
#line 22149 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22149
  friend class ::WinIfExists;
19200
22150
  friend class ::WinImportHandler;
19201
22151
  friend class ::WinMacros;
19202
22152
  friend class ::CMatchSyntax;
19215
22165
  friend class ::CCExprResolve;
19216
22166
  friend class ::CExprResolve;
19217
22167
 
 
22168
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22169
 
19218
22170
  CTree *sons[3]; // export, param_list, decl
19219
22171
 
19220
22172
public:
19235
22187
  CTree *Declaration () const { return sons[2]; }
19236
22188
};
19237
22189
 
 
22190
 
 
22191
#line 22192 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19238
22192
} // closed Puma
19239
22193
class WinIfExists;
19240
22194
class WinImportHandler;
19255
22209
class CCExprResolve;
19256
22210
class CExprResolve;
19257
22211
namespace Puma {
19258
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
22212
 
 
22213
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22214
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
22215
#line 22216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22216
  friend class ::WinIfExists;
19259
22217
  friend class ::WinImportHandler;
19260
22218
  friend class ::WinMacros;
19261
22219
  friend class ::CMatchSyntax;
19274
22232
  friend class ::CCExprResolve;
19275
22233
  friend class ::CExprResolve;
19276
22234
 
 
22235
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22236
 
19277
22237
protected:
19278
22238
  CT_TemplateParamDecl () {}
19279
22239
  
19282
22242
  CSemObject *SemObject () const { return (CSemObject*)this; }
19283
22243
};
19284
22244
 
 
22245
 
 
22246
#line 22247 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19285
22247
} // closed Puma
19286
22248
class WinIfExists;
19287
22249
class WinImportHandler;
19302
22264
class CCExprResolve;
19303
22265
class CExprResolve;
19304
22266
namespace Puma {
19305
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
22267
 
 
22268
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22269
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
22270
#line 22271 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22271
  friend class ::WinIfExists;
19306
22272
  friend class ::WinImportHandler;
19307
22273
  friend class ::WinMacros;
19308
22274
  friend class ::CMatchSyntax;
19321
22287
  friend class ::CCExprResolve;
19322
22288
  friend class ::CExprResolve;
19323
22289
 
 
22290
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22291
 
19324
22292
  CTree *sons[3]; // declspecs, declarator, init
19325
22293
 
19326
22294
public:
19341
22309
  }
19342
22310
};
19343
22311
 
 
22312
 
 
22313
#line 22314 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19344
22314
} // closed Puma
19345
22315
class WinIfExists;
19346
22316
class WinImportHandler;
19361
22331
class CCExprResolve;
19362
22332
class CExprResolve;
19363
22333
namespace Puma {
19364
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
22334
 
 
22335
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22336
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
22337
#line 22338 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22338
  friend class ::WinIfExists;
19365
22339
  friend class ::WinImportHandler;
19366
22340
  friend class ::WinMacros;
19367
22341
  friend class ::CMatchSyntax;
19380
22354
  friend class ::CCExprResolve;
19381
22355
  friend class ::CExprResolve;
19382
22356
 
 
22357
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22358
 
19383
22359
  CTree *sons[4]; // params, key, id, init
19384
22360
 
19385
22361
public:
19401
22377
  }
19402
22378
};
19403
22379
 
 
22380
 
 
22381
#line 22382 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19404
22382
} // closed Puma
19405
22383
class WinIfExists;
19406
22384
class WinImportHandler;
19421
22399
class CCExprResolve;
19422
22400
class CExprResolve;
19423
22401
namespace Puma {
19424
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
22402
 
 
22403
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22404
class CT_EnumDef : public CT_Decl, public CSemObject {
 
22405
#line 22406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22406
  friend class ::WinIfExists;
19425
22407
  friend class ::WinImportHandler;
19426
22408
  friend class ::WinMacros;
19427
22409
  friend class ::CMatchSyntax;
19440
22422
  friend class ::CCExprResolve;
19441
22423
  friend class ::CExprResolve;
19442
22424
 
 
22425
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22426
 
19443
22427
  CTree *sons[3]; // key, name, enumerators
19444
22428
 
19445
22429
public:
19459
22443
  CSemObject *SemObject () const { return (CSemObject*)this; }
19460
22444
};
19461
22445
 
 
22446
 
 
22447
#line 22448 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19462
22448
} // closed Puma
19463
22449
class WinIfExists;
19464
22450
class WinImportHandler;
19479
22465
class CCExprResolve;
19480
22466
class CExprResolve;
19481
22467
namespace Puma {
19482
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
22468
 
 
22469
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22470
class CT_Enumerator : public CT_Decl, public CSemObject {
 
22471
#line 22472 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22472
  friend class ::WinIfExists;
19483
22473
  friend class ::WinImportHandler;
19484
22474
  friend class ::WinMacros;
19485
22475
  friend class ::CMatchSyntax;
19498
22488
  friend class ::CCExprResolve;
19499
22489
  friend class ::CExprResolve;
19500
22490
 
 
22491
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22492
 
19501
22493
  CTree *sons[2]; // name, init
19502
22494
 
19503
22495
public:
19515
22507
  CSemObject *SemObject () const { return (CSemObject*)this; }
19516
22508
};
19517
22509
 
 
22510
 
 
22511
#line 22512 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19518
22512
} // closed Puma
19519
22513
class WinIfExists;
19520
22514
class WinImportHandler;
19535
22529
class CCExprResolve;
19536
22530
class CExprResolve;
19537
22531
namespace Puma {
19538
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
22532
 
 
22533
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22534
class CT_FctDef : public CT_Decl, public CSemObject {
 
22535
#line 22536 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22536
  friend class ::WinIfExists;
19539
22537
  friend class ::WinImportHandler;
19540
22538
  friend class ::WinMacros;
19541
22539
  friend class ::CMatchSyntax;
19554
22552
  friend class ::CCExprResolve;
19555
22553
  friend class ::CExprResolve;
19556
22554
 
 
22555
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22556
 
19557
22557
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
19558
22558
 
19559
22559
public:
19584
22584
  }
19585
22585
};
19586
22586
 
 
22587
 
 
22588
#line 22589 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19587
22589
} // closed Puma
19588
22590
class WinIfExists;
19589
22591
class WinImportHandler;
19604
22606
class CCExprResolve;
19605
22607
class CExprResolve;
19606
22608
namespace Puma {
19607
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
 
22609
 
 
22610
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22611
class CT_AsmDef : public CT_Decl {
 
22612
#line 22613 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22613
  friend class ::WinIfExists;
19608
22614
  friend class ::WinImportHandler;
19609
22615
  friend class ::WinMacros;
19610
22616
  friend class ::CMatchSyntax;
19623
22629
  friend class ::CCExprResolve;
19624
22630
  friend class ::CExprResolve;
19625
22631
 
 
22632
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22633
 
19626
22634
  CTree *sons[5]; // asm, open, str, close, semi_colon
19627
22635
 
19628
22636
public:
19639
22647
  }
19640
22648
};
19641
22649
 
 
22650
 
 
22651
#line 22652 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19642
22652
} // closed Puma
19643
22653
class WinIfExists;
19644
22654
class WinImportHandler;
19659
22669
class CCExprResolve;
19660
22670
class CExprResolve;
19661
22671
namespace Puma {
19662
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
22672
 
 
22673
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22674
class CT_Handler : public CT_Decl, public CSemScope {
 
22675
#line 22676 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22676
  friend class ::WinIfExists;
19663
22677
  friend class ::WinImportHandler;
19664
22678
  friend class ::WinMacros;
19665
22679
  friend class ::CMatchSyntax;
19678
22692
  friend class ::CCExprResolve;
19679
22693
  friend class ::CExprResolve;
19680
22694
 
 
22695
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22696
 
19681
22697
  CTree *sons[3]; // catch, exception_decl, stmt
19682
22698
 
19683
22699
public:
19695
22711
  }
19696
22712
};
19697
22713
 
 
22714
 
 
22715
#line 22716 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19698
22716
} // closed Puma
19699
22717
class WinIfExists;
19700
22718
class WinImportHandler;
19715
22733
class CCExprResolve;
19716
22734
class CExprResolve;
19717
22735
namespace Puma {
19718
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
 
22736
 
 
22737
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22738
class CT_LinkageSpec : public CT_Decl {
 
22739
#line 22740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22740
  friend class ::WinIfExists;
19719
22741
  friend class ::WinImportHandler;
19720
22742
  friend class ::WinMacros;
19721
22743
  friend class ::CMatchSyntax;
19734
22756
  friend class ::CCExprResolve;
19735
22757
  friend class ::CExprResolve;
19736
22758
 
 
22759
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22760
 
19737
22761
  CTree *sons[5]; // extern, str, open, decls, close
19738
22762
 
19739
22763
public:
19758
22782
  }
19759
22783
};
19760
22784
 
 
22785
 
 
22786
#line 22787 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19761
22787
} // closed Puma
19762
22788
class WinIfExists;
19763
22789
class WinImportHandler;
19778
22804
class CCExprResolve;
19779
22805
class CExprResolve;
19780
22806
namespace Puma {
19781
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
22807
 
 
22808
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22809
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
22810
#line 22811 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22811
  friend class ::WinIfExists;
19782
22812
  friend class ::WinImportHandler;
19783
22813
  friend class ::WinMacros;
19784
22814
  friend class ::CMatchSyntax;
19797
22827
  friend class ::CCExprResolve;
19798
22828
  friend class ::CExprResolve;
19799
22829
 
 
22830
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22831
 
19800
22832
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
19801
22833
 
19802
22834
public:
19821
22853
  }
19822
22854
};
19823
22855
 
 
22856
 
 
22857
#line 22858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19824
22858
} // closed Puma
19825
22859
class WinIfExists;
19826
22860
class WinImportHandler;
19841
22875
class CCExprResolve;
19842
22876
class CExprResolve;
19843
22877
namespace Puma {
19844
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
22878
 
 
22879
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22880
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
22881
#line 22882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22882
  friend class ::WinIfExists;
19845
22883
  friend class ::WinImportHandler;
19846
22884
  friend class ::WinMacros;
19847
22885
  friend class ::CMatchSyntax;
19860
22898
  friend class ::CCExprResolve;
19861
22899
  friend class ::CExprResolve;
19862
22900
 
 
22901
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22902
 
19863
22903
public:
19864
22904
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
19865
22905
   CT_DeclList (size, 2) { AddProperties (props); }
19867
22907
  const char *NodeName () const { return NodeId (); }
19868
22908
};
19869
22909
 
 
22910
 
 
22911
#line 22912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19870
22912
} // closed Puma
19871
22913
class WinIfExists;
19872
22914
class WinImportHandler;
19887
22929
class CCExprResolve;
19888
22930
class CExprResolve;
19889
22931
namespace Puma {
19890
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
22932
 
 
22933
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22934
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
22935
#line 22936 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22936
  friend class ::WinIfExists;
19891
22937
  friend class ::WinImportHandler;
19892
22938
  friend class ::WinMacros;
19893
22939
  friend class ::CMatchSyntax;
19906
22952
  friend class ::CCExprResolve;
19907
22953
  friend class ::CExprResolve;
19908
22954
 
 
22955
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22956
 
19909
22957
public:
19910
22958
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
19911
22959
  static const char *NodeId ();
19912
22960
  const char *NodeName () const { return NodeId (); }
19913
22961
};
19914
22962
 
 
22963
 
 
22964
#line 22965 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19915
22965
} // closed Puma
19916
22966
class WinIfExists;
19917
22967
class WinImportHandler;
19932
22982
class CCExprResolve;
19933
22983
class CExprResolve;
19934
22984
namespace Puma {
19935
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
 
22985
 
 
22986
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
22987
class CT_ArgNameList : public CT_ArgDeclList {
 
22988
#line 22989 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
22989
  friend class ::WinIfExists;
19936
22990
  friend class ::WinImportHandler;
19937
22991
  friend class ::WinMacros;
19938
22992
  friend class ::CMatchSyntax;
19951
23005
  friend class ::CCExprResolve;
19952
23006
  friend class ::CExprResolve;
19953
23007
 
 
23008
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23009
 
19954
23010
public:
19955
23011
  CT_ArgNameList () : CT_ArgDeclList () {}
19956
23012
  static const char *NodeId ();
19957
23013
  const char *NodeName () const { return NodeId (); }
19958
23014
};
19959
23015
 
 
23016
 
 
23017
#line 23018 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
19960
23018
} // closed Puma
19961
23019
class WinIfExists;
19962
23020
class WinImportHandler;
19977
23035
class CCExprResolve;
19978
23036
class CExprResolve;
19979
23037
namespace Puma {
19980
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
23038
 
 
23039
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23040
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
23041
#line 23042 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23042
  friend class ::WinIfExists;
19981
23043
  friend class ::WinImportHandler;
19982
23044
  friend class ::WinMacros;
19983
23045
  friend class ::CMatchSyntax;
19996
23058
  friend class ::CCExprResolve;
19997
23059
  friend class ::CExprResolve;
19998
23060
 
 
23061
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23062
 
19999
23063
  CTree *sons[3]; // ns, name, members
20000
23064
 
20001
23065
public:
20018
23082
  }
20019
23083
};
20020
23084
 
 
23085
 
 
23086
#line 23087 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20021
23087
} // closed Puma
20022
23088
class WinIfExists;
20023
23089
class WinImportHandler;
20038
23104
class CCExprResolve;
20039
23105
class CExprResolve;
20040
23106
namespace Puma {
20041
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
23107
 
 
23108
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23109
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
23110
#line 23111 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23111
  friend class ::WinIfExists;
20042
23112
  friend class ::WinImportHandler;
20043
23113
  friend class ::WinMacros;
20044
23114
  friend class ::CMatchSyntax;
20057
23127
  friend class ::CCExprResolve;
20058
23128
  friend class ::CExprResolve;
20059
23129
 
 
23130
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23131
 
20060
23132
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
20061
23133
 
20062
23134
public:
20075
23147
  }
20076
23148
};
20077
23149
 
 
23150
 
 
23151
#line 23152 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20078
23152
} // closed Puma
20079
23153
class WinIfExists;
20080
23154
class WinImportHandler;
20095
23169
class CCExprResolve;
20096
23170
class CExprResolve;
20097
23171
namespace Puma {
20098
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
 
23172
 
 
23173
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23174
class CT_UsingDirective : public CT_Decl {
 
23175
#line 23176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23176
  friend class ::WinIfExists;
20099
23177
  friend class ::WinImportHandler;
20100
23178
  friend class ::WinMacros;
20101
23179
  friend class ::CMatchSyntax;
20114
23192
  friend class ::CCExprResolve;
20115
23193
  friend class ::CExprResolve;
20116
23194
 
 
23195
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23196
 
20117
23197
  CTree *sons[4]; // using, ns, name, semi_colon
20118
23198
 
20119
23199
public:
20136
23216
/*                                                                           */
20137
23217
/*****************************************************************************/
20138
23218
 
 
23219
 
 
23220
#line 23221 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20139
23221
} // closed Puma
20140
23222
class WinIfExists;
20141
23223
class WinImportHandler;
20156
23238
class CCExprResolve;
20157
23239
class CExprResolve;
20158
23240
namespace Puma {
20159
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
 
23241
 
 
23242
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23243
class CT_Declarator : public CTree {
 
23244
#line 23245 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23245
  friend class ::WinIfExists;
20160
23246
  friend class ::WinImportHandler;
20161
23247
  friend class ::WinMacros;
20162
23248
  friend class ::CMatchSyntax;
20175
23261
  friend class ::CCExprResolve;
20176
23262
  friend class ::CExprResolve;
20177
23263
 
 
23264
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23265
 
20178
23266
protected:
20179
23267
  CT_Declarator () {}
20180
23268
 
20187
23275
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
20188
23276
};
20189
23277
 
 
23278
 
 
23279
#line 23280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20190
23280
} // closed Puma
20191
23281
class WinIfExists;
20192
23282
class WinImportHandler;
20207
23297
class CCExprResolve;
20208
23298
class CExprResolve;
20209
23299
namespace Puma {
20210
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
23300
 
 
23301
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23302
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
23303
#line 23304 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23304
  friend class ::WinIfExists;
20211
23305
  friend class ::WinImportHandler;
20212
23306
  friend class ::WinMacros;
20213
23307
  friend class ::CMatchSyntax;
20226
23320
  friend class ::CCExprResolve;
20227
23321
  friend class ::CExprResolve;
20228
23322
 
 
23323
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23324
 
20229
23325
  CTree *sons[2]; // declarator, init
20230
23326
  CTree *obj_decl;
20231
23327
 
20248
23344
  }
20249
23345
};
20250
23346
 
 
23347
 
 
23348
#line 23349 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20251
23349
} // closed Puma
20252
23350
class WinIfExists;
20253
23351
class WinImportHandler;
20268
23366
class CCExprResolve;
20269
23367
class CExprResolve;
20270
23368
namespace Puma {
20271
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
23369
 
 
23370
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23371
class CT_BracedDeclarator : public CT_Declarator {
 
23372
#line 23373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23373
  friend class ::WinIfExists;
20272
23374
  friend class ::WinImportHandler;
20273
23375
  friend class ::WinMacros;
20274
23376
  friend class ::CMatchSyntax;
20287
23389
  friend class ::CCExprResolve;
20288
23390
  friend class ::CExprResolve;
20289
23391
 
 
23392
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23393
 
20290
23394
  CTree *sons[4]; // open, win_specs, declarator, close
20291
23395
 
20292
23396
public:
20306
23410
  }
20307
23411
};
20308
23412
 
 
23413
 
 
23414
#line 23415 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20309
23415
} // closed Puma
20310
23416
class WinIfExists;
20311
23417
class WinImportHandler;
20326
23432
class CCExprResolve;
20327
23433
class CExprResolve;
20328
23434
namespace Puma {
20329
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
 
23435
 
 
23436
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23437
class CT_ArrayDelimiter : public CTree {
 
23438
#line 23439 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23439
  friend class ::WinIfExists;
20330
23440
  friend class ::WinImportHandler;
20331
23441
  friend class ::WinMacros;
20332
23442
  friend class ::CMatchSyntax;
20345
23455
  friend class ::CCExprResolve;
20346
23456
  friend class ::CExprResolve;
20347
23457
 
 
23458
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23459
 
20348
23460
  CTree *sons[4]; // star, static, quals, expr
20349
23461
  bool pos0;
20350
23462
 
20365
23477
  }
20366
23478
};
20367
23479
 
 
23480
 
 
23481
#line 23482 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20368
23482
} // closed Puma
20369
23483
class WinIfExists;
20370
23484
class WinImportHandler;
20385
23499
class CCExprResolve;
20386
23500
class CExprResolve;
20387
23501
namespace Puma {
20388
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
 
23502
 
 
23503
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23504
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
23505
#line 23506 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23506
  friend class ::WinIfExists;
20389
23507
  friend class ::WinImportHandler;
20390
23508
  friend class ::WinMacros;
20391
23509
  friend class ::CMatchSyntax;
20404
23522
  friend class ::CCExprResolve;
20405
23523
  friend class ::CExprResolve;
20406
23524
 
 
23525
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23526
 
20407
23527
  CTree *sons[4]; // declarator, open, delim, close
20408
23528
 
20409
23529
public:
20425
23545
  CSemValue *SemValue () const { return (CSemValue*)this; }
20426
23546
};
20427
23547
 
 
23548
 
 
23549
#line 23550 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20428
23550
} // closed Puma
20429
23551
class WinIfExists;
20430
23552
class WinImportHandler;
20445
23567
class CCExprResolve;
20446
23568
class CExprResolve;
20447
23569
namespace Puma {
20448
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
23570
 
 
23571
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23572
class CT_FctDeclarator : public CT_Declarator {
 
23573
#line 23574 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23574
  friend class ::WinIfExists;
20449
23575
  friend class ::WinImportHandler;
20450
23576
  friend class ::WinMacros;
20451
23577
  friend class ::CMatchSyntax;
20464
23590
  friend class ::CCExprResolve;
20465
23591
  friend class ::CExprResolve;
20466
23592
 
 
23593
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23594
 
20467
23595
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
20468
23596
 
20469
23597
public:
20483
23611
  }
20484
23612
};
20485
23613
 
 
23614
 
 
23615
#line 23616 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20486
23616
} // closed Puma
20487
23617
class WinIfExists;
20488
23618
class WinImportHandler;
20503
23633
class CCExprResolve;
20504
23634
class CExprResolve;
20505
23635
namespace Puma {
20506
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
23636
 
 
23637
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23638
class CT_RefDeclarator : public CT_Declarator {
 
23639
#line 23640 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23640
  friend class ::WinIfExists;
20507
23641
  friend class ::WinImportHandler;
20508
23642
  friend class ::WinMacros;
20509
23643
  friend class ::CMatchSyntax;
20522
23656
  friend class ::CCExprResolve;
20523
23657
  friend class ::CExprResolve;
20524
23658
 
 
23659
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23660
 
20525
23661
  CTree *sons[2]; // ref, declarator
20526
23662
 
20527
23663
public:
20536
23672
  }
20537
23673
};
20538
23674
 
 
23675
 
 
23676
#line 23677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20539
23677
} // closed Puma
20540
23678
class WinIfExists;
20541
23679
class WinImportHandler;
20556
23694
class CCExprResolve;
20557
23695
class CExprResolve;
20558
23696
namespace Puma {
20559
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
23697
 
 
23698
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23699
class CT_PtrDeclarator : public CT_Declarator {
 
23700
#line 23701 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23701
  friend class ::WinIfExists;
20560
23702
  friend class ::WinImportHandler;
20561
23703
  friend class ::WinMacros;
20562
23704
  friend class ::CMatchSyntax;
20575
23717
  friend class ::CCExprResolve;
20576
23718
  friend class ::CExprResolve;
20577
23719
 
 
23720
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23721
 
20578
23722
  CTree *sons[3]; // ptr, cv_quals, declarator
20579
23723
 
20580
23724
public:
20592
23736
  }
20593
23737
};
20594
23738
 
 
23739
 
 
23740
#line 23741 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20595
23741
} // closed Puma
20596
23742
class WinIfExists;
20597
23743
class WinImportHandler;
20612
23758
class CCExprResolve;
20613
23759
class CExprResolve;
20614
23760
namespace Puma {
20615
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
23761
 
 
23762
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23763
class CT_MembPtrDeclarator : public CT_Declarator {
 
23764
#line 23765 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23765
  friend class ::WinIfExists;
20616
23766
  friend class ::WinImportHandler;
20617
23767
  friend class ::WinMacros;
20618
23768
  friend class ::CMatchSyntax;
20631
23781
  friend class ::CCExprResolve;
20632
23782
  friend class ::CExprResolve;
20633
23783
 
 
23784
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23785
 
20634
23786
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
20635
23787
 
20636
23788
public:
20649
23801
  }
20650
23802
};
20651
23803
 
 
23804
 
 
23805
#line 23806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20652
23806
} // closed Puma
20653
23807
class WinIfExists;
20654
23808
class WinImportHandler;
20669
23823
class CCExprResolve;
20670
23824
class CExprResolve;
20671
23825
namespace Puma {
20672
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
23826
 
 
23827
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23828
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
23829
#line 23830 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23830
  friend class ::WinIfExists;
20673
23831
  friend class ::WinImportHandler;
20674
23832
  friend class ::WinMacros;
20675
23833
  friend class ::CMatchSyntax;
20688
23846
  friend class ::CCExprResolve;
20689
23847
  friend class ::CExprResolve;
20690
23848
 
 
23849
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23850
 
20691
23851
  CTree *sons[3]; // declarator, colon, expr
20692
23852
 
20693
23853
public:
20713
23873
/*                                                                           */
20714
23874
/*****************************************************************************/
20715
23875
 
 
23876
 
 
23877
#line 23878 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20716
23878
} // closed Puma
20717
23879
class WinIfExists;
20718
23880
class WinImportHandler;
20733
23895
class CCExprResolve;
20734
23896
class CExprResolve;
20735
23897
namespace Puma {
20736
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
 
23898
 
 
23899
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23900
class CT_Statement : public CTree {
 
23901
#line 23902 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23902
  friend class ::WinIfExists;
20737
23903
  friend class ::WinImportHandler;
20738
23904
  friend class ::WinMacros;
20739
23905
  friend class ::CMatchSyntax;
20751
23917
  friend class ::PragmaOnce;
20752
23918
  friend class ::CCExprResolve;
20753
23919
  friend class ::CExprResolve;
 
23920
 
 
23921
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
20754
23922
 
20755
23923
protected:
20756
23924
  CT_Statement () {}
20757
23925
};
20758
23926
 
 
23927
 
 
23928
#line 23929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20759
23929
} // closed Puma
20760
23930
class WinIfExists;
20761
23931
class WinImportHandler;
20776
23946
class CCExprResolve;
20777
23947
class CExprResolve;
20778
23948
namespace Puma {
20779
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
 
23949
 
 
23950
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23951
class CT_LabelStmt : public CT_Statement {
 
23952
#line 23953 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
23953
  friend class ::WinIfExists;
20780
23954
  friend class ::WinImportHandler;
20781
23955
  friend class ::WinMacros;
20782
23956
  friend class ::CMatchSyntax;
20795
23969
  friend class ::CCExprResolve;
20796
23970
  friend class ::CExprResolve;
20797
23971
 
 
23972
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
23973
 
20798
23974
  CTree *sons[3]; // id, colon, stmt
20799
23975
 
20800
23976
public:
20812
23988
  }
20813
23989
};
20814
23990
 
 
23991
 
 
23992
#line 23993 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20815
23993
} // closed Puma
20816
23994
class WinIfExists;
20817
23995
class WinImportHandler;
20832
24010
class CCExprResolve;
20833
24011
class CExprResolve;
20834
24012
namespace Puma {
20835
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
 
24013
 
 
24014
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24015
class CT_DefaultStmt : public CT_Statement {
 
24016
#line 24017 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24017
  friend class ::WinIfExists;
20836
24018
  friend class ::WinImportHandler;
20837
24019
  friend class ::WinMacros;
20838
24020
  friend class ::CMatchSyntax;
20851
24033
  friend class ::CCExprResolve;
20852
24034
  friend class ::CExprResolve;
20853
24035
 
 
24036
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24037
 
20854
24038
  CTree *sons[3]; // keyword, colon, stmt
20855
24039
 
20856
24040
public:
20867
24051
  }
20868
24052
};
20869
24053
 
 
24054
 
 
24055
#line 24056 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20870
24056
} // closed Puma
20871
24057
class WinIfExists;
20872
24058
class WinImportHandler;
20887
24073
class CCExprResolve;
20888
24074
class CExprResolve;
20889
24075
namespace Puma {
20890
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
 
24076
 
 
24077
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24078
class CT_TryStmt : public CT_Statement {
 
24079
#line 24080 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24080
  friend class ::WinIfExists;
20891
24081
  friend class ::WinImportHandler;
20892
24082
  friend class ::WinMacros;
20893
24083
  friend class ::CMatchSyntax;
20906
24096
  friend class ::CCExprResolve;
20907
24097
  friend class ::CExprResolve;
20908
24098
 
 
24099
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24100
 
20909
24101
  CTree *sons[3]; // try, stmt, handlers
20910
24102
 
20911
24103
public:
20923
24115
  }
20924
24116
};
20925
24117
 
 
24118
 
 
24119
#line 24120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20926
24120
} // closed Puma
20927
24121
class WinIfExists;
20928
24122
class WinImportHandler;
20943
24137
class CCExprResolve;
20944
24138
class CExprResolve;
20945
24139
namespace Puma {
20946
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
 
24140
 
 
24141
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24142
class CT_CaseStmt : public CT_Statement {
 
24143
#line 24144 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24144
  friend class ::WinIfExists;
20947
24145
  friend class ::WinImportHandler;
20948
24146
  friend class ::WinMacros;
20949
24147
  friend class ::CMatchSyntax;
20962
24160
  friend class ::CCExprResolve;
20963
24161
  friend class ::CExprResolve;
20964
24162
 
 
24163
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24164
 
20965
24165
  CTree *sons[4]; // keyword, expr, colon, stmt
20966
24166
 
20967
24167
public:
20979
24179
  }
20980
24180
};
20981
24181
 
 
24182
 
 
24183
#line 24184 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
20982
24184
} // closed Puma
20983
24185
class WinIfExists;
20984
24186
class WinImportHandler;
20999
24201
class CCExprResolve;
21000
24202
class CExprResolve;
21001
24203
namespace Puma {
21002
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
 
24204
 
 
24205
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24206
class CT_ExprStmt : public CT_Statement {
 
24207
#line 24208 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24208
  friend class ::WinIfExists;
21003
24209
  friend class ::WinImportHandler;
21004
24210
  friend class ::WinMacros;
21005
24211
  friend class ::CMatchSyntax;
21018
24224
  friend class ::CCExprResolve;
21019
24225
  friend class ::CExprResolve;
21020
24226
 
 
24227
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24228
 
21021
24229
  CTree *sons[2]; // expr, semi_colon
21022
24230
 
21023
24231
public:
21032
24240
  }
21033
24241
};
21034
24242
 
 
24243
 
 
24244
#line 24245 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21035
24245
} // closed Puma
21036
24246
class WinIfExists;
21037
24247
class WinImportHandler;
21052
24262
class CCExprResolve;
21053
24263
class CExprResolve;
21054
24264
namespace Puma {
21055
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
 
24265
 
 
24266
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24267
class CT_DeclStmt : public CT_Statement {
 
24268
#line 24269 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24269
  friend class ::WinIfExists;
21056
24270
  friend class ::WinImportHandler;
21057
24271
  friend class ::WinMacros;
21058
24272
  friend class ::CMatchSyntax;
21071
24285
  friend class ::CCExprResolve;
21072
24286
  friend class ::CExprResolve;
21073
24287
 
 
24288
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24289
 
21074
24290
  CTree *_decl;
21075
24291
 
21076
24292
public:
21083
24299
   { if (old_son == _decl) _decl = new_son; }
21084
24300
};
21085
24301
 
 
24302
 
 
24303
#line 24304 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21086
24304
} // closed Puma
21087
24305
class WinIfExists;
21088
24306
class WinImportHandler;
21103
24321
class CCExprResolve;
21104
24322
class CExprResolve;
21105
24323
namespace Puma {
21106
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
24324
 
 
24325
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24326
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
24327
#line 24328 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24328
  friend class ::WinIfExists;
21107
24329
  friend class ::WinImportHandler;
21108
24330
  friend class ::WinMacros;
21109
24331
  friend class ::CMatchSyntax;
21122
24344
  friend class ::CCExprResolve;
21123
24345
  friend class ::CExprResolve;
21124
24346
 
 
24347
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24348
 
21125
24349
  CTree *sons[5]; // keyword, open, cond, close, stmt
21126
24350
 
21127
24351
public:
21139
24363
  }
21140
24364
};
21141
24365
 
 
24366
 
 
24367
#line 24368 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21142
24368
} // closed Puma
21143
24369
class WinIfExists;
21144
24370
class WinImportHandler;
21159
24385
class CCExprResolve;
21160
24386
class CExprResolve;
21161
24387
namespace Puma {
21162
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
24388
 
 
24389
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24390
class CT_IfStmt : public CT_Statement, public CSemScope {
 
24391
#line 24392 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24392
  friend class ::WinIfExists;
21163
24393
  friend class ::WinImportHandler;
21164
24394
  friend class ::WinMacros;
21165
24395
  friend class ::CMatchSyntax;
21178
24408
  friend class ::CCExprResolve;
21179
24409
  friend class ::CExprResolve;
21180
24410
 
 
24411
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24412
 
21181
24413
  CTree *sons[5]; // keyword, open, cond, close, stmt
21182
24414
 
21183
24415
public:
21195
24427
  }
21196
24428
};
21197
24429
 
 
24430
 
 
24431
#line 24432 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21198
24432
} // closed Puma
21199
24433
class WinIfExists;
21200
24434
class WinImportHandler;
21215
24449
class CCExprResolve;
21216
24450
class CExprResolve;
21217
24451
namespace Puma {
21218
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
24452
 
 
24453
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24454
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
24455
#line 24456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24456
  friend class ::WinIfExists;
21219
24457
  friend class ::WinImportHandler;
21220
24458
  friend class ::WinMacros;
21221
24459
  friend class ::CMatchSyntax;
21234
24472
  friend class ::CCExprResolve;
21235
24473
  friend class ::CExprResolve;
21236
24474
 
 
24475
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24476
 
21237
24477
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
21238
24478
 
21239
24479
public:
21254
24494
  }
21255
24495
};
21256
24496
 
 
24497
 
 
24498
#line 24499 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21257
24499
} // closed Puma
21258
24500
class WinIfExists;
21259
24501
class WinImportHandler;
21274
24516
class CCExprResolve;
21275
24517
class CExprResolve;
21276
24518
namespace Puma {
21277
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
 
24519
 
 
24520
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24521
class CT_BreakStmt : public CT_Statement {
 
24522
#line 24523 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24523
  friend class ::WinIfExists;
21278
24524
  friend class ::WinImportHandler;
21279
24525
  friend class ::WinMacros;
21280
24526
  friend class ::CMatchSyntax;
21293
24539
  friend class ::CCExprResolve;
21294
24540
  friend class ::CExprResolve;
21295
24541
 
 
24542
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24543
 
21296
24544
  CTree *sons[2]; // key, semi_colon
21297
24545
 
21298
24546
public:
21306
24554
  }
21307
24555
};
21308
24556
 
 
24557
 
 
24558
#line 24559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21309
24559
} // closed Puma
21310
24560
class WinIfExists;
21311
24561
class WinImportHandler;
21326
24576
class CCExprResolve;
21327
24577
class CExprResolve;
21328
24578
namespace Puma {
21329
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
 
24579
 
 
24580
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24581
class CT_ContinueStmt : public CT_Statement {
 
24582
#line 24583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24583
  friend class ::WinIfExists;
21330
24584
  friend class ::WinImportHandler;
21331
24585
  friend class ::WinMacros;
21332
24586
  friend class ::CMatchSyntax;
21345
24599
  friend class ::CCExprResolve;
21346
24600
  friend class ::CExprResolve;
21347
24601
 
 
24602
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24603
 
21348
24604
  CTree *sons[2]; // key, semi_colon
21349
24605
 
21350
24606
public:
21358
24614
  }
21359
24615
};
21360
24616
 
 
24617
 
 
24618
#line 24619 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21361
24619
} // closed Puma
21362
24620
class WinIfExists;
21363
24621
class WinImportHandler;
21378
24636
class CCExprResolve;
21379
24637
class CExprResolve;
21380
24638
namespace Puma {
21381
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
 
24639
 
 
24640
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24641
class CT_GotoStmt : public CT_Statement {
 
24642
#line 24643 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24643
  friend class ::WinIfExists;
21382
24644
  friend class ::WinImportHandler;
21383
24645
  friend class ::WinMacros;
21384
24646
  friend class ::CMatchSyntax;
21397
24659
  friend class ::CCExprResolve;
21398
24660
  friend class ::CExprResolve;
21399
24661
 
 
24662
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24663
 
21400
24664
  CTree *sons[3]; // key, label, semi_colon
21401
24665
 
21402
24666
public:
21413
24677
  }
21414
24678
};
21415
24679
 
 
24680
 
 
24681
#line 24682 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21416
24682
} // closed Puma
21417
24683
class WinIfExists;
21418
24684
class WinImportHandler;
21433
24699
class CCExprResolve;
21434
24700
class CExprResolve;
21435
24701
namespace Puma {
21436
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
 
24702
 
 
24703
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24704
class CT_ReturnStmt : public CT_Statement {
 
24705
#line 24706 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24706
  friend class ::WinIfExists;
21437
24707
  friend class ::WinImportHandler;
21438
24708
  friend class ::WinMacros;
21439
24709
  friend class ::CMatchSyntax;
21452
24722
  friend class ::CCExprResolve;
21453
24723
  friend class ::CExprResolve;
21454
24724
 
 
24725
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24726
 
21455
24727
  CTree *sons[3]; // key, expr, semi_colon
21456
24728
 
21457
24729
public:
21468
24740
  }
21469
24741
};
21470
24742
 
 
24743
 
 
24744
#line 24745 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21471
24745
} // closed Puma
21472
24746
class WinIfExists;
21473
24747
class WinImportHandler;
21488
24762
class CCExprResolve;
21489
24763
class CExprResolve;
21490
24764
namespace Puma {
21491
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
24765
 
 
24766
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24767
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
24768
#line 24769 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24769
  friend class ::WinIfExists;
21492
24770
  friend class ::WinImportHandler;
21493
24771
  friend class ::WinMacros;
21494
24772
  friend class ::CMatchSyntax;
21507
24785
  friend class ::CCExprResolve;
21508
24786
  friend class ::CExprResolve;
21509
24787
 
 
24788
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24789
 
21510
24790
  CTree *sons[5]; // key, open, cond, close, stmt
21511
24791
 
21512
24792
public:
21524
24804
  }
21525
24805
};
21526
24806
 
 
24807
 
 
24808
#line 24809 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21527
24809
} // closed Puma
21528
24810
class WinIfExists;
21529
24811
class WinImportHandler;
21544
24826
class CCExprResolve;
21545
24827
class CExprResolve;
21546
24828
namespace Puma {
21547
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
 
24829
 
 
24830
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24831
class CT_DoStmt : public CT_Statement {
 
24832
#line 24833 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24833
  friend class ::WinIfExists;
21548
24834
  friend class ::WinImportHandler;
21549
24835
  friend class ::WinMacros;
21550
24836
  friend class ::CMatchSyntax;
21563
24849
  friend class ::CCExprResolve;
21564
24850
  friend class ::CExprResolve;
21565
24851
 
 
24852
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24853
 
21566
24854
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
21567
24855
 
21568
24856
public:
21582
24870
  }
21583
24871
};
21584
24872
 
 
24873
 
 
24874
#line 24875 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21585
24875
} // closed Puma
21586
24876
class WinIfExists;
21587
24877
class WinImportHandler;
21602
24892
class CCExprResolve;
21603
24893
class CExprResolve;
21604
24894
namespace Puma {
21605
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
24895
 
 
24896
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24897
class CT_ForStmt : public CT_Statement, public CSemScope {
 
24898
#line 24899 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24899
  friend class ::WinIfExists;
21606
24900
  friend class ::WinImportHandler;
21607
24901
  friend class ::WinMacros;
21608
24902
  friend class ::CMatchSyntax;
21621
24915
  friend class ::CCExprResolve;
21622
24916
  friend class ::CExprResolve;
21623
24917
 
 
24918
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24919
 
21624
24920
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
21625
24921
 
21626
24922
public:
21642
24938
  }
21643
24939
};
21644
24940
 
 
24941
 
 
24942
#line 24943 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21645
24943
} // closed Puma
21646
24944
class WinIfExists;
21647
24945
class WinImportHandler;
21662
24960
class CCExprResolve;
21663
24961
class CExprResolve;
21664
24962
namespace Puma {
21665
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
24963
 
 
24964
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24965
class CT_Condition : public CT_Decl, public CSemObject {
 
24966
#line 24967 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
24967
  friend class ::WinIfExists;
21666
24968
  friend class ::WinImportHandler;
21667
24969
  friend class ::WinMacros;
21668
24970
  friend class ::CMatchSyntax;
21681
24983
  friend class ::CCExprResolve;
21682
24984
  friend class ::CExprResolve;
21683
24985
 
 
24986
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
24987
 
21684
24988
  CTree *sons[3]; // declspecs, declarator, init
21685
24989
 
21686
24990
public:
21707
25011
/*                                                                           */
21708
25012
/*****************************************************************************/
21709
25013
 
 
25014
 
 
25015
#line 25016 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21710
25016
} // closed Puma
21711
25017
class WinIfExists;
21712
25018
class WinImportHandler;
21727
25033
class CCExprResolve;
21728
25034
class CExprResolve;
21729
25035
namespace Puma {
21730
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
25036
 
 
25037
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25038
class CT_ClassDef : public CT_Decl, public CSemObject {
 
25039
#line 25040 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25040
  friend class ::WinIfExists;
21731
25041
  friend class ::WinImportHandler;
21732
25042
  friend class ::WinMacros;
21733
25043
  friend class ::CMatchSyntax;
21746
25056
  friend class ::CCExprResolve;
21747
25057
  friend class ::CExprResolve;
21748
25058
 
 
25059
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25060
 
21749
25061
   
 
25062
#line 25063 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25063
 
21750
25064
  struct __ac_wrapper_sons {
21751
25065
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
21752
25066
    operator A& () { return _data; }
21759
25073
    operator const void* () const { return _data; }
21760
25074
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
21761
25075
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
21762
 
  } sons; // key, name, bases, members
 
25076
  } sons
 
25077
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25078
 
 
25079
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25080
; // key, name, bases, members
21763
25081
  CTree *obj_decl;
21764
25082
 
21765
25083
public:
21766
25084
  
 
25085
#line 25086 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25086
 
21767
25087
 
21768
25088
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
21769
25089
  typedef void Result;
21799
25119
 
21800
25120
};
21801
25121
 
21802
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
 
25122
 
 
25123
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25124
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
25125
#line 25126 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25126
{
21803
25127
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
21804
25128
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
21805
25129
this->__exec_old_C1(arg0, arg1, arg2);
21806
25130
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
21807
25131
 
21808
25132
}
21809
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
 
25133
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
25134
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25135
{
21810
25136
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
21811
25137
  }
21812
25138
  static const char *NodeId ();
21826
25152
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
21827
25153
  }
21828
25154
   private:
 
25155
 
 
25156
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
21829
25157
 CTree * _intro_members ;
21830
25158
public :
21831
25159
CTree * IntroMembers ( ) const { return _intro_members ; }
21832
25160
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
25161
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25162
 
 
25163
#line 25164 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25164
 
21833
25165
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
21834
25166
  typedef void Result;
21835
25167
  typedef ::Puma::CT_ClassDef That;
21857
25189
};
21858
25190
 
21859
25191
 
 
25192
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25193
 
 
25194
#line 25195 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25195
 
21860
25196
public:
21861
25197
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
21862
25198
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
21865
25201
 
21866
25202
}
21867
25203
 
 
25204
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25205
 
 
25206
#line 25207 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25207
 
21868
25208
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
21869
25209
  typedef void Result;
21870
25210
  typedef ::Puma::CT_ClassDef That;
21888
25228
};
21889
25229
 
21890
25230
 
 
25231
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25232
 
 
25233
#line 25234 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25234
 
21891
25235
public:
21892
25236
inline ~CT_ClassDef () {
21893
25237
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
21895
25239
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
21896
25240
 
21897
25241
}
 
25242
 
 
25243
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
21898
25244
};
21899
25245
      
 
25246
 
 
25247
#line 25248 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21900
25248
} // closed Puma
21901
25249
class WinIfExists;
21902
25250
class WinImportHandler;
21917
25265
class CCExprResolve;
21918
25266
class CExprResolve;
21919
25267
namespace Puma {
21920
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
 
25268
 
 
25269
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25270
class CT_UnionDef : public CT_ClassDef {
 
25271
#line 25272 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25272
  friend class ::WinIfExists;
21921
25273
  friend class ::WinImportHandler;
21922
25274
  friend class ::WinMacros;
21923
25275
  friend class ::CMatchSyntax;
21936
25288
  friend class ::CCExprResolve;
21937
25289
  friend class ::CExprResolve;
21938
25290
 
 
25291
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25292
 
21939
25293
public:
21940
25294
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
21941
25295
  static const char *NodeId ();
21942
25296
  const char *NodeName () const { return NodeId (); }
21943
25297
};
21944
25298
      
 
25299
 
 
25300
#line 25301 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21945
25301
} // closed Puma
21946
25302
class WinIfExists;
21947
25303
class WinImportHandler;
21962
25318
class CCExprResolve;
21963
25319
class CExprResolve;
21964
25320
namespace Puma {
21965
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
25321
 
 
25322
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25323
class CT_MembList : public CT_DeclList, public CSemScope {
 
25324
#line 25325 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25325
  friend class ::WinIfExists;
21966
25326
  friend class ::WinImportHandler;
21967
25327
  friend class ::WinMacros;
21968
25328
  friend class ::CMatchSyntax;
21981
25341
  friend class ::CCExprResolve;
21982
25342
  friend class ::CExprResolve;
21983
25343
 
 
25344
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25345
 
21984
25346
public:
21985
25347
  CT_MembList (int size = 10, int incr = 10) : 
21986
25348
    CT_DeclList (size, incr) {}
21988
25350
  const char *NodeName () const { return NodeId (); }
21989
25351
};
21990
25352
 
 
25353
 
 
25354
#line 25355 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
21991
25355
} // closed Puma
21992
25356
class WinIfExists;
21993
25357
class WinImportHandler;
22008
25372
class CCExprResolve;
22009
25373
class CExprResolve;
22010
25374
namespace Puma {
22011
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
25375
 
 
25376
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25377
class CT_MembInitList : public CT_List, public CSemScope {
 
25378
#line 25379 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25379
  friend class ::WinIfExists;
22012
25380
  friend class ::WinImportHandler;
22013
25381
  friend class ::WinMacros;
22014
25382
  friend class ::CMatchSyntax;
22027
25395
  friend class ::CCExprResolve;
22028
25396
  friend class ::CExprResolve;
22029
25397
 
 
25398
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25399
 
22030
25400
public:
22031
25401
  CT_MembInitList (int size = 2) : 
22032
25402
    CT_List (size, 2, CT_List::OPEN) {}
22034
25404
  const char *NodeName () const { return NodeId (); }
22035
25405
};
22036
25406
 
 
25407
 
 
25408
#line 25409 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22037
25409
} // closed Puma
22038
25410
class WinIfExists;
22039
25411
class WinImportHandler;
22054
25426
class CCExprResolve;
22055
25427
class CExprResolve;
22056
25428
namespace Puma {
22057
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
25429
 
 
25430
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25431
class CT_MembInit : public CT_Expression, public CSemObject {
 
25432
#line 25433 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25433
  friend class ::WinIfExists;
22058
25434
  friend class ::WinImportHandler;
22059
25435
  friend class ::WinMacros;
22060
25436
  friend class ::CMatchSyntax;
22073
25449
  friend class ::CCExprResolve;
22074
25450
  friend class ::CExprResolve;
22075
25451
 
 
25452
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25453
 
22076
25454
  CTree *sons[2]; // name, init
22077
25455
 
22078
25456
public:
22089
25467
  CSemObject *SemObject () const { return (CSemObject*)this; }
22090
25468
   private:
22091
25469
  typedef CT_MembInit CCExprResolveExpr;
 
25470
 
 
25471
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
22092
25472
 public :
22093
25473
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
22094
25474
  typedef CT_MembInit CExprResolveExpr;
 
25475
 
 
25476
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
22095
25477
 public :
22096
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
22097
 
 
 
25478
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
25479
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25480
};
 
25481
 
 
25482
 
 
25483
#line 25484 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22098
25484
} // closed Puma
22099
25485
class WinIfExists;
22100
25486
class WinImportHandler;
22115
25501
class CCExprResolve;
22116
25502
class CExprResolve;
22117
25503
namespace Puma {
22118
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
 
25504
 
 
25505
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25506
class CT_BaseSpecList : public CT_List {
 
25507
#line 25508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25508
  friend class ::WinIfExists;
22119
25509
  friend class ::WinImportHandler;
22120
25510
  friend class ::WinMacros;
22121
25511
  friend class ::CMatchSyntax;
22134
25524
  friend class ::CCExprResolve;
22135
25525
  friend class ::CExprResolve;
22136
25526
 
 
25527
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25528
 
22137
25529
public:
22138
25530
  CT_BaseSpecList (int size = 2) : 
22139
25531
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
22141
25533
  const char *NodeName () const { return NodeId (); }
22142
25534
};
22143
25535
 
 
25536
 
 
25537
#line 25538 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22144
25538
} // closed Puma
22145
25539
class WinIfExists;
22146
25540
class WinImportHandler;
22161
25555
class CCExprResolve;
22162
25556
class CExprResolve;
22163
25557
namespace Puma {
22164
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
 
25558
 
 
25559
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25560
class CT_AccessSpec : public CTree {
 
25561
#line 25562 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25562
  friend class ::WinIfExists;
22165
25563
  friend class ::WinImportHandler;
22166
25564
  friend class ::WinMacros;
22167
25565
  friend class ::CMatchSyntax;
22180
25578
  friend class ::CCExprResolve;
22181
25579
  friend class ::CExprResolve;
22182
25580
 
 
25581
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25582
 
22183
25583
  CTree *sons[2]; // access, colon
22184
25584
 
22185
25585
public:
22194
25594
  }
22195
25595
};
22196
25596
 
 
25597
 
 
25598
#line 25599 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22197
25599
} // closed Puma
22198
25600
class WinIfExists;
22199
25601
class WinImportHandler;
22214
25616
class CCExprResolve;
22215
25617
class CExprResolve;
22216
25618
namespace Puma {
22217
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
 
25619
 
 
25620
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25621
class CT_BaseSpec : public CTree {
 
25622
#line 25623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25623
  friend class ::WinIfExists;
22218
25624
  friend class ::WinImportHandler;
22219
25625
  friend class ::WinMacros;
22220
25626
  friend class ::CMatchSyntax;
22233
25639
  friend class ::CCExprResolve;
22234
25640
  friend class ::CExprResolve;
22235
25641
 
 
25642
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25643
 
22236
25644
  CTree *sons[3]; // virtual, access, name
22237
25645
 
22238
25646
public:
22252
25660
  }
22253
25661
};
22254
25662
 
 
25663
 
 
25664
#line 25665 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22255
25665
} // closed Puma
22256
25666
class WinIfExists;
22257
25667
class WinImportHandler;
22272
25682
class CCExprResolve;
22273
25683
class CExprResolve;
22274
25684
namespace Puma {
22275
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
 
25685
 
 
25686
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25687
class CT_AccessDecl : public CT_Decl {
 
25688
#line 25689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25689
  friend class ::WinIfExists;
22276
25690
  friend class ::WinImportHandler;
22277
25691
  friend class ::WinMacros;
22278
25692
  friend class ::CMatchSyntax;
22291
25705
  friend class ::CCExprResolve;
22292
25706
  friend class ::CExprResolve;
22293
25707
 
 
25708
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25709
 
22294
25710
  CTree *sons[2]; // name, semi_colon
22295
25711
 
22296
25712
public:
22305
25721
  }
22306
25722
};
22307
25723
 
 
25724
 
 
25725
#line 25726 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22308
25726
} // closed Puma
22309
25727
class WinIfExists;
22310
25728
class WinImportHandler;
22325
25743
class CCExprResolve;
22326
25744
class CExprResolve;
22327
25745
namespace Puma {
22328
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
 
25746
 
 
25747
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25748
class CT_UsingDecl : public CT_AccessDecl {
 
25749
#line 25750 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25750
  friend class ::WinIfExists;
22329
25751
  friend class ::WinImportHandler;
22330
25752
  friend class ::WinMacros;
22331
25753
  friend class ::CMatchSyntax;
22344
25766
  friend class ::CCExprResolve;
22345
25767
  friend class ::CExprResolve;
22346
25768
 
 
25769
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25770
 
22347
25771
  CTree *sons[2]; // using, typename
22348
25772
 
22349
25773
public:
22374
25798
/*                                                                           */
22375
25799
/*****************************************************************************/
22376
25800
 
 
25801
 
 
25802
#line 25803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22377
25803
} // closed Puma
22378
25804
class WinIfExists;
22379
25805
class WinImportHandler;
22394
25820
class CCExprResolve;
22395
25821
class CExprResolve;
22396
25822
namespace Puma {
22397
 
class CT_Any : public CTree {  friend class ::WinIfExists;
 
25823
 
 
25824
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25825
class CT_Any : public CTree {
 
25826
#line 25827 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25827
  friend class ::WinIfExists;
22398
25828
  friend class ::WinImportHandler;
22399
25829
  friend class ::WinMacros;
22400
25830
  friend class ::CMatchSyntax;
22413
25843
  friend class ::CCExprResolve;
22414
25844
  friend class ::CExprResolve;
22415
25845
 
 
25846
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25847
 
22416
25848
  CTree *sons[2]; // keyword, extension
22417
25849
 
22418
25850
public:
22428
25860
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
22429
25861
};
22430
25862
 
 
25863
 
 
25864
#line 25865 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22431
25865
} // closed Puma
22432
25866
class WinIfExists;
22433
25867
class WinImportHandler;
22448
25882
class CCExprResolve;
22449
25883
class CExprResolve;
22450
25884
namespace Puma {
22451
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
 
25885
 
 
25886
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25887
class CT_AnyList : public CT_Any {
 
25888
#line 25889 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25889
  friend class ::WinIfExists;
22452
25890
  friend class ::WinImportHandler;
22453
25891
  friend class ::WinMacros;
22454
25892
  friend class ::CMatchSyntax;
22467
25905
  friend class ::CCExprResolve;
22468
25906
  friend class ::CExprResolve;
22469
25907
 
 
25908
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25909
 
22470
25910
public:
22471
25911
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
22472
25912
  static const char *NodeId ();
22473
25913
  const char *NodeName () const { return NodeId (); }
22474
25914
};
22475
25915
 
 
25916
 
 
25917
#line 25918 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22476
25918
} // closed Puma
22477
25919
class WinIfExists;
22478
25920
class WinImportHandler;
22493
25935
class CCExprResolve;
22494
25936
class CExprResolve;
22495
25937
namespace Puma {
22496
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
 
25938
 
 
25939
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25940
class CT_AnyExtension : public CTree, public CSemValue {
 
25941
#line 25942 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
25942
  friend class ::WinIfExists;
22497
25943
  friend class ::WinImportHandler;
22498
25944
  friend class ::WinMacros;
22499
25945
  friend class ::CMatchSyntax;
22512
25958
  friend class ::CCExprResolve;
22513
25959
  friend class ::CExprResolve;
22514
25960
 
 
25961
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
25962
 
22515
25963
  CTree *sons[5]; // open, string, comma, cond, close
22516
25964
 
22517
25965
public:
22534
25982
  CSemValue *SemValue () const { return (CSemValue*)this; }
22535
25983
};
22536
25984
 
 
25985
 
 
25986
#line 25987 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22537
25987
} // closed Puma
22538
25988
class WinIfExists;
22539
25989
class WinImportHandler;
22554
26004
class CCExprResolve;
22555
26005
class CExprResolve;
22556
26006
namespace Puma {
22557
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
 
26007
 
 
26008
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26009
class CT_AnyCondition : public CTree {
 
26010
#line 26011 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26011
  friend class ::WinIfExists;
22558
26012
  friend class ::WinImportHandler;
22559
26013
  friend class ::WinMacros;
22560
26014
  friend class ::CMatchSyntax;
22573
26027
  friend class ::CCExprResolve;
22574
26028
  friend class ::CExprResolve;
22575
26029
 
 
26030
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26031
 
22576
26032
  CTree *sons[3]; // arg1, arg2, arg3
22577
26033
 
22578
26034
public:
22592
26048
} // namespace Puma
22593
26049
 
22594
26050
#endif /* __CTree_h__ */
22595
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
26051
 
 
26052
#line 26053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26053
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
26054
 
 
26055
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26056
 
 
26057
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemVisitor.h"
22596
26058
namespace Puma {
22597
26059
 
22598
26060
 
22600
26062
class CObjectInfo;
22601
26063
class CTypeInfo;
22602
26064
 
 
26065
 
 
26066
#line 26067 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22603
26067
} // closed Puma
22604
26068
class WinIfExists;
22605
26069
class WinImportHandler;
22620
26084
class CCExprResolve;
22621
26085
class CExprResolve;
22622
26086
namespace Puma {
22623
 
class CSemVisitor : private CVisitor {  friend class ::WinIfExists;
 
26087
 
 
26088
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemVisitor.h"
 
26089
class CSemVisitor : private CVisitor {
 
26090
#line 26091 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26091
  friend class ::WinIfExists;
22624
26092
  friend class ::WinImportHandler;
22625
26093
  friend class ::WinMacros;
22626
26094
  friend class ::CMatchSyntax;
22639
26107
  friend class ::CCExprResolve;
22640
26108
  friend class ::CExprResolve;
22641
26109
 
 
26110
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemVisitor.h"
 
26111
 
22642
26112
protected:
22643
26113
  CStructure *current_scope;
22644
26114
  ErrorSink &err;
22702
26172
 
22703
26173
#endif /* __CSemVisitor_h__ */
22704
26174
 
 
26175
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
26176
 
 
26177
#line 26178 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26178
 
22705
26179
#ifndef __ac_fwd_ExtGnu__
22706
26180
#define __ac_fwd_ExtGnu__
22707
26181
class ExtGnu;
22741
26215
}
22742
26216
#endif
22743
26217
 
22744
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
22745
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
26218
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
26219
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
22746
26220
#endif
22747
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
22748
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
26221
 
 
26222
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
26223
 
 
26224
#line 26225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26225
 
 
26226
#line 4 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
26227
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
26228
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
26229
 
 
26230
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
22749
26231
// This file is part of PUMA.
22750
26232
// Copyright (C) 1999-2003  The PUMA developer team.
22751
26233
//                                                                
22768
26250
#define __c_sem_decl_specs_h__
22769
26251
 
22770
26252
 
 
26253
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26254
 
 
26255
#line 26256 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26256
 
22771
26257
#ifndef __ac_fwd_ExtACTree__
22772
26258
#define __ac_fwd_ExtACTree__
22773
26259
class ExtACTree;
22779
26265
}
22780
26266
#endif
22781
26267
 
22782
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
22783
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
26268
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
26269
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
22784
26270
#endif
22785
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
22786
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
26271
 
 
26272
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26273
 
 
26274
#line 26275 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26275
 
 
26276
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26277
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
26278
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
26279
 
 
26280
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
22787
26281
// This file is part of PUMA.
22788
26282
// Copyright (C) 1999-2003  The PUMA developer team.
22789
26283
//                                                                
22965
26459
/*                                                                           */
22966
26460
/*****************************************************************************/
22967
26461
 
 
26462
 
 
26463
#line 26464 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
22968
26464
} // closed Puma
22969
26465
class WinIfExists;
22970
26466
class WinImportHandler;
22985
26481
class CCExprResolve;
22986
26482
class CExprResolve;
22987
26483
namespace Puma {
22988
 
class CTree {  friend class ::WinIfExists;
 
26484
 
 
26485
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26486
class CTree {
 
26487
#line 26488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26488
  friend class ::WinIfExists;
22989
26489
  friend class ::WinImportHandler;
22990
26490
  friend class ::WinMacros;
22991
26491
  friend class ::CMatchSyntax;
23004
26504
  friend class ::CCExprResolve;
23005
26505
  friend class ::CExprResolve;
23006
26506
 
 
26507
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26508
 
23007
26509
public:
23008
26510
  /*DEBUG*/static int alloc;
23009
26511
  /*DEBUG*/static int release;
23039
26541
  virtual CT_Declarator *IsDeclarator () { return 0; }
23040
26542
   private:
23041
26543
  typedef CTree CCExprResolveCTree;
 
26544
 
 
26545
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
23042
26546
 public :
23043
26547
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
23044
26548
  typedef CTree CExprResolveCTree;
 
26549
 
 
26550
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
23045
26551
 public :
23046
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
23047
 
 
 
26552
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
26553
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26554
};
 
26555
 
 
26556
 
 
26557
#line 26558 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23048
26558
} // closed Puma
23049
26559
class WinIfExists;
23050
26560
class WinImportHandler;
23065
26575
class CCExprResolve;
23066
26576
class CExprResolve;
23067
26577
namespace Puma {
23068
 
class CT_Error : public CTree {  friend class ::WinIfExists;
 
26578
 
 
26579
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26580
class CT_Error : public CTree {
 
26581
#line 26582 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26582
  friend class ::WinIfExists;
23069
26583
  friend class ::WinImportHandler;
23070
26584
  friend class ::WinMacros;
23071
26585
  friend class ::CMatchSyntax;
23084
26598
  friend class ::CCExprResolve;
23085
26599
  friend class ::CExprResolve;
23086
26600
 
 
26601
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26602
 
23087
26603
public:
23088
26604
  static const char *NodeId ();
23089
26605
  const char *NodeName () const { return NodeId (); }
23090
26606
  int Sons () const { return 0; }
23091
26607
};
23092
26608
 
 
26609
 
 
26610
#line 26611 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23093
26611
} // closed Puma
23094
26612
class WinIfExists;
23095
26613
class WinImportHandler;
23110
26628
class CCExprResolve;
23111
26629
class CExprResolve;
23112
26630
namespace Puma {
23113
 
class CT_Token : public CTree {  friend class ::WinIfExists;
 
26631
 
 
26632
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26633
class CT_Token : public CTree {
 
26634
#line 26635 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26635
  friend class ::WinIfExists;
23114
26636
  friend class ::WinImportHandler;
23115
26637
  friend class ::WinMacros;
23116
26638
  friend class ::CMatchSyntax;
23129
26651
  friend class ::CCExprResolve;
23130
26652
  friend class ::CExprResolve;
23131
26653
 
 
26654
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26655
 
23132
26656
  Token *_token;
23133
26657
  unsigned long int _number;
23134
26658
  
23155
26679
/*                                                                           */
23156
26680
/*****************************************************************************/
23157
26681
 
 
26682
 
 
26683
#line 26684 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23158
26684
} // closed Puma
23159
26685
class WinIfExists;
23160
26686
class WinImportHandler;
23175
26701
class CCExprResolve;
23176
26702
class CExprResolve;
23177
26703
namespace Puma {
23178
 
class CT_List : public CTree {  friend class ::WinIfExists;
 
26704
 
 
26705
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26706
class CT_List : public CTree {
 
26707
#line 26708 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26708
  friend class ::WinIfExists;
23179
26709
  friend class ::WinImportHandler;
23180
26710
  friend class ::WinMacros;
23181
26711
  friend class ::CMatchSyntax;
23194
26724
  friend class ::CCExprResolve;
23195
26725
  friend class ::CExprResolve;
23196
26726
 
 
26727
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26728
 
23197
26729
  Array<CTree*> _sons;
23198
26730
  int _properties;
23199
26731
 
23232
26764
   { if (idx < Sons ()) _sons.remove (idx); }
23233
26765
};
23234
26766
 
 
26767
 
 
26768
#line 26769 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23235
26769
} // closed Puma
23236
26770
class WinIfExists;
23237
26771
class WinImportHandler;
23252
26786
class CCExprResolve;
23253
26787
class CExprResolve;
23254
26788
namespace Puma {
23255
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
26789
 
 
26790
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26791
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
26792
#line 26793 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26793
  friend class ::WinIfExists;
23256
26794
  friend class ::WinImportHandler;
23257
26795
  friend class ::WinMacros;
23258
26796
  friend class ::CMatchSyntax;
23271
26809
  friend class ::CCExprResolve;
23272
26810
  friend class ::CExprResolve;
23273
26811
 
 
26812
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26813
 
23274
26814
public:
23275
26815
  CT_ExprList () { AddProperties (SEPARATORS); }
23276
26816
  static const char *NodeId ();
23282
26822
  CSemObject *SemObject () const { return (CSemObject*)this; }
23283
26823
};
23284
26824
 
 
26825
 
 
26826
#line 26827 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23285
26827
} // closed Puma
23286
26828
class WinIfExists;
23287
26829
class WinImportHandler;
23302
26844
class CCExprResolve;
23303
26845
class CExprResolve;
23304
26846
namespace Puma {
23305
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
 
26847
 
 
26848
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26849
class CT_DeclaratorList : public CT_List {
 
26850
#line 26851 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26851
  friend class ::WinIfExists;
23306
26852
  friend class ::WinImportHandler;
23307
26853
  friend class ::WinMacros;
23308
26854
  friend class ::CMatchSyntax;
23321
26867
  friend class ::CCExprResolve;
23322
26868
  friend class ::CExprResolve;
23323
26869
 
 
26870
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26871
 
23324
26872
public:
23325
26873
  static const char *NodeId ();
23326
26874
  const char *NodeName () const { return NodeId (); }
23327
26875
};
23328
26876
 
 
26877
 
 
26878
#line 26879 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23329
26879
} // closed Puma
23330
26880
class WinIfExists;
23331
26881
class WinImportHandler;
23346
26896
class CCExprResolve;
23347
26897
class CExprResolve;
23348
26898
namespace Puma {
23349
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
 
26899
 
 
26900
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26901
class CT_EnumeratorList : public CT_List {
 
26902
#line 26903 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26903
  friend class ::WinIfExists;
23350
26904
  friend class ::WinImportHandler;
23351
26905
  friend class ::WinMacros;
23352
26906
  friend class ::CMatchSyntax;
23365
26919
  friend class ::CCExprResolve;
23366
26920
  friend class ::CExprResolve;
23367
26921
 
 
26922
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26923
 
23368
26924
public:
23369
26925
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
23370
26926
  static const char *NodeId ();
23371
26927
  const char *NodeName () const { return NodeId (); }
23372
26928
};
23373
26929
   
 
26930
 
 
26931
#line 26932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23374
26932
} // closed Puma
23375
26933
class WinIfExists;
23376
26934
class WinImportHandler;
23391
26949
class CCExprResolve;
23392
26950
class CExprResolve;
23393
26951
namespace Puma {
23394
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
 
26952
 
 
26953
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26954
class CT_DeclList : public CT_List {
 
26955
#line 26956 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
26956
  friend class ::WinIfExists;
23395
26957
  friend class ::WinImportHandler;
23396
26958
  friend class ::WinMacros;
23397
26959
  friend class ::CMatchSyntax;
23410
26972
  friend class ::CCExprResolve;
23411
26973
  friend class ::CExprResolve;
23412
26974
 
 
26975
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
26976
 
23413
26977
public:
23414
26978
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
23415
26979
  static const char *NodeId ();
23417
26981
  void Linkage (CT_LinkageSpec *l);
23418
26982
};
23419
26983
 
 
26984
 
 
26985
#line 26986 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23420
26986
} // closed Puma
23421
26987
class WinIfExists;
23422
26988
class WinImportHandler;
23437
27003
class CCExprResolve;
23438
27004
class CExprResolve;
23439
27005
namespace Puma {
23440
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
 
27006
 
 
27007
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27008
class CT_DeclSpecSeq : public CT_List {
 
27009
#line 27010 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27010
  friend class ::WinIfExists;
23441
27011
  friend class ::WinImportHandler;
23442
27012
  friend class ::WinMacros;
23443
27013
  friend class ::CMatchSyntax;
23456
27026
  friend class ::CCExprResolve;
23457
27027
  friend class ::CExprResolve;
23458
27028
 
 
27029
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27030
 
23459
27031
public:
23460
27032
  static const char *NodeId ();
23461
27033
  const char *NodeName () const { return NodeId (); }
23462
27034
};
23463
27035
 
 
27036
 
 
27037
#line 27038 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23464
27038
} // closed Puma
23465
27039
class WinIfExists;
23466
27040
class WinImportHandler;
23481
27055
class CCExprResolve;
23482
27056
class CExprResolve;
23483
27057
namespace Puma {
23484
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
27058
 
 
27059
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27060
class CT_CmpdStmt : public CT_List, public CSemScope {
 
27061
#line 27062 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27062
  friend class ::WinIfExists;
23485
27063
  friend class ::WinImportHandler;
23486
27064
  friend class ::WinMacros;
23487
27065
  friend class ::CMatchSyntax;
23500
27078
  friend class ::CCExprResolve;
23501
27079
  friend class ::CExprResolve;
23502
27080
 
 
27081
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27082
 
23503
27083
public:
23504
27084
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
23505
27085
  static const char *NodeId ();
23506
27086
  const char *NodeName () const { return NodeId (); }
23507
27087
};
23508
27088
 
 
27089
 
 
27090
#line 27091 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23509
27091
} // closed Puma
23510
27092
class WinIfExists;
23511
27093
class WinImportHandler;
23526
27108
class CCExprResolve;
23527
27109
class CExprResolve;
23528
27110
namespace Puma {
23529
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
 
27111
 
 
27112
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27113
class CT_HandlerSeq : public CT_List {
 
27114
#line 27115 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27115
  friend class ::WinIfExists;
23530
27116
  friend class ::WinImportHandler;
23531
27117
  friend class ::WinMacros;
23532
27118
  friend class ::CMatchSyntax;
23545
27131
  friend class ::CCExprResolve;
23546
27132
  friend class ::CExprResolve;
23547
27133
 
 
27134
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27135
 
23548
27136
public:
23549
27137
  static const char *NodeId ();
23550
27138
  const char *NodeName () const { return NodeId (); }
23551
27139
};
23552
27140
 
 
27141
 
 
27142
#line 27143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23553
27143
} // closed Puma
23554
27144
class WinIfExists;
23555
27145
class WinImportHandler;
23570
27160
class CCExprResolve;
23571
27161
class CExprResolve;
23572
27162
namespace Puma {
23573
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
27163
 
 
27164
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27165
class CT_TemplateParamList : public CT_List, public CSemScope {
 
27166
#line 27167 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27167
  friend class ::WinIfExists;
23574
27168
  friend class ::WinImportHandler;
23575
27169
  friend class ::WinMacros;
23576
27170
  friend class ::CMatchSyntax;
23589
27183
  friend class ::CCExprResolve;
23590
27184
  friend class ::CExprResolve;
23591
27185
 
 
27186
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27187
 
23592
27188
public:
23593
27189
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
23594
27190
  static const char *NodeId ();
23595
27191
  const char *NodeName () const { return NodeId (); }
23596
27192
};
23597
27193
 
 
27194
 
 
27195
#line 27196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23598
27196
} // closed Puma
23599
27197
class WinIfExists;
23600
27198
class WinImportHandler;
23615
27213
class CCExprResolve;
23616
27214
class CExprResolve;
23617
27215
namespace Puma {
23618
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
 
27216
 
 
27217
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27218
class CT_TemplateArgList : public CT_List {
 
27219
#line 27220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27220
  friend class ::WinIfExists;
23619
27221
  friend class ::WinImportHandler;
23620
27222
  friend class ::WinMacros;
23621
27223
  friend class ::CMatchSyntax;
23634
27236
  friend class ::CCExprResolve;
23635
27237
  friend class ::CExprResolve;
23636
27238
 
 
27239
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27240
 
23637
27241
public:
23638
27242
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
23639
27243
  static const char *NodeId ();
23646
27250
/*                                                                           */
23647
27251
/*****************************************************************************/
23648
27252
 
 
27253
 
 
27254
#line 27255 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23649
27255
} // closed Puma
23650
27256
class WinIfExists;
23651
27257
class WinImportHandler;
23666
27272
class CCExprResolve;
23667
27273
class CExprResolve;
23668
27274
namespace Puma {
23669
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
 
27275
 
 
27276
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27277
class CT_Expression : public CTree, public CSemValue {
 
27278
#line 27279 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27279
  friend class ::WinIfExists;
23670
27280
  friend class ::WinImportHandler;
23671
27281
  friend class ::WinMacros;
23672
27282
  friend class ::CMatchSyntax;
23685
27295
  friend class ::CCExprResolve;
23686
27296
  friend class ::CExprResolve;
23687
27297
 
 
27298
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27299
 
23688
27300
protected:
23689
27301
  CT_Expression () {}
23690
27302
 
23696
27308
  CSemValue *SemValue () const { return (CSemValue*)this; }
23697
27309
   private:
23698
27310
  typedef CT_Expression CCExprResolveExpr;
 
27311
 
 
27312
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
23699
27313
 public :
23700
27314
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
23701
27315
  typedef CT_Expression CExprResolveExpr;
 
27316
 
 
27317
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
23702
27318
 public :
23703
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
23704
 
 
 
27319
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27320
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27321
};
 
27322
 
 
27323
 
 
27324
#line 27325 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23705
27325
} // closed Puma
23706
27326
class WinIfExists;
23707
27327
class WinImportHandler;
23722
27342
class CCExprResolve;
23723
27343
class CExprResolve;
23724
27344
namespace Puma {
23725
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
27345
 
 
27346
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27347
class CT_String : public CT_List, public CSemValue {
 
27348
#line 27349 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27349
  friend class ::WinIfExists;
23726
27350
  friend class ::WinImportHandler;
23727
27351
  friend class ::WinMacros;
23728
27352
  friend class ::CMatchSyntax;
23741
27365
  friend class ::CCExprResolve;
23742
27366
  friend class ::CExprResolve;
23743
27367
 
 
27368
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27369
 
23744
27370
public:
23745
27371
  CT_String (int size) : CT_List (size, 1) {}
23746
27372
  static const char *NodeId ();
23751
27377
  CSemValue *SemValue () const { return (CSemValue*)this; }
23752
27378
   private:
23753
27379
  typedef CT_String CCExprResolveExpr;
 
27380
 
 
27381
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
23754
27382
 public :
23755
27383
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
23756
27384
  typedef CT_String CExprResolveExpr;
 
27385
 
 
27386
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
23757
27387
 public :
23758
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
23759
 
 
 
27388
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27389
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27390
};
 
27391
 
 
27392
 
 
27393
#line 27394 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23760
27394
} // closed Puma
23761
27395
class WinIfExists;
23762
27396
class WinImportHandler;
23777
27411
class CCExprResolve;
23778
27412
class CExprResolve;
23779
27413
namespace Puma {
23780
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
 
27414
 
 
27415
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27416
class CT_WideString : public CT_String {
 
27417
#line 27418 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27418
  friend class ::WinIfExists;
23781
27419
  friend class ::WinImportHandler;
23782
27420
  friend class ::WinMacros;
23783
27421
  friend class ::CMatchSyntax;
23796
27434
  friend class ::CCExprResolve;
23797
27435
  friend class ::CExprResolve;
23798
27436
 
 
27437
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27438
 
23799
27439
public:
23800
27440
  CT_WideString (int size) : CT_String (size) {}
23801
27441
  static const char *NodeId ();
23802
27442
  const char *NodeName () const { return NodeId (); }
23803
27443
   private:
23804
27444
  typedef CT_WideString CCExprResolveExpr;
 
27445
 
 
27446
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
23805
27447
 public :
23806
27448
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
23807
27449
  typedef CT_WideString CExprResolveExpr;
 
27450
 
 
27451
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
23808
27452
 public :
23809
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
23810
 
 
 
27453
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27454
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27455
};
 
27456
 
 
27457
 
 
27458
#line 27459 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23811
27459
} // closed Puma
23812
27460
class WinIfExists;
23813
27461
class WinImportHandler;
23828
27476
class CCExprResolve;
23829
27477
class CExprResolve;
23830
27478
namespace Puma {
23831
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
 
27479
 
 
27480
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27481
class CT_Integer : public CT_Expression {
 
27482
#line 27483 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27483
  friend class ::WinIfExists;
23832
27484
  friend class ::WinImportHandler;
23833
27485
  friend class ::WinMacros;
23834
27486
  friend class ::CMatchSyntax;
23847
27499
  friend class ::CCExprResolve;
23848
27500
  friend class ::CExprResolve;
23849
27501
 
 
27502
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27503
 
23850
27504
  CTree *_value;  // CT_Token
23851
27505
 
23852
27506
public:
23859
27513
   { if (old_son == _value) _value = new_son; }
23860
27514
   private:
23861
27515
  typedef CT_Integer CCExprResolveExpr;
 
27516
 
 
27517
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
23862
27518
 public :
23863
27519
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
23864
27520
  typedef CT_Integer CExprResolveExpr;
 
27521
 
 
27522
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
23865
27523
 public :
23866
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
23867
 
 
 
27524
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27525
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27526
};
 
27527
 
 
27528
 
 
27529
#line 27530 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23868
27530
} // closed Puma
23869
27531
class WinIfExists;
23870
27532
class WinImportHandler;
23885
27547
class CCExprResolve;
23886
27548
class CExprResolve;
23887
27549
namespace Puma {
23888
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
 
27550
 
 
27551
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27552
class CT_Character : public CT_Expression {
 
27553
#line 27554 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27554
  friend class ::WinIfExists;
23889
27555
  friend class ::WinImportHandler;
23890
27556
  friend class ::WinMacros;
23891
27557
  friend class ::CMatchSyntax;
23904
27570
  friend class ::CCExprResolve;
23905
27571
  friend class ::CExprResolve;
23906
27572
 
 
27573
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27574
 
23907
27575
  CTree *_value;  // CT_Token
23908
27576
 
23909
27577
public:
23916
27584
   { if (old_son == _value) _value = new_son; }
23917
27585
   private:
23918
27586
  typedef CT_Character CCExprResolveExpr;
 
27587
 
 
27588
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
23919
27589
 public :
23920
27590
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
23921
27591
  typedef CT_Character CExprResolveExpr;
 
27592
 
 
27593
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
23922
27594
 public :
23923
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
23924
 
 
 
27595
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27596
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27597
};
 
27598
 
 
27599
 
 
27600
#line 27601 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23925
27601
} // closed Puma
23926
27602
class WinIfExists;
23927
27603
class WinImportHandler;
23942
27618
class CCExprResolve;
23943
27619
class CExprResolve;
23944
27620
namespace Puma {
23945
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
 
27621
 
 
27622
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27623
class CT_WideCharacter : public CT_Character {
 
27624
#line 27625 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27625
  friend class ::WinIfExists;
23946
27626
  friend class ::WinImportHandler;
23947
27627
  friend class ::WinMacros;
23948
27628
  friend class ::CMatchSyntax;
23961
27641
  friend class ::CCExprResolve;
23962
27642
  friend class ::CExprResolve;
23963
27643
 
 
27644
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27645
 
23964
27646
  CTree *_value;  // CT_Token
23965
27647
 
23966
27648
public:
23971
27653
   { if (old_son == _value) _value = new_son; }
23972
27654
   private:
23973
27655
  typedef CT_WideCharacter CCExprResolveExpr;
 
27656
 
 
27657
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
23974
27658
 public :
23975
27659
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
23976
27660
  typedef CT_WideCharacter CExprResolveExpr;
 
27661
 
 
27662
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
23977
27663
 public :
23978
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
23979
 
 
 
27664
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27665
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27666
};
 
27667
 
 
27668
 
 
27669
#line 27670 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
23980
27670
} // closed Puma
23981
27671
class WinIfExists;
23982
27672
class WinImportHandler;
23997
27687
class CCExprResolve;
23998
27688
class CExprResolve;
23999
27689
namespace Puma {
24000
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
 
27690
 
 
27691
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27692
class CT_Float : public CT_Expression {
 
27693
#line 27694 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27694
  friend class ::WinIfExists;
24001
27695
  friend class ::WinImportHandler;
24002
27696
  friend class ::WinMacros;
24003
27697
  friend class ::CMatchSyntax;
24016
27710
  friend class ::CCExprResolve;
24017
27711
  friend class ::CExprResolve;
24018
27712
 
 
27713
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27714
 
24019
27715
  CTree *_value;  // CT_Token
24020
27716
 
24021
27717
public:
24028
27724
   { if (old_son == _value) _value = new_son; }
24029
27725
   private:
24030
27726
  typedef CT_Float CCExprResolveExpr;
 
27727
 
 
27728
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24031
27729
 public :
24032
27730
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24033
27731
  typedef CT_Float CExprResolveExpr;
 
27732
 
 
27733
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24034
27734
 public :
24035
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24036
 
 
 
27735
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27736
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27737
};
 
27738
 
 
27739
 
 
27740
#line 27741 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24037
27741
} // closed Puma
24038
27742
class WinIfExists;
24039
27743
class WinImportHandler;
24054
27758
class CCExprResolve;
24055
27759
class CExprResolve;
24056
27760
namespace Puma {
24057
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
 
27761
 
 
27762
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27763
class CT_Bool : public CT_Expression {
 
27764
#line 27765 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27765
  friend class ::WinIfExists;
24058
27766
  friend class ::WinImportHandler;
24059
27767
  friend class ::WinMacros;
24060
27768
  friend class ::CMatchSyntax;
24073
27781
  friend class ::CCExprResolve;
24074
27782
  friend class ::CExprResolve;
24075
27783
 
 
27784
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27785
 
24076
27786
  CTree *_value;  // CT_Token
24077
27787
 
24078
27788
public:
24085
27795
   { if (old_son == _value) _value = new_son; }
24086
27796
   private:
24087
27797
  typedef CT_Bool CCExprResolveExpr;
 
27798
 
 
27799
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24088
27800
 public :
24089
27801
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24090
27802
  typedef CT_Bool CExprResolveExpr;
 
27803
 
 
27804
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24091
27805
 public :
24092
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24093
 
 
 
27806
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27807
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27808
};
 
27809
 
 
27810
 
 
27811
#line 27812 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24094
27812
} // closed Puma
24095
27813
class WinIfExists;
24096
27814
class WinImportHandler;
24111
27829
class CCExprResolve;
24112
27830
class CExprResolve;
24113
27831
namespace Puma {
24114
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
 
27832
 
 
27833
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27834
class CT_BracedExpr : public CT_Expression {
 
27835
#line 27836 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27836
  friend class ::WinIfExists;
24115
27837
  friend class ::WinImportHandler;
24116
27838
  friend class ::WinMacros;
24117
27839
  friend class ::CMatchSyntax;
24130
27852
  friend class ::CCExprResolve;
24131
27853
  friend class ::CExprResolve;
24132
27854
 
 
27855
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27856
 
24133
27857
  CTree *sons[3]; // open, expr, close
24134
27858
 
24135
27859
public:
24149
27873
  }
24150
27874
   private:
24151
27875
  typedef CT_BracedExpr CCExprResolveExpr;
 
27876
 
 
27877
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24152
27878
 public :
24153
27879
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24154
27880
  typedef CT_BracedExpr CExprResolveExpr;
 
27881
 
 
27882
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24155
27883
 public :
24156
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24157
 
 
 
27884
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27885
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27886
};
 
27887
 
 
27888
 
 
27889
#line 27890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24158
27890
} // closed Puma
24159
27891
class WinIfExists;
24160
27892
class WinImportHandler;
24175
27907
class CCExprResolve;
24176
27908
class CExprResolve;
24177
27909
namespace Puma {
 
27910
 
 
27911
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
24178
27912
class CT_SimpleName : public CT_List, public Printable, 
24179
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
27913
                      public CSemValue, public CSemObject {
 
27914
#line 27915 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27915
  friend class ::WinIfExists;
24180
27916
  friend class ::WinImportHandler;
24181
27917
  friend class ::WinMacros;
24182
27918
  friend class ::CMatchSyntax;
24195
27931
  friend class ::CCExprResolve;
24196
27932
  friend class ::CExprResolve;
24197
27933
 
 
27934
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27935
 
24198
27936
protected:
24199
27937
  CT_SimpleName (int size) : CT_List (size, 1) {}
24200
27938
  CT_SimpleName (int size, int properties) : 
24219
27957
  virtual CT_SimpleName *IsSimpleName () { return this; }  
24220
27958
   private:
24221
27959
  typedef CT_SimpleName CCExprResolveExpr;
 
27960
 
 
27961
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24222
27962
 public :
24223
27963
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24224
27964
  typedef CT_SimpleName CExprResolveExpr;
 
27965
 
 
27966
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24225
27967
 public :
24226
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24227
 
 
 
27968
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
27969
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27970
};
 
27971
 
 
27972
 
 
27973
#line 27974 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24228
27974
} // closed Puma
24229
27975
class WinIfExists;
24230
27976
class WinImportHandler;
24245
27991
class CCExprResolve;
24246
27992
class CExprResolve;
24247
27993
namespace Puma {
24248
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
 
27994
 
 
27995
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
27996
class CT_SpecialName : public CT_SimpleName {
 
27997
#line 27998 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
27998
  friend class ::WinIfExists;
24249
27999
  friend class ::WinImportHandler;
24250
28000
  friend class ::WinMacros;
24251
28001
  friend class ::CMatchSyntax;
24264
28014
  friend class ::CCExprResolve;
24265
28015
  friend class ::CExprResolve;
24266
28016
 
 
28017
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28018
 
24267
28019
  char *_name;
24268
28020
  
24269
28021
protected:
24283
28035
  void  operator delete (void *);
24284
28036
   private:
24285
28037
  typedef CT_SpecialName CCExprResolveExpr;
 
28038
 
 
28039
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24286
28040
 public :
24287
28041
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24288
28042
  typedef CT_SpecialName CExprResolveExpr;
 
28043
 
 
28044
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24289
28045
 public :
24290
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24291
 
 
 
28046
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28047
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28048
};
 
28049
 
 
28050
 
 
28051
#line 28052 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24292
28052
} // closed Puma
24293
28053
class WinIfExists;
24294
28054
class WinImportHandler;
24309
28069
class CCExprResolve;
24310
28070
class CExprResolve;
24311
28071
namespace Puma {
24312
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
 
28072
 
 
28073
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28074
class CT_PrivateName : public CT_SpecialName {
 
28075
#line 28076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28076
  friend class ::WinIfExists;
24313
28077
  friend class ::WinImportHandler;
24314
28078
  friend class ::WinMacros;
24315
28079
  friend class ::CMatchSyntax;
24328
28092
  friend class ::CCExprResolve;
24329
28093
  friend class ::CExprResolve;
24330
28094
 
 
28095
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28096
 
24331
28097
public:
24332
28098
  CT_PrivateName (const char *n) { Name (n); }
24333
28099
  static const char *NodeId ();
24339
28105
  void  operator delete (void *);
24340
28106
   private:
24341
28107
  typedef CT_PrivateName CCExprResolveExpr;
 
28108
 
 
28109
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24342
28110
 public :
24343
28111
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24344
28112
  typedef CT_PrivateName CExprResolveExpr;
 
28113
 
 
28114
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24345
28115
 public :
24346
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24347
 
 
 
28116
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28117
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28118
};
 
28119
 
 
28120
 
 
28121
#line 28122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24348
28122
} // closed Puma
24349
28123
class WinIfExists;
24350
28124
class WinImportHandler;
24365
28139
class CCExprResolve;
24366
28140
class CExprResolve;
24367
28141
namespace Puma {
24368
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
 
28142
 
 
28143
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28144
class CT_DestructorName : public CT_SpecialName {
 
28145
#line 28146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28146
  friend class ::WinIfExists;
24369
28147
  friend class ::WinImportHandler;
24370
28148
  friend class ::WinMacros;
24371
28149
  friend class ::CMatchSyntax;
24384
28162
  friend class ::CCExprResolve;
24385
28163
  friend class ::CExprResolve;
24386
28164
 
 
28165
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28166
 
24387
28167
public:
24388
28168
  CT_DestructorName (CTree *, CTree *);
24389
28169
  static const char *NodeId ();
24393
28173
  void  operator delete (void *);
24394
28174
   private:
24395
28175
  typedef CT_DestructorName CCExprResolveExpr;
 
28176
 
 
28177
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24396
28178
 public :
24397
28179
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24398
28180
  typedef CT_DestructorName CExprResolveExpr;
 
28181
 
 
28182
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24399
28183
 public :
24400
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24401
 
 
 
28184
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28185
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28186
};
 
28187
 
 
28188
 
 
28189
#line 28190 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24402
28190
} // closed Puma
24403
28191
class WinIfExists;
24404
28192
class WinImportHandler;
24419
28207
class CCExprResolve;
24420
28208
class CExprResolve;
24421
28209
namespace Puma {
24422
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
 
28210
 
 
28211
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28212
class CT_TemplateName : public CT_SpecialName {
 
28213
#line 28214 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28214
  friend class ::WinIfExists;
24423
28215
  friend class ::WinImportHandler;
24424
28216
  friend class ::WinMacros;
24425
28217
  friend class ::CMatchSyntax;
24438
28230
  friend class ::CCExprResolve;
24439
28231
  friend class ::CExprResolve;
24440
28232
 
 
28233
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28234
 
24441
28235
public:
24442
28236
  CT_TemplateName (CTree *n, CTree *a) 
24443
28237
   { AddSon (n); AddSon (a); }
24454
28248
  void  operator delete (void *);
24455
28249
   private:
24456
28250
  typedef CT_TemplateName CCExprResolveExpr;
 
28251
 
 
28252
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24457
28253
 public :
24458
28254
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24459
28255
  typedef CT_TemplateName CExprResolveExpr;
 
28256
 
 
28257
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24460
28258
 public :
24461
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24462
 
 
 
28259
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28260
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28261
};
 
28262
 
 
28263
 
 
28264
#line 28265 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24463
28265
} // closed Puma
24464
28266
class WinIfExists;
24465
28267
class WinImportHandler;
24480
28282
class CCExprResolve;
24481
28283
class CExprResolve;
24482
28284
namespace Puma {
24483
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
 
28285
 
 
28286
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28287
class CT_OperatorName : public CT_SpecialName {
 
28288
#line 28289 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28289
  friend class ::WinIfExists;
24484
28290
  friend class ::WinImportHandler;
24485
28291
  friend class ::WinMacros;
24486
28292
  friend class ::CMatchSyntax;
24499
28305
  friend class ::CCExprResolve;
24500
28306
  friend class ::CExprResolve;
24501
28307
 
 
28308
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28309
 
24502
28310
  int _oper;
24503
28311
 
24504
28312
public:
24520
28328
  void  operator delete (void *);
24521
28329
   private:
24522
28330
  typedef CT_OperatorName CCExprResolveExpr;
 
28331
 
 
28332
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24523
28333
 public :
24524
28334
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24525
28335
  typedef CT_OperatorName CExprResolveExpr;
 
28336
 
 
28337
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24526
28338
 public :
24527
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24528
 
 
 
28339
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28340
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28341
};
 
28342
 
 
28343
 
 
28344
#line 28345 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24529
28345
} // closed Puma
24530
28346
class WinIfExists;
24531
28347
class WinImportHandler;
24546
28362
class CCExprResolve;
24547
28363
class CExprResolve;
24548
28364
namespace Puma {
24549
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
 
28365
 
 
28366
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28367
class CT_ConversionName : public CT_SpecialName {
 
28368
#line 28369 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28369
  friend class ::WinIfExists;
24550
28370
  friend class ::WinImportHandler;
24551
28371
  friend class ::WinMacros;
24552
28372
  friend class ::CMatchSyntax;
24565
28385
  friend class ::CCExprResolve;
24566
28386
  friend class ::CExprResolve;
24567
28387
 
 
28388
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28389
 
24568
28390
public:
24569
28391
  CT_ConversionName (CTree *, CTree *);
24570
28392
  static const char *NodeId ();
24575
28397
  void  operator delete (void *);
24576
28398
   private:
24577
28399
  typedef CT_ConversionName CCExprResolveExpr;
 
28400
 
 
28401
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24578
28402
 public :
24579
28403
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24580
28404
  typedef CT_ConversionName CExprResolveExpr;
 
28405
 
 
28406
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24581
28407
 public :
24582
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24583
 
 
 
28408
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28409
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28410
};
 
28411
 
 
28412
 
 
28413
#line 28414 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24584
28414
} // closed Puma
24585
28415
class WinIfExists;
24586
28416
class WinImportHandler;
24601
28431
class CCExprResolve;
24602
28432
class CExprResolve;
24603
28433
namespace Puma {
24604
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
 
28434
 
 
28435
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28436
class CT_QualName : public CT_SimpleName {
 
28437
#line 28438 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28438
  friend class ::WinIfExists;
24605
28439
  friend class ::WinImportHandler;
24606
28440
  friend class ::WinMacros;
24607
28441
  friend class ::CMatchSyntax;
24620
28454
  friend class ::CCExprResolve;
24621
28455
  friend class ::CExprResolve;
24622
28456
 
 
28457
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28458
 
24623
28459
public:
24624
28460
  CT_QualName (int size = 3) : 
24625
28461
    CT_SimpleName (size, CT_List::SEPARATORS) {}
24637
28473
  void  operator delete (void *);
24638
28474
   private:
24639
28475
  typedef CT_QualName CCExprResolveExpr;
 
28476
 
 
28477
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24640
28478
 public :
24641
28479
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24642
28480
  typedef CT_QualName CExprResolveExpr;
 
28481
 
 
28482
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24643
28483
 public :
24644
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24645
 
 
 
28484
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28485
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28486
};
 
28487
 
 
28488
 
 
28489
#line 28490 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24646
28490
} // closed Puma
24647
28491
class WinIfExists;
24648
28492
class WinImportHandler;
24663
28507
class CCExprResolve;
24664
28508
class CExprResolve;
24665
28509
namespace Puma {
24666
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
 
28510
 
 
28511
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28512
class CT_RootQualName : public CT_QualName {
 
28513
#line 28514 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28514
  friend class ::WinIfExists;
24667
28515
  friend class ::WinImportHandler;
24668
28516
  friend class ::WinMacros;
24669
28517
  friend class ::CMatchSyntax;
24682
28530
  friend class ::CCExprResolve;
24683
28531
  friend class ::CExprResolve;
24684
28532
 
 
28533
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28534
 
24685
28535
public:
24686
28536
  CT_RootQualName (int size = 2) : 
24687
28537
    CT_QualName (size) { AddProperties (INTRO); }
24692
28542
  void  operator delete (void *);
24693
28543
   private:
24694
28544
  typedef CT_RootQualName CCExprResolveExpr;
 
28545
 
 
28546
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24695
28547
 public :
24696
28548
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24697
28549
  typedef CT_RootQualName CExprResolveExpr;
 
28550
 
 
28551
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24698
28552
 public :
24699
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24700
 
 
 
28553
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28554
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28555
};
 
28556
 
 
28557
 
 
28558
#line 28559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24701
28559
} // closed Puma
24702
28560
class WinIfExists;
24703
28561
class WinImportHandler;
24718
28576
class CCExprResolve;
24719
28577
class CExprResolve;
24720
28578
namespace Puma {
24721
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
28579
 
 
28580
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28581
class CT_BinaryExpr : public CT_Expression {
 
28582
#line 28583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28583
  friend class ::WinIfExists;
24722
28584
  friend class ::WinImportHandler;
24723
28585
  friend class ::WinMacros;
24724
28586
  friend class ::CMatchSyntax;
24737
28599
  friend class ::CCExprResolve;
24738
28600
  friend class ::CExprResolve;
24739
28601
 
 
28602
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28603
 
24740
28604
  CTree *sons[3]; // expr, oper, expr
24741
28605
 
24742
28606
public:
24752
28616
  }
24753
28617
   private:
24754
28618
  typedef CT_BinaryExpr CCExprResolveExpr;
 
28619
 
 
28620
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24755
28621
 public :
24756
28622
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24757
28623
  typedef CT_BinaryExpr CExprResolveExpr;
 
28624
 
 
28625
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24758
28626
 public :
24759
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24760
 
 
 
28627
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28628
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28629
};
 
28630
 
 
28631
 
 
28632
#line 28633 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24761
28633
} // closed Puma
24762
28634
class WinIfExists;
24763
28635
class WinImportHandler;
24778
28650
class CCExprResolve;
24779
28651
class CExprResolve;
24780
28652
namespace Puma {
24781
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
 
28653
 
 
28654
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28655
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
28656
#line 28657 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28657
  friend class ::WinIfExists;
24782
28658
  friend class ::WinImportHandler;
24783
28659
  friend class ::WinMacros;
24784
28660
  friend class ::CMatchSyntax;
24797
28673
  friend class ::CCExprResolve;
24798
28674
  friend class ::CExprResolve;
24799
28675
 
 
28676
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28677
 
24800
28678
public:
24801
28679
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
24802
28680
    CT_BinaryExpr (e, o, i) {}
24805
28683
  CSemObject *SemObject () const { return (CSemObject*)this; }
24806
28684
   private:
24807
28685
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
28686
 
 
28687
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24808
28688
 public :
24809
28689
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24810
28690
  typedef CT_MembPtrExpr CExprResolveExpr;
 
28691
 
 
28692
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24811
28693
 public :
24812
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24813
 
 
 
28694
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28695
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28696
};
 
28697
 
 
28698
 
 
28699
#line 28700 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24814
28700
} // closed Puma
24815
28701
class WinIfExists;
24816
28702
class WinImportHandler;
24831
28717
class CCExprResolve;
24832
28718
class CExprResolve;
24833
28719
namespace Puma {
24834
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
 
28720
 
 
28721
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28722
class CT_MembRefExpr : public CT_MembPtrExpr {
 
28723
#line 28724 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28724
  friend class ::WinIfExists;
24835
28725
  friend class ::WinImportHandler;
24836
28726
  friend class ::WinMacros;
24837
28727
  friend class ::CMatchSyntax;
24850
28740
  friend class ::CCExprResolve;
24851
28741
  friend class ::CExprResolve;
24852
28742
 
 
28743
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28744
 
24853
28745
public:
24854
28746
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
24855
28747
    CT_MembPtrExpr (e, o, i) {}
24857
28749
  const char *NodeName () const { return NodeId (); }
24858
28750
   private:
24859
28751
  typedef CT_MembRefExpr CCExprResolveExpr;
 
28752
 
 
28753
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24860
28754
 public :
24861
28755
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24862
28756
  typedef CT_MembRefExpr CExprResolveExpr;
 
28757
 
 
28758
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24863
28759
 public :
24864
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24865
 
 
 
28760
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28761
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28762
};
 
28763
 
 
28764
 
 
28765
#line 28766 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24866
28766
} // closed Puma
24867
28767
class WinIfExists;
24868
28768
class WinImportHandler;
24883
28783
class CCExprResolve;
24884
28784
class CExprResolve;
24885
28785
namespace Puma {
24886
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
28786
 
 
28787
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28788
class CT_UnaryExpr : public CT_Expression {
 
28789
#line 28790 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28790
  friend class ::WinIfExists;
24887
28791
  friend class ::WinImportHandler;
24888
28792
  friend class ::WinMacros;
24889
28793
  friend class ::CMatchSyntax;
24902
28806
  friend class ::CCExprResolve;
24903
28807
  friend class ::CExprResolve;
24904
28808
 
 
28809
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28810
 
24905
28811
  CTree *sons[2]; // oper, expr
24906
28812
 
24907
28813
public:
24916
28822
  CTree *Expr () const { return sons[1]; }
24917
28823
   private:
24918
28824
  typedef CT_UnaryExpr CCExprResolveExpr;
 
28825
 
 
28826
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24919
28827
 public :
24920
28828
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24921
28829
  typedef CT_UnaryExpr CExprResolveExpr;
 
28830
 
 
28831
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24922
28832
 public :
24923
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24924
 
 
 
28833
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28834
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28835
};
 
28836
 
 
28837
 
 
28838
#line 28839 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24925
28839
} // closed Puma
24926
28840
class WinIfExists;
24927
28841
class WinImportHandler;
24942
28856
class CCExprResolve;
24943
28857
class CExprResolve;
24944
28858
namespace Puma {
24945
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
28859
 
 
28860
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28861
class CT_PostfixExpr : public CT_UnaryExpr {
 
28862
#line 28863 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28863
  friend class ::WinIfExists;
24946
28864
  friend class ::WinImportHandler;
24947
28865
  friend class ::WinMacros;
24948
28866
  friend class ::CMatchSyntax;
24961
28879
  friend class ::CCExprResolve;
24962
28880
  friend class ::CExprResolve;
24963
28881
 
 
28882
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28883
 
24964
28884
public:
24965
28885
  CT_PostfixExpr (CTree *e, CTree *o) :
24966
28886
    CT_UnaryExpr (e, o) {}
24968
28888
  const char *NodeName () const { return NodeId (); }
24969
28889
   private:
24970
28890
  typedef CT_PostfixExpr CCExprResolveExpr;
 
28891
 
 
28892
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
24971
28893
 public :
24972
28894
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
24973
28895
  typedef CT_PostfixExpr CExprResolveExpr;
 
28896
 
 
28897
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
24974
28898
 public :
24975
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
24976
 
 
 
28899
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28900
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28901
};
 
28902
 
 
28903
 
 
28904
#line 28905 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
24977
28905
} // closed Puma
24978
28906
class WinIfExists;
24979
28907
class WinImportHandler;
24994
28922
class CCExprResolve;
24995
28923
class CExprResolve;
24996
28924
namespace Puma {
24997
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
28925
 
 
28926
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28927
class CT_AddrExpr : public CT_UnaryExpr {
 
28928
#line 28929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28929
  friend class ::WinIfExists;
24998
28930
  friend class ::WinImportHandler;
24999
28931
  friend class ::WinMacros;
25000
28932
  friend class ::CMatchSyntax;
25013
28945
  friend class ::CCExprResolve;
25014
28946
  friend class ::CExprResolve;
25015
28947
 
 
28948
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28949
 
25016
28950
public:
25017
28951
  CT_AddrExpr (CTree *o, CTree *e) :
25018
28952
    CT_UnaryExpr (o, e) {}
25020
28954
  const char *NodeName () const { return NodeId (); }
25021
28955
   private:
25022
28956
  typedef CT_AddrExpr CCExprResolveExpr;
 
28957
 
 
28958
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25023
28959
 public :
25024
28960
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25025
28961
  typedef CT_AddrExpr CExprResolveExpr;
 
28962
 
 
28963
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25026
28964
 public :
25027
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25028
 
 
 
28965
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
28966
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28967
};
 
28968
 
 
28969
 
 
28970
#line 28971 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25029
28971
} // closed Puma
25030
28972
class WinIfExists;
25031
28973
class WinImportHandler;
25046
28988
class CCExprResolve;
25047
28989
class CExprResolve;
25048
28990
namespace Puma {
25049
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
28991
 
 
28992
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
28993
class CT_DerefExpr : public CT_UnaryExpr {
 
28994
#line 28995 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
28995
  friend class ::WinIfExists;
25050
28996
  friend class ::WinImportHandler;
25051
28997
  friend class ::WinMacros;
25052
28998
  friend class ::CMatchSyntax;
25065
29011
  friend class ::CCExprResolve;
25066
29012
  friend class ::CExprResolve;
25067
29013
 
 
29014
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29015
 
25068
29016
public:
25069
29017
  CT_DerefExpr (CTree *o, CTree *e) :
25070
29018
    CT_UnaryExpr (o, e) {}
25072
29020
  const char *NodeName () const { return NodeId (); }
25073
29021
   private:
25074
29022
  typedef CT_DerefExpr CCExprResolveExpr;
 
29023
 
 
29024
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25075
29025
 public :
25076
29026
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25077
29027
  typedef CT_DerefExpr CExprResolveExpr;
 
29028
 
 
29029
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25078
29030
 public :
25079
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25080
 
 
 
29031
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29032
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29033
};
 
29034
 
 
29035
 
 
29036
#line 29037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25081
29037
} // closed Puma
25082
29038
class WinIfExists;
25083
29039
class WinImportHandler;
25098
29054
class CCExprResolve;
25099
29055
class CExprResolve;
25100
29056
namespace Puma {
25101
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
29057
 
 
29058
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29059
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
29060
#line 29061 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29061
  friend class ::WinIfExists;
25102
29062
  friend class ::WinImportHandler;
25103
29063
  friend class ::WinMacros;
25104
29064
  friend class ::CMatchSyntax;
25117
29077
  friend class ::CCExprResolve;
25118
29078
  friend class ::CExprResolve;
25119
29079
 
 
29080
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29081
 
25120
29082
  CTree *sons[2]; // oper, expr
25121
29083
 
25122
29084
public:
25133
29095
  CSemObject *SemObject () const { return (CSemObject*)this; }
25134
29096
   private:
25135
29097
  typedef CT_DeleteExpr CCExprResolveExpr;
 
29098
 
 
29099
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25136
29100
 public :
25137
29101
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25138
29102
  typedef CT_DeleteExpr CExprResolveExpr;
 
29103
 
 
29104
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25139
29105
 public :
25140
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25141
 
 
 
29106
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29107
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29108
};
 
29109
 
 
29110
 
 
29111
#line 29112 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25142
29112
} // closed Puma
25143
29113
class WinIfExists;
25144
29114
class WinImportHandler;
25159
29129
class CCExprResolve;
25160
29130
class CExprResolve;
25161
29131
namespace Puma {
25162
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
29132
 
 
29133
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29134
class CT_NewExpr : public CT_Expression, public CSemObject {
 
29135
#line 29136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29136
  friend class ::WinIfExists;
25163
29137
  friend class ::WinImportHandler;
25164
29138
  friend class ::WinMacros;
25165
29139
  friend class ::CMatchSyntax;
25178
29152
  friend class ::CCExprResolve;
25179
29153
  friend class ::CExprResolve;
25180
29154
 
 
29155
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29156
 
25181
29157
  CTree *sons[6]; // oper, placement, open, type, close, init
25182
29158
 
25183
29159
public:
25198
29174
  CSemObject *SemObject () const { return (CSemObject*)this; }
25199
29175
   private:
25200
29176
  typedef CT_NewExpr CCExprResolveExpr;
 
29177
 
 
29178
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25201
29179
 public :
25202
29180
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25203
29181
  typedef CT_NewExpr CExprResolveExpr;
 
29182
 
 
29183
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25204
29184
 public :
25205
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25206
 
 
 
29185
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29186
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29187
};
 
29188
 
 
29189
 
 
29190
#line 29191 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25207
29191
} // closed Puma
25208
29192
class WinIfExists;
25209
29193
class WinImportHandler;
25224
29208
class CCExprResolve;
25225
29209
class CExprResolve;
25226
29210
namespace Puma {
25227
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
 
29211
 
 
29212
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29213
class CT_IfThenExpr : public CT_Expression {
 
29214
#line 29215 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29215
  friend class ::WinIfExists;
25228
29216
  friend class ::WinImportHandler;
25229
29217
  friend class ::WinMacros;
25230
29218
  friend class ::CMatchSyntax;
25243
29231
  friend class ::CCExprResolve;
25244
29232
  friend class ::CExprResolve;
25245
29233
 
 
29234
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29235
 
25246
29236
  CTree *sons[5]; // cond, oper, left, colon, right
25247
29237
 
25248
29238
public:
25264
29254
  }
25265
29255
   private:
25266
29256
  typedef CT_IfThenExpr CCExprResolveExpr;
 
29257
 
 
29258
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25267
29259
 public :
25268
29260
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25269
29261
  typedef CT_IfThenExpr CExprResolveExpr;
 
29262
 
 
29263
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25270
29264
 public :
25271
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25272
 
 
 
29265
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29266
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29267
};
 
29268
 
 
29269
 
 
29270
#line 29271 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25273
29271
} // closed Puma
25274
29272
class WinIfExists;
25275
29273
class WinImportHandler;
25290
29288
class CCExprResolve;
25291
29289
class CExprResolve;
25292
29290
namespace Puma {
25293
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
29291
 
 
29292
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29293
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
29294
#line 29295 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29295
  friend class ::WinIfExists;
25294
29296
  friend class ::WinImportHandler;
25295
29297
  friend class ::WinMacros;
25296
29298
  friend class ::CMatchSyntax;
25309
29311
  friend class ::CCExprResolve;
25310
29312
  friend class ::CExprResolve;
25311
29313
 
 
29314
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29315
 
25312
29316
  CTree *sons[4]; // open, type, close, init
25313
29317
 
25314
29318
public:
25327
29331
  CSemObject *SemObject () const { return (CSemObject*)this; }
25328
29332
   private:
25329
29333
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
29334
 
 
29335
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25330
29336
 public :
25331
29337
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25332
29338
  typedef CT_CmpdLiteral CExprResolveExpr;
 
29339
 
 
29340
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25333
29341
 public :
25334
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25335
 
 
 
29342
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29343
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29344
};
 
29345
 
 
29346
 
 
29347
#line 29348 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25336
29348
} // closed Puma
25337
29349
class WinIfExists;
25338
29350
class WinImportHandler;
25353
29365
class CCExprResolve;
25354
29366
class CExprResolve;
25355
29367
namespace Puma {
25356
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
29368
 
 
29369
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29370
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
29371
#line 29372 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29372
  friend class ::WinIfExists;
25357
29373
  friend class ::WinImportHandler;
25358
29374
  friend class ::WinMacros;
25359
29375
  friend class ::CMatchSyntax;
25372
29388
  friend class ::CCExprResolve;
25373
29389
  friend class ::CExprResolve;
25374
29390
 
 
29391
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29392
 
25375
29393
  CTree *sons[2]; // type, init
25376
29394
 
25377
29395
public:
25388
29406
  CSemObject *SemObject () const { return (CSemObject*)this; }
25389
29407
   private:
25390
29408
  typedef CT_ConstructExpr CCExprResolveExpr;
 
29409
 
 
29410
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25391
29411
 public :
25392
29412
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25393
29413
  typedef CT_ConstructExpr CExprResolveExpr;
 
29414
 
 
29415
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25394
29416
 public :
25395
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25396
 
 
 
29417
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29418
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29419
};
 
29420
 
 
29421
 
 
29422
#line 29423 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25397
29423
} // closed Puma
25398
29424
class WinIfExists;
25399
29425
class WinImportHandler;
25414
29440
class CCExprResolve;
25415
29441
class CExprResolve;
25416
29442
namespace Puma {
25417
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
 
29443
 
 
29444
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29445
class CT_ThrowExpr : public CT_Expression {
 
29446
#line 29447 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29447
  friend class ::WinIfExists;
25418
29448
  friend class ::WinImportHandler;
25419
29449
  friend class ::WinMacros;
25420
29450
  friend class ::CMatchSyntax;
25433
29463
  friend class ::CCExprResolve;
25434
29464
  friend class ::CExprResolve;
25435
29465
 
 
29466
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29467
 
25436
29468
  CTree *sons[2]; // throw, expr
25437
29469
 
25438
29470
public:
25447
29479
  CTree *Expr () const { return sons[1]; }
25448
29480
   private:
25449
29481
  typedef CT_ThrowExpr CCExprResolveExpr;
 
29482
 
 
29483
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25450
29484
 public :
25451
29485
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25452
29486
  typedef CT_ThrowExpr CExprResolveExpr;
 
29487
 
 
29488
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25453
29489
 public :
25454
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25455
 
 
 
29490
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29491
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29492
};
 
29493
 
 
29494
 
 
29495
#line 29496 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25456
29496
} // closed Puma
25457
29497
class WinIfExists;
25458
29498
class WinImportHandler;
25473
29513
class CCExprResolve;
25474
29514
class CExprResolve;
25475
29515
namespace Puma {
25476
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
 
29516
 
 
29517
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29518
class CT_IndexExpr : public CT_Expression {
 
29519
#line 29520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29520
  friend class ::WinIfExists;
25477
29521
  friend class ::WinImportHandler;
25478
29522
  friend class ::WinMacros;
25479
29523
  friend class ::CMatchSyntax;
25492
29536
  friend class ::CCExprResolve;
25493
29537
  friend class ::CExprResolve;
25494
29538
 
 
29539
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29540
 
25495
29541
  CTree *sons[4]; // expr, open, index, close
25496
29542
 
25497
29543
public:
25507
29553
  }
25508
29554
   private:
25509
29555
  typedef CT_IndexExpr CCExprResolveExpr;
 
29556
 
 
29557
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25510
29558
 public :
25511
29559
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25512
29560
  typedef CT_IndexExpr CExprResolveExpr;
 
29561
 
 
29562
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25513
29563
 public :
25514
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25515
 
 
 
29564
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29565
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29566
};
 
29567
 
 
29568
 
 
29569
#line 29570 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25516
29570
} // closed Puma
25517
29571
class WinIfExists;
25518
29572
class WinImportHandler;
25533
29587
class CCExprResolve;
25534
29588
class CExprResolve;
25535
29589
namespace Puma {
25536
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
29590
 
 
29591
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29592
class CT_CallExpr : public CT_Expression, public CSemObject {
 
29593
#line 29594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29594
  friend class ::WinIfExists;
25537
29595
  friend class ::WinImportHandler;
25538
29596
  friend class ::WinMacros;
25539
29597
  friend class ::CMatchSyntax;
25552
29610
  friend class ::CCExprResolve;
25553
29611
  friend class ::CExprResolve;
25554
29612
 
 
29613
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29614
 
25555
29615
  CTree *sons[2]; // expr, args
25556
29616
 
25557
29617
public:
25569
29629
  CSemObject *SemObject () const { return (CSemObject*)this; }
25570
29630
   private:
25571
29631
  typedef CT_CallExpr CCExprResolveExpr;
 
29632
 
 
29633
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25572
29634
 public :
25573
29635
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25574
29636
  typedef CT_CallExpr CExprResolveExpr;
 
29637
 
 
29638
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25575
29639
 public :
25576
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25577
 
 
 
29640
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29641
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29642
};
 
29643
 
 
29644
 
 
29645
#line 29646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25578
29646
} // closed Puma
25579
29647
class WinIfExists;
25580
29648
class WinImportHandler;
25595
29663
class CCExprResolve;
25596
29664
class CExprResolve;
25597
29665
namespace Puma {
25598
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
 
29666
 
 
29667
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29668
class CT_CastExpr : public CT_Expression {
 
29669
#line 29670 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29670
  friend class ::WinIfExists;
25599
29671
  friend class ::WinImportHandler;
25600
29672
  friend class ::WinMacros;
25601
29673
  friend class ::CMatchSyntax;
25614
29686
  friend class ::CCExprResolve;
25615
29687
  friend class ::CExprResolve;
25616
29688
 
 
29689
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29690
 
25617
29691
  CTree *sons[4]; // open, type, close, expr
25618
29692
 
25619
29693
public:
25631
29705
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
25632
29706
   private:
25633
29707
  typedef CT_CastExpr CCExprResolveExpr;
 
29708
 
 
29709
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25634
29710
 public :
25635
29711
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25636
29712
  typedef CT_CastExpr CExprResolveExpr;
 
29713
 
 
29714
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25637
29715
 public :
25638
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25639
 
 
 
29716
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29717
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29718
};
 
29719
 
 
29720
 
 
29721
#line 29722 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25640
29722
} // closed Puma
25641
29723
class WinIfExists;
25642
29724
class WinImportHandler;
25657
29739
class CCExprResolve;
25658
29740
class CExprResolve;
25659
29741
namespace Puma {
25660
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
 
29742
 
 
29743
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29744
class CT_StaticCast : public CT_Expression {
 
29745
#line 29746 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29746
  friend class ::WinIfExists;
25661
29747
  friend class ::WinImportHandler;
25662
29748
  friend class ::WinMacros;
25663
29749
  friend class ::CMatchSyntax;
25676
29762
  friend class ::CCExprResolve;
25677
29763
  friend class ::CExprResolve;
25678
29764
 
 
29765
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29766
 
25679
29767
  CTree *sons[5]; // cast, open, type, close, expr
25680
29768
 
25681
29769
public:
25693
29781
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
25694
29782
   private:
25695
29783
  typedef CT_StaticCast CCExprResolveExpr;
 
29784
 
 
29785
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25696
29786
 public :
25697
29787
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25698
29788
  typedef CT_StaticCast CExprResolveExpr;
 
29789
 
 
29790
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25699
29791
 public :
25700
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25701
 
 
 
29792
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29793
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29794
};
 
29795
 
 
29796
 
 
29797
#line 29798 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25702
29798
} // closed Puma
25703
29799
class WinIfExists;
25704
29800
class WinImportHandler;
25719
29815
class CCExprResolve;
25720
29816
class CExprResolve;
25721
29817
namespace Puma {
25722
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
 
29818
 
 
29819
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29820
class CT_ConstCast : public CT_StaticCast {
 
29821
#line 29822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29822
  friend class ::WinIfExists;
25723
29823
  friend class ::WinImportHandler;
25724
29824
  friend class ::WinMacros;
25725
29825
  friend class ::CMatchSyntax;
25738
29838
  friend class ::CCExprResolve;
25739
29839
  friend class ::CExprResolve;
25740
29840
 
 
29841
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29842
 
25741
29843
public:
25742
29844
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
25743
29845
    CT_StaticCast (cst, o, t, c, e) {}
25745
29847
  const char *NodeName () const { return NodeId (); }
25746
29848
   private:
25747
29849
  typedef CT_ConstCast CCExprResolveExpr;
 
29850
 
 
29851
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25748
29852
 public :
25749
29853
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25750
29854
  typedef CT_ConstCast CExprResolveExpr;
 
29855
 
 
29856
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25751
29857
 public :
25752
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25753
 
 
 
29858
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29859
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29860
};
 
29861
 
 
29862
 
 
29863
#line 29864 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25754
29864
} // closed Puma
25755
29865
class WinIfExists;
25756
29866
class WinImportHandler;
25771
29881
class CCExprResolve;
25772
29882
class CExprResolve;
25773
29883
namespace Puma {
25774
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
 
29884
 
 
29885
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29886
class CT_ReintCast : public CT_StaticCast {
 
29887
#line 29888 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29888
  friend class ::WinIfExists;
25775
29889
  friend class ::WinImportHandler;
25776
29890
  friend class ::WinMacros;
25777
29891
  friend class ::CMatchSyntax;
25790
29904
  friend class ::CCExprResolve;
25791
29905
  friend class ::CExprResolve;
25792
29906
 
 
29907
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29908
 
25793
29909
public:
25794
29910
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
25795
29911
    CT_StaticCast (cst, o, t, c, e) {}
25797
29913
  const char *NodeName () const { return NodeId (); }
25798
29914
   private:
25799
29915
  typedef CT_ReintCast CCExprResolveExpr;
 
29916
 
 
29917
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25800
29918
 public :
25801
29919
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25802
29920
  typedef CT_ReintCast CExprResolveExpr;
 
29921
 
 
29922
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25803
29923
 public :
25804
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25805
 
 
 
29924
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29925
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29926
};
 
29927
 
 
29928
 
 
29929
#line 29930 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25806
29930
} // closed Puma
25807
29931
class WinIfExists;
25808
29932
class WinImportHandler;
25823
29947
class CCExprResolve;
25824
29948
class CExprResolve;
25825
29949
namespace Puma {
25826
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
 
29950
 
 
29951
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29952
class CT_DynamicCast : public CT_StaticCast {
 
29953
#line 29954 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
29954
  friend class ::WinIfExists;
25827
29955
  friend class ::WinImportHandler;
25828
29956
  friend class ::WinMacros;
25829
29957
  friend class ::CMatchSyntax;
25842
29970
  friend class ::CCExprResolve;
25843
29971
  friend class ::CExprResolve;
25844
29972
 
 
29973
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29974
 
25845
29975
public:
25846
29976
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
25847
29977
    CT_StaticCast (cst, o, t, c, e) {}
25849
29979
  const char *NodeName () const { return NodeId (); }
25850
29980
   private:
25851
29981
  typedef CT_DynamicCast CCExprResolveExpr;
 
29982
 
 
29983
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25852
29984
 public :
25853
29985
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25854
29986
  typedef CT_DynamicCast CExprResolveExpr;
 
29987
 
 
29988
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25855
29989
 public :
25856
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25857
 
 
 
29990
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
29991
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
29992
};
 
29993
 
 
29994
 
 
29995
#line 29996 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25858
29996
} // closed Puma
25859
29997
class WinIfExists;
25860
29998
class WinImportHandler;
25875
30013
class CCExprResolve;
25876
30014
class CExprResolve;
25877
30015
namespace Puma {
25878
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
 
30016
 
 
30017
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30018
class CT_ImplicitCast : public CT_Expression {
 
30019
#line 30020 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30020
  friend class ::WinIfExists;
25879
30021
  friend class ::WinImportHandler;
25880
30022
  friend class ::WinMacros;
25881
30023
  friend class ::CMatchSyntax;
25894
30036
  friend class ::CCExprResolve;
25895
30037
  friend class ::CExprResolve;
25896
30038
 
 
30039
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30040
 
25897
30041
  CTree *_expr; // casted expression
25898
30042
 
25899
30043
public:
25907
30051
   { if (old_son == _expr) _expr = new_son; }
25908
30052
   private:
25909
30053
  typedef CT_ImplicitCast CCExprResolveExpr;
 
30054
 
 
30055
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25910
30056
 public :
25911
30057
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25912
30058
  typedef CT_ImplicitCast CExprResolveExpr;
 
30059
 
 
30060
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25913
30061
 public :
25914
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25915
 
 
 
30062
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
30063
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30064
};
 
30065
 
 
30066
 
 
30067
#line 30068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25916
30068
} // closed Puma
25917
30069
class WinIfExists;
25918
30070
class WinImportHandler;
25933
30085
class CCExprResolve;
25934
30086
class CExprResolve;
25935
30087
namespace Puma {
25936
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
 
30088
 
 
30089
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30090
class CT_TypeidExpr : public CT_Expression {
 
30091
#line 30092 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30092
  friend class ::WinIfExists;
25937
30093
  friend class ::WinImportHandler;
25938
30094
  friend class ::WinMacros;
25939
30095
  friend class ::CMatchSyntax;
25952
30108
  friend class ::CCExprResolve;
25953
30109
  friend class ::CExprResolve;
25954
30110
 
 
30111
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30112
 
25955
30113
  CTree *sons[4]; // typeid, open, type_id/expr, close
25956
30114
 
25957
30115
public:
25968
30126
  CTree *Arg () const { return sons[2]; }
25969
30127
   private:
25970
30128
  typedef CT_TypeidExpr CCExprResolveExpr;
 
30129
 
 
30130
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
25971
30131
 public :
25972
30132
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
25973
30133
  typedef CT_TypeidExpr CExprResolveExpr;
 
30134
 
 
30135
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
25974
30136
 public :
25975
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
25976
 
 
 
30137
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
30138
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30139
};
 
30140
 
 
30141
 
 
30142
#line 30143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
25977
30143
} // closed Puma
25978
30144
class WinIfExists;
25979
30145
class WinImportHandler;
25994
30160
class CCExprResolve;
25995
30161
class CExprResolve;
25996
30162
namespace Puma {
25997
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
 
30163
 
 
30164
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30165
class CT_SizeofExpr : public CT_Expression {
 
30166
#line 30167 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30167
  friend class ::WinIfExists;
25998
30168
  friend class ::WinImportHandler;
25999
30169
  friend class ::WinMacros;
26000
30170
  friend class ::CMatchSyntax;
26013
30183
  friend class ::CCExprResolve;
26014
30184
  friend class ::CExprResolve;
26015
30185
 
 
30186
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30187
 
26016
30188
  CTree *sons[5]; // key, open, type, close, expr
26017
30189
 
26018
30190
public:
26033
30205
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
26034
30206
   private:
26035
30207
  typedef CT_SizeofExpr CCExprResolveExpr;
 
30208
 
 
30209
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
26036
30210
 public :
26037
30211
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
26038
30212
  typedef CT_SizeofExpr CExprResolveExpr;
 
30213
 
 
30214
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
26039
30215
 public :
26040
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
26041
 
 
 
30216
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
30217
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30218
};
 
30219
 
 
30220
 
 
30221
#line 30222 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26042
30222
} // closed Puma
26043
30223
class WinIfExists;
26044
30224
class WinImportHandler;
26059
30239
class CCExprResolve;
26060
30240
class CExprResolve;
26061
30241
namespace Puma {
26062
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
 
30242
 
 
30243
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30244
class CT_IndexDesignator : public CT_Expression {
 
30245
#line 30246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30246
  friend class ::WinIfExists;
26063
30247
  friend class ::WinImportHandler;
26064
30248
  friend class ::WinMacros;
26065
30249
  friend class ::CMatchSyntax;
26078
30262
  friend class ::CCExprResolve;
26079
30263
  friend class ::CExprResolve;
26080
30264
 
 
30265
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30266
 
26081
30267
  CTree *sons[3]; // open, index, close
26082
30268
 
26083
30269
public:
26093
30279
  }
26094
30280
   private:
26095
30281
  typedef CT_IndexDesignator CCExprResolveExpr;
 
30282
 
 
30283
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
26096
30284
 public :
26097
30285
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
26098
30286
  typedef CT_IndexDesignator CExprResolveExpr;
 
30287
 
 
30288
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
26099
30289
 public :
26100
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
26101
 
 
 
30290
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
30291
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30292
};
 
30293
 
 
30294
 
 
30295
#line 30296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26102
30296
} // closed Puma
26103
30297
class WinIfExists;
26104
30298
class WinImportHandler;
26119
30313
class CCExprResolve;
26120
30314
class CExprResolve;
26121
30315
namespace Puma {
26122
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
 
30316
 
 
30317
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30318
class CT_MembDesignator : public CT_Expression {
 
30319
#line 30320 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30320
  friend class ::WinIfExists;
26123
30321
  friend class ::WinImportHandler;
26124
30322
  friend class ::WinMacros;
26125
30323
  friend class ::CMatchSyntax;
26138
30336
  friend class ::CCExprResolve;
26139
30337
  friend class ::CExprResolve;
26140
30338
 
 
30339
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30340
 
26141
30341
  CTree *sons[2]; // dot, member
26142
30342
 
26143
30343
public:
26151
30351
  }
26152
30352
   private:
26153
30353
  typedef CT_MembDesignator CCExprResolveExpr;
 
30354
 
 
30355
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
26154
30356
 public :
26155
30357
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
26156
30358
  typedef CT_MembDesignator CExprResolveExpr;
 
30359
 
 
30360
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
26157
30361
 public :
26158
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
26159
 
 
 
30362
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
30363
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30364
};
 
30365
 
 
30366
 
 
30367
#line 30368 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26160
30368
} // closed Puma
26161
30369
class WinIfExists;
26162
30370
class WinImportHandler;
26177
30385
class CCExprResolve;
26178
30386
class CExprResolve;
26179
30387
namespace Puma {
26180
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
30388
 
 
30389
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30390
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
30391
#line 30392 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30392
  friend class ::WinIfExists;
26181
30393
  friend class ::WinImportHandler;
26182
30394
  friend class ::WinMacros;
26183
30395
  friend class ::CMatchSyntax;
26196
30408
  friend class ::CCExprResolve;
26197
30409
  friend class ::CExprResolve;
26198
30410
 
 
30411
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30412
 
26199
30413
public:
26200
30414
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
26201
30415
  static const char *NodeId ();
26212
30426
/*                                                                           */
26213
30427
/*****************************************************************************/
26214
30428
 
 
30429
 
 
30430
#line 30431 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26215
30431
} // closed Puma
26216
30432
class WinIfExists;
26217
30433
class WinImportHandler;
26232
30448
class CCExprResolve;
26233
30449
class CExprResolve;
26234
30450
namespace Puma {
26235
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
 
30451
 
 
30452
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30453
class CT_DeclSpec : public CTree {
 
30454
#line 30455 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30455
  friend class ::WinIfExists;
26236
30456
  friend class ::WinImportHandler;
26237
30457
  friend class ::WinMacros;
26238
30458
  friend class ::CMatchSyntax;
26251
30471
  friend class ::CCExprResolve;
26252
30472
  friend class ::CExprResolve;
26253
30473
 
 
30474
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30475
 
26254
30476
protected:
26255
30477
  CT_DeclSpec () {}
26256
30478
};
26257
30479
 
 
30480
 
 
30481
#line 30482 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26258
30482
} // closed Puma
26259
30483
class WinIfExists;
26260
30484
class WinImportHandler;
26275
30499
class CCExprResolve;
26276
30500
class CExprResolve;
26277
30501
namespace Puma {
26278
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
30502
 
 
30503
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30504
class CT_PrimDeclSpec : public CT_DeclSpec {
 
30505
#line 30506 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30506
  friend class ::WinIfExists;
26279
30507
  friend class ::WinImportHandler;
26280
30508
  friend class ::WinMacros;
26281
30509
  friend class ::CMatchSyntax;
26294
30522
  friend class ::CCExprResolve;
26295
30523
  friend class ::CExprResolve;
26296
30524
 
 
30525
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30526
 
26297
30527
public:
26298
30528
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
26299
30529
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
26326
30556
  static const int NumTypes = PDS_NUM;
26327
30557
};
26328
30558
 
 
30559
 
 
30560
#line 30561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26329
30561
} // closed Puma
26330
30562
class WinIfExists;
26331
30563
class WinImportHandler;
26346
30578
class CCExprResolve;
26347
30579
class CExprResolve;
26348
30580
namespace Puma {
26349
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
30581
 
 
30582
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30583
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
30584
#line 30585 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30585
  friend class ::WinIfExists;
26350
30586
  friend class ::WinImportHandler;
26351
30587
  friend class ::WinMacros;
26352
30588
  friend class ::CMatchSyntax;
26365
30601
  friend class ::CCExprResolve;
26366
30602
  friend class ::CExprResolve;
26367
30603
 
 
30604
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30605
 
26368
30606
  CTree *sons[2]; // declspecs, declarator
26369
30607
 
26370
30608
public:
26380
30618
  CSemObject *SemObject () const { return (CSemObject*)this; }
26381
30619
};
26382
30620
      
 
30621
 
 
30622
#line 30623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26383
30623
} // closed Puma
26384
30624
class WinIfExists;
26385
30625
class WinImportHandler;
26400
30640
class CCExprResolve;
26401
30641
class CExprResolve;
26402
30642
namespace Puma {
26403
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
30643
 
 
30644
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30645
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
30646
#line 30647 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30647
  friend class ::WinIfExists;
26404
30648
  friend class ::WinImportHandler;
26405
30649
  friend class ::WinMacros;
26406
30650
  friend class ::CMatchSyntax;
26419
30663
  friend class ::CCExprResolve;
26420
30664
  friend class ::CExprResolve;
26421
30665
 
 
30666
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30667
 
26422
30668
  CTree *sons[2]; // key, name
26423
30669
  
26424
30670
public:
26434
30680
  }
26435
30681
};
26436
30682
 
 
30683
 
 
30684
#line 30685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26437
30685
} // closed Puma
26438
30686
class WinIfExists;
26439
30687
class WinImportHandler;
26454
30702
class CCExprResolve;
26455
30703
class CExprResolve;
26456
30704
namespace Puma {
26457
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
30705
 
 
30706
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30707
class CT_UnionSpec : public CT_ClassSpec {
 
30708
#line 30709 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30709
  friend class ::WinIfExists;
26458
30710
  friend class ::WinImportHandler;
26459
30711
  friend class ::WinMacros;
26460
30712
  friend class ::CMatchSyntax;
26473
30725
  friend class ::CCExprResolve;
26474
30726
  friend class ::CExprResolve;
26475
30727
 
 
30728
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30729
 
26476
30730
public:
26477
30731
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
26478
30732
  static const char *NodeId ();
26479
30733
  const char *NodeName () const { return NodeId (); }
26480
30734
};
26481
30735
 
 
30736
 
 
30737
#line 30738 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26482
30738
} // closed Puma
26483
30739
class WinIfExists;
26484
30740
class WinImportHandler;
26499
30755
class CCExprResolve;
26500
30756
class CExprResolve;
26501
30757
namespace Puma {
26502
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
30758
 
 
30759
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30760
class CT_EnumSpec : public CT_ClassSpec {
 
30761
#line 30762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30762
  friend class ::WinIfExists;
26503
30763
  friend class ::WinImportHandler;
26504
30764
  friend class ::WinMacros;
26505
30765
  friend class ::CMatchSyntax;
26518
30778
  friend class ::CCExprResolve;
26519
30779
  friend class ::CExprResolve;
26520
30780
 
 
30781
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30782
 
26521
30783
public:
26522
30784
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
26523
30785
  static const char *NodeId ();
26524
30786
  const char *NodeName () const { return NodeId (); }
26525
30787
};
26526
30788
 
 
30789
 
 
30790
#line 30791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26527
30791
} // closed Puma
26528
30792
class WinIfExists;
26529
30793
class WinImportHandler;
26544
30808
class CCExprResolve;
26545
30809
class CExprResolve;
26546
30810
namespace Puma {
26547
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
30811
 
 
30812
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30813
class CT_ExceptionSpec : public CT_DeclSpec {
 
30814
#line 30815 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30815
  friend class ::WinIfExists;
26548
30816
  friend class ::WinImportHandler;
26549
30817
  friend class ::WinMacros;
26550
30818
  friend class ::CMatchSyntax;
26563
30831
  friend class ::CCExprResolve;
26564
30832
  friend class ::CExprResolve;
26565
30833
 
 
30834
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30835
 
26566
30836
  CTree *sons[2]; // throw, type_id_list
26567
30837
  
26568
30838
public:
26583
30853
/*                                                                           */
26584
30854
/*****************************************************************************/
26585
30855
 
 
30856
 
 
30857
#line 30858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26586
30858
} // closed Puma
26587
30859
class WinIfExists;
26588
30860
class WinImportHandler;
26603
30875
class CCExprResolve;
26604
30876
class CExprResolve;
26605
30877
namespace Puma {
26606
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
 
30878
 
 
30879
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30880
class CT_Decl : public CTree {
 
30881
#line 30882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30882
  friend class ::WinIfExists;
26607
30883
  friend class ::WinImportHandler;
26608
30884
  friend class ::WinMacros;
26609
30885
  friend class ::CMatchSyntax;
26621
30897
  friend class ::PragmaOnce;
26622
30898
  friend class ::CCExprResolve;
26623
30899
  friend class ::CExprResolve;
 
30900
 
 
30901
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
26624
30902
 
26625
30903
  CT_LinkageSpec *_linkage;
26626
30904
protected:
26630
30908
  CT_LinkageSpec *Linkage () const { return _linkage; }
26631
30909
};
26632
30910
 
 
30911
 
 
30912
#line 30913 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26633
30913
} // closed Puma
26634
30914
class WinIfExists;
26635
30915
class WinImportHandler;
26650
30930
class CCExprResolve;
26651
30931
class CExprResolve;
26652
30932
namespace Puma {
26653
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
30933
 
 
30934
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30935
class CT_Program : public CT_DeclList, public CSemScope {
 
30936
#line 30937 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30937
  friend class ::WinIfExists;
26654
30938
  friend class ::WinImportHandler;
26655
30939
  friend class ::WinMacros;
26656
30940
  friend class ::CMatchSyntax;
26669
30953
  friend class ::CCExprResolve;
26670
30954
  friend class ::CExprResolve;
26671
30955
 
 
30956
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30957
 
26672
30958
public:
26673
30959
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
26674
30960
  static const char *NodeId ();
26675
30961
  const char *NodeName () const { return NodeId (); }
26676
30962
};
26677
30963
   
 
30964
 
 
30965
#line 30966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26678
30966
} // closed Puma
26679
30967
class WinIfExists;
26680
30968
class WinImportHandler;
26695
30983
class CCExprResolve;
26696
30984
class CExprResolve;
26697
30985
namespace Puma {
26698
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
 
30986
 
 
30987
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
30988
class CT_ObjDecl : public CT_Decl {
 
30989
#line 30990 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
30990
  friend class ::WinIfExists;
26699
30991
  friend class ::WinImportHandler;
26700
30992
  friend class ::WinMacros;
26701
30993
  friend class ::CMatchSyntax;
26714
31006
  friend class ::CCExprResolve;
26715
31007
  friend class ::CExprResolve;
26716
31008
 
 
31009
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31010
 
26717
31011
  CTree *sons[3]; // declspecs, declarators, colon
26718
31012
 
26719
31013
public:
26731
31025
  }
26732
31026
};
26733
31027
 
 
31028
 
 
31029
#line 31030 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26734
31030
} // closed Puma
26735
31031
class WinIfExists;
26736
31032
class WinImportHandler;
26751
31047
class CCExprResolve;
26752
31048
class CExprResolve;
26753
31049
namespace Puma {
26754
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
31050
 
 
31051
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31052
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
31053
#line 31054 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31054
  friend class ::WinIfExists;
26755
31055
  friend class ::WinImportHandler;
26756
31056
  friend class ::WinMacros;
26757
31057
  friend class ::CMatchSyntax;
26770
31070
  friend class ::CCExprResolve;
26771
31071
  friend class ::CExprResolve;
26772
31072
 
 
31073
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31074
 
26773
31075
  CTree *sons[3]; // export, param_list, decl
26774
31076
 
26775
31077
public:
26790
31092
  CTree *Declaration () const { return sons[2]; }
26791
31093
};
26792
31094
 
 
31095
 
 
31096
#line 31097 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26793
31097
} // closed Puma
26794
31098
class WinIfExists;
26795
31099
class WinImportHandler;
26810
31114
class CCExprResolve;
26811
31115
class CExprResolve;
26812
31116
namespace Puma {
26813
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
31117
 
 
31118
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31119
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
31120
#line 31121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31121
  friend class ::WinIfExists;
26814
31122
  friend class ::WinImportHandler;
26815
31123
  friend class ::WinMacros;
26816
31124
  friend class ::CMatchSyntax;
26829
31137
  friend class ::CCExprResolve;
26830
31138
  friend class ::CExprResolve;
26831
31139
 
 
31140
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31141
 
26832
31142
protected:
26833
31143
  CT_TemplateParamDecl () {}
26834
31144
  
26837
31147
  CSemObject *SemObject () const { return (CSemObject*)this; }
26838
31148
};
26839
31149
 
 
31150
 
 
31151
#line 31152 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26840
31152
} // closed Puma
26841
31153
class WinIfExists;
26842
31154
class WinImportHandler;
26857
31169
class CCExprResolve;
26858
31170
class CExprResolve;
26859
31171
namespace Puma {
26860
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
31172
 
 
31173
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31174
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
31175
#line 31176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31176
  friend class ::WinIfExists;
26861
31177
  friend class ::WinImportHandler;
26862
31178
  friend class ::WinMacros;
26863
31179
  friend class ::CMatchSyntax;
26876
31192
  friend class ::CCExprResolve;
26877
31193
  friend class ::CExprResolve;
26878
31194
 
 
31195
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31196
 
26879
31197
  CTree *sons[3]; // declspecs, declarator, init
26880
31198
 
26881
31199
public:
26896
31214
  }
26897
31215
};
26898
31216
 
 
31217
 
 
31218
#line 31219 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26899
31219
} // closed Puma
26900
31220
class WinIfExists;
26901
31221
class WinImportHandler;
26916
31236
class CCExprResolve;
26917
31237
class CExprResolve;
26918
31238
namespace Puma {
26919
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
31239
 
 
31240
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31241
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
31242
#line 31243 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31243
  friend class ::WinIfExists;
26920
31244
  friend class ::WinImportHandler;
26921
31245
  friend class ::WinMacros;
26922
31246
  friend class ::CMatchSyntax;
26935
31259
  friend class ::CCExprResolve;
26936
31260
  friend class ::CExprResolve;
26937
31261
 
 
31262
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31263
 
26938
31264
  CTree *sons[4]; // params, key, id, init
26939
31265
 
26940
31266
public:
26956
31282
  }
26957
31283
};
26958
31284
 
 
31285
 
 
31286
#line 31287 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
26959
31287
} // closed Puma
26960
31288
class WinIfExists;
26961
31289
class WinImportHandler;
26976
31304
class CCExprResolve;
26977
31305
class CExprResolve;
26978
31306
namespace Puma {
26979
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
31307
 
 
31308
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31309
class CT_EnumDef : public CT_Decl, public CSemObject {
 
31310
#line 31311 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31311
  friend class ::WinIfExists;
26980
31312
  friend class ::WinImportHandler;
26981
31313
  friend class ::WinMacros;
26982
31314
  friend class ::CMatchSyntax;
26995
31327
  friend class ::CCExprResolve;
26996
31328
  friend class ::CExprResolve;
26997
31329
 
 
31330
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31331
 
26998
31332
  CTree *sons[3]; // key, name, enumerators
26999
31333
 
27000
31334
public:
27014
31348
  CSemObject *SemObject () const { return (CSemObject*)this; }
27015
31349
};
27016
31350
 
 
31351
 
 
31352
#line 31353 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27017
31353
} // closed Puma
27018
31354
class WinIfExists;
27019
31355
class WinImportHandler;
27034
31370
class CCExprResolve;
27035
31371
class CExprResolve;
27036
31372
namespace Puma {
27037
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
31373
 
 
31374
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31375
class CT_Enumerator : public CT_Decl, public CSemObject {
 
31376
#line 31377 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31377
  friend class ::WinIfExists;
27038
31378
  friend class ::WinImportHandler;
27039
31379
  friend class ::WinMacros;
27040
31380
  friend class ::CMatchSyntax;
27053
31393
  friend class ::CCExprResolve;
27054
31394
  friend class ::CExprResolve;
27055
31395
 
 
31396
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31397
 
27056
31398
  CTree *sons[2]; // name, init
27057
31399
 
27058
31400
public:
27070
31412
  CSemObject *SemObject () const { return (CSemObject*)this; }
27071
31413
};
27072
31414
 
 
31415
 
 
31416
#line 31417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27073
31417
} // closed Puma
27074
31418
class WinIfExists;
27075
31419
class WinImportHandler;
27090
31434
class CCExprResolve;
27091
31435
class CExprResolve;
27092
31436
namespace Puma {
27093
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
31437
 
 
31438
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31439
class CT_FctDef : public CT_Decl, public CSemObject {
 
31440
#line 31441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31441
  friend class ::WinIfExists;
27094
31442
  friend class ::WinImportHandler;
27095
31443
  friend class ::WinMacros;
27096
31444
  friend class ::CMatchSyntax;
27109
31457
  friend class ::CCExprResolve;
27110
31458
  friend class ::CExprResolve;
27111
31459
 
 
31460
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31461
 
27112
31462
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
27113
31463
 
27114
31464
public:
27139
31489
  }
27140
31490
};
27141
31491
 
 
31492
 
 
31493
#line 31494 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27142
31494
} // closed Puma
27143
31495
class WinIfExists;
27144
31496
class WinImportHandler;
27159
31511
class CCExprResolve;
27160
31512
class CExprResolve;
27161
31513
namespace Puma {
27162
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
 
31514
 
 
31515
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31516
class CT_AsmDef : public CT_Decl {
 
31517
#line 31518 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31518
  friend class ::WinIfExists;
27163
31519
  friend class ::WinImportHandler;
27164
31520
  friend class ::WinMacros;
27165
31521
  friend class ::CMatchSyntax;
27178
31534
  friend class ::CCExprResolve;
27179
31535
  friend class ::CExprResolve;
27180
31536
 
 
31537
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31538
 
27181
31539
  CTree *sons[5]; // asm, open, str, close, semi_colon
27182
31540
 
27183
31541
public:
27194
31552
  }
27195
31553
};
27196
31554
 
 
31555
 
 
31556
#line 31557 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27197
31557
} // closed Puma
27198
31558
class WinIfExists;
27199
31559
class WinImportHandler;
27214
31574
class CCExprResolve;
27215
31575
class CExprResolve;
27216
31576
namespace Puma {
27217
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
31577
 
 
31578
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31579
class CT_Handler : public CT_Decl, public CSemScope {
 
31580
#line 31581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31581
  friend class ::WinIfExists;
27218
31582
  friend class ::WinImportHandler;
27219
31583
  friend class ::WinMacros;
27220
31584
  friend class ::CMatchSyntax;
27233
31597
  friend class ::CCExprResolve;
27234
31598
  friend class ::CExprResolve;
27235
31599
 
 
31600
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31601
 
27236
31602
  CTree *sons[3]; // catch, exception_decl, stmt
27237
31603
 
27238
31604
public:
27250
31616
  }
27251
31617
};
27252
31618
 
 
31619
 
 
31620
#line 31621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27253
31621
} // closed Puma
27254
31622
class WinIfExists;
27255
31623
class WinImportHandler;
27270
31638
class CCExprResolve;
27271
31639
class CExprResolve;
27272
31640
namespace Puma {
27273
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
 
31641
 
 
31642
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31643
class CT_LinkageSpec : public CT_Decl {
 
31644
#line 31645 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31645
  friend class ::WinIfExists;
27274
31646
  friend class ::WinImportHandler;
27275
31647
  friend class ::WinMacros;
27276
31648
  friend class ::CMatchSyntax;
27289
31661
  friend class ::CCExprResolve;
27290
31662
  friend class ::CExprResolve;
27291
31663
 
 
31664
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31665
 
27292
31666
  CTree *sons[5]; // extern, str, open, decls, close
27293
31667
 
27294
31668
public:
27313
31687
  }
27314
31688
};
27315
31689
 
 
31690
 
 
31691
#line 31692 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27316
31692
} // closed Puma
27317
31693
class WinIfExists;
27318
31694
class WinImportHandler;
27333
31709
class CCExprResolve;
27334
31710
class CExprResolve;
27335
31711
namespace Puma {
27336
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
31712
 
 
31713
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31714
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
31715
#line 31716 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31716
  friend class ::WinIfExists;
27337
31717
  friend class ::WinImportHandler;
27338
31718
  friend class ::WinMacros;
27339
31719
  friend class ::CMatchSyntax;
27352
31732
  friend class ::CCExprResolve;
27353
31733
  friend class ::CExprResolve;
27354
31734
 
 
31735
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31736
 
27355
31737
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
27356
31738
 
27357
31739
public:
27376
31758
  }
27377
31759
};
27378
31760
 
 
31761
 
 
31762
#line 31763 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27379
31763
} // closed Puma
27380
31764
class WinIfExists;
27381
31765
class WinImportHandler;
27396
31780
class CCExprResolve;
27397
31781
class CExprResolve;
27398
31782
namespace Puma {
27399
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
31783
 
 
31784
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31785
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
31786
#line 31787 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31787
  friend class ::WinIfExists;
27400
31788
  friend class ::WinImportHandler;
27401
31789
  friend class ::WinMacros;
27402
31790
  friend class ::CMatchSyntax;
27415
31803
  friend class ::CCExprResolve;
27416
31804
  friend class ::CExprResolve;
27417
31805
 
 
31806
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31807
 
27418
31808
public:
27419
31809
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
27420
31810
   CT_DeclList (size, 2) { AddProperties (props); }
27422
31812
  const char *NodeName () const { return NodeId (); }
27423
31813
};
27424
31814
 
 
31815
 
 
31816
#line 31817 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27425
31817
} // closed Puma
27426
31818
class WinIfExists;
27427
31819
class WinImportHandler;
27442
31834
class CCExprResolve;
27443
31835
class CExprResolve;
27444
31836
namespace Puma {
27445
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
31837
 
 
31838
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31839
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
31840
#line 31841 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31841
  friend class ::WinIfExists;
27446
31842
  friend class ::WinImportHandler;
27447
31843
  friend class ::WinMacros;
27448
31844
  friend class ::CMatchSyntax;
27461
31857
  friend class ::CCExprResolve;
27462
31858
  friend class ::CExprResolve;
27463
31859
 
 
31860
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31861
 
27464
31862
public:
27465
31863
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
27466
31864
  static const char *NodeId ();
27467
31865
  const char *NodeName () const { return NodeId (); }
27468
31866
};
27469
31867
 
 
31868
 
 
31869
#line 31870 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27470
31870
} // closed Puma
27471
31871
class WinIfExists;
27472
31872
class WinImportHandler;
27487
31887
class CCExprResolve;
27488
31888
class CExprResolve;
27489
31889
namespace Puma {
27490
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
 
31890
 
 
31891
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31892
class CT_ArgNameList : public CT_ArgDeclList {
 
31893
#line 31894 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31894
  friend class ::WinIfExists;
27491
31895
  friend class ::WinImportHandler;
27492
31896
  friend class ::WinMacros;
27493
31897
  friend class ::CMatchSyntax;
27506
31910
  friend class ::CCExprResolve;
27507
31911
  friend class ::CExprResolve;
27508
31912
 
 
31913
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31914
 
27509
31915
public:
27510
31916
  CT_ArgNameList () : CT_ArgDeclList () {}
27511
31917
  static const char *NodeId ();
27512
31918
  const char *NodeName () const { return NodeId (); }
27513
31919
};
27514
31920
 
 
31921
 
 
31922
#line 31923 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27515
31923
} // closed Puma
27516
31924
class WinIfExists;
27517
31925
class WinImportHandler;
27532
31940
class CCExprResolve;
27533
31941
class CExprResolve;
27534
31942
namespace Puma {
27535
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
31943
 
 
31944
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31945
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
31946
#line 31947 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
31947
  friend class ::WinIfExists;
27536
31948
  friend class ::WinImportHandler;
27537
31949
  friend class ::WinMacros;
27538
31950
  friend class ::CMatchSyntax;
27551
31963
  friend class ::CCExprResolve;
27552
31964
  friend class ::CExprResolve;
27553
31965
 
 
31966
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
31967
 
27554
31968
  CTree *sons[3]; // ns, name, members
27555
31969
 
27556
31970
public:
27573
31987
  }
27574
31988
};
27575
31989
 
 
31990
 
 
31991
#line 31992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27576
31992
} // closed Puma
27577
31993
class WinIfExists;
27578
31994
class WinImportHandler;
27593
32009
class CCExprResolve;
27594
32010
class CExprResolve;
27595
32011
namespace Puma {
27596
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
32012
 
 
32013
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32014
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
32015
#line 32016 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32016
  friend class ::WinIfExists;
27597
32017
  friend class ::WinImportHandler;
27598
32018
  friend class ::WinMacros;
27599
32019
  friend class ::CMatchSyntax;
27612
32032
  friend class ::CCExprResolve;
27613
32033
  friend class ::CExprResolve;
27614
32034
 
 
32035
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32036
 
27615
32037
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
27616
32038
 
27617
32039
public:
27630
32052
  }
27631
32053
};
27632
32054
 
 
32055
 
 
32056
#line 32057 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27633
32057
} // closed Puma
27634
32058
class WinIfExists;
27635
32059
class WinImportHandler;
27650
32074
class CCExprResolve;
27651
32075
class CExprResolve;
27652
32076
namespace Puma {
27653
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
 
32077
 
 
32078
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32079
class CT_UsingDirective : public CT_Decl {
 
32080
#line 32081 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32081
  friend class ::WinIfExists;
27654
32082
  friend class ::WinImportHandler;
27655
32083
  friend class ::WinMacros;
27656
32084
  friend class ::CMatchSyntax;
27669
32097
  friend class ::CCExprResolve;
27670
32098
  friend class ::CExprResolve;
27671
32099
 
 
32100
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32101
 
27672
32102
  CTree *sons[4]; // using, ns, name, semi_colon
27673
32103
 
27674
32104
public:
27691
32121
/*                                                                           */
27692
32122
/*****************************************************************************/
27693
32123
 
 
32124
 
 
32125
#line 32126 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27694
32126
} // closed Puma
27695
32127
class WinIfExists;
27696
32128
class WinImportHandler;
27711
32143
class CCExprResolve;
27712
32144
class CExprResolve;
27713
32145
namespace Puma {
27714
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
 
32146
 
 
32147
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32148
class CT_Declarator : public CTree {
 
32149
#line 32150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32150
  friend class ::WinIfExists;
27715
32151
  friend class ::WinImportHandler;
27716
32152
  friend class ::WinMacros;
27717
32153
  friend class ::CMatchSyntax;
27730
32166
  friend class ::CCExprResolve;
27731
32167
  friend class ::CExprResolve;
27732
32168
 
 
32169
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32170
 
27733
32171
protected:
27734
32172
  CT_Declarator () {}
27735
32173
 
27742
32180
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
27743
32181
};
27744
32182
 
 
32183
 
 
32184
#line 32185 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27745
32185
} // closed Puma
27746
32186
class WinIfExists;
27747
32187
class WinImportHandler;
27762
32202
class CCExprResolve;
27763
32203
class CExprResolve;
27764
32204
namespace Puma {
27765
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
32205
 
 
32206
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32207
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
32208
#line 32209 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32209
  friend class ::WinIfExists;
27766
32210
  friend class ::WinImportHandler;
27767
32211
  friend class ::WinMacros;
27768
32212
  friend class ::CMatchSyntax;
27781
32225
  friend class ::CCExprResolve;
27782
32226
  friend class ::CExprResolve;
27783
32227
 
 
32228
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32229
 
27784
32230
  CTree *sons[2]; // declarator, init
27785
32231
  CTree *obj_decl;
27786
32232
 
27803
32249
  }
27804
32250
};
27805
32251
 
 
32252
 
 
32253
#line 32254 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27806
32254
} // closed Puma
27807
32255
class WinIfExists;
27808
32256
class WinImportHandler;
27823
32271
class CCExprResolve;
27824
32272
class CExprResolve;
27825
32273
namespace Puma {
27826
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
32274
 
 
32275
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32276
class CT_BracedDeclarator : public CT_Declarator {
 
32277
#line 32278 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32278
  friend class ::WinIfExists;
27827
32279
  friend class ::WinImportHandler;
27828
32280
  friend class ::WinMacros;
27829
32281
  friend class ::CMatchSyntax;
27842
32294
  friend class ::CCExprResolve;
27843
32295
  friend class ::CExprResolve;
27844
32296
 
 
32297
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32298
 
27845
32299
  CTree *sons[4]; // open, win_specs, declarator, close
27846
32300
 
27847
32301
public:
27861
32315
  }
27862
32316
};
27863
32317
 
 
32318
 
 
32319
#line 32320 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27864
32320
} // closed Puma
27865
32321
class WinIfExists;
27866
32322
class WinImportHandler;
27881
32337
class CCExprResolve;
27882
32338
class CExprResolve;
27883
32339
namespace Puma {
27884
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
 
32340
 
 
32341
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32342
class CT_ArrayDelimiter : public CTree {
 
32343
#line 32344 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32344
  friend class ::WinIfExists;
27885
32345
  friend class ::WinImportHandler;
27886
32346
  friend class ::WinMacros;
27887
32347
  friend class ::CMatchSyntax;
27900
32360
  friend class ::CCExprResolve;
27901
32361
  friend class ::CExprResolve;
27902
32362
 
 
32363
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32364
 
27903
32365
  CTree *sons[4]; // star, static, quals, expr
27904
32366
  bool pos0;
27905
32367
 
27920
32382
  }
27921
32383
};
27922
32384
 
 
32385
 
 
32386
#line 32387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27923
32387
} // closed Puma
27924
32388
class WinIfExists;
27925
32389
class WinImportHandler;
27940
32404
class CCExprResolve;
27941
32405
class CExprResolve;
27942
32406
namespace Puma {
27943
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
 
32407
 
 
32408
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32409
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
32410
#line 32411 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32411
  friend class ::WinIfExists;
27944
32412
  friend class ::WinImportHandler;
27945
32413
  friend class ::WinMacros;
27946
32414
  friend class ::CMatchSyntax;
27959
32427
  friend class ::CCExprResolve;
27960
32428
  friend class ::CExprResolve;
27961
32429
 
 
32430
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32431
 
27962
32432
  CTree *sons[4]; // declarator, open, delim, close
27963
32433
 
27964
32434
public:
27980
32450
  CSemValue *SemValue () const { return (CSemValue*)this; }
27981
32451
};
27982
32452
 
 
32453
 
 
32454
#line 32455 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
27983
32455
} // closed Puma
27984
32456
class WinIfExists;
27985
32457
class WinImportHandler;
28000
32472
class CCExprResolve;
28001
32473
class CExprResolve;
28002
32474
namespace Puma {
28003
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
32475
 
 
32476
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32477
class CT_FctDeclarator : public CT_Declarator {
 
32478
#line 32479 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32479
  friend class ::WinIfExists;
28004
32480
  friend class ::WinImportHandler;
28005
32481
  friend class ::WinMacros;
28006
32482
  friend class ::CMatchSyntax;
28019
32495
  friend class ::CCExprResolve;
28020
32496
  friend class ::CExprResolve;
28021
32497
 
 
32498
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32499
 
28022
32500
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
28023
32501
 
28024
32502
public:
28038
32516
  }
28039
32517
};
28040
32518
 
 
32519
 
 
32520
#line 32521 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28041
32521
} // closed Puma
28042
32522
class WinIfExists;
28043
32523
class WinImportHandler;
28058
32538
class CCExprResolve;
28059
32539
class CExprResolve;
28060
32540
namespace Puma {
28061
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
32541
 
 
32542
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32543
class CT_RefDeclarator : public CT_Declarator {
 
32544
#line 32545 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32545
  friend class ::WinIfExists;
28062
32546
  friend class ::WinImportHandler;
28063
32547
  friend class ::WinMacros;
28064
32548
  friend class ::CMatchSyntax;
28077
32561
  friend class ::CCExprResolve;
28078
32562
  friend class ::CExprResolve;
28079
32563
 
 
32564
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32565
 
28080
32566
  CTree *sons[2]; // ref, declarator
28081
32567
 
28082
32568
public:
28091
32577
  }
28092
32578
};
28093
32579
 
 
32580
 
 
32581
#line 32582 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28094
32582
} // closed Puma
28095
32583
class WinIfExists;
28096
32584
class WinImportHandler;
28111
32599
class CCExprResolve;
28112
32600
class CExprResolve;
28113
32601
namespace Puma {
28114
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
32602
 
 
32603
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32604
class CT_PtrDeclarator : public CT_Declarator {
 
32605
#line 32606 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32606
  friend class ::WinIfExists;
28115
32607
  friend class ::WinImportHandler;
28116
32608
  friend class ::WinMacros;
28117
32609
  friend class ::CMatchSyntax;
28130
32622
  friend class ::CCExprResolve;
28131
32623
  friend class ::CExprResolve;
28132
32624
 
 
32625
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32626
 
28133
32627
  CTree *sons[3]; // ptr, cv_quals, declarator
28134
32628
 
28135
32629
public:
28147
32641
  }
28148
32642
};
28149
32643
 
 
32644
 
 
32645
#line 32646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28150
32646
} // closed Puma
28151
32647
class WinIfExists;
28152
32648
class WinImportHandler;
28167
32663
class CCExprResolve;
28168
32664
class CExprResolve;
28169
32665
namespace Puma {
28170
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
32666
 
 
32667
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32668
class CT_MembPtrDeclarator : public CT_Declarator {
 
32669
#line 32670 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32670
  friend class ::WinIfExists;
28171
32671
  friend class ::WinImportHandler;
28172
32672
  friend class ::WinMacros;
28173
32673
  friend class ::CMatchSyntax;
28186
32686
  friend class ::CCExprResolve;
28187
32687
  friend class ::CExprResolve;
28188
32688
 
 
32689
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32690
 
28189
32691
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
28190
32692
 
28191
32693
public:
28204
32706
  }
28205
32707
};
28206
32708
 
 
32709
 
 
32710
#line 32711 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28207
32711
} // closed Puma
28208
32712
class WinIfExists;
28209
32713
class WinImportHandler;
28224
32728
class CCExprResolve;
28225
32729
class CExprResolve;
28226
32730
namespace Puma {
28227
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
32731
 
 
32732
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32733
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
32734
#line 32735 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32735
  friend class ::WinIfExists;
28228
32736
  friend class ::WinImportHandler;
28229
32737
  friend class ::WinMacros;
28230
32738
  friend class ::CMatchSyntax;
28243
32751
  friend class ::CCExprResolve;
28244
32752
  friend class ::CExprResolve;
28245
32753
 
 
32754
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32755
 
28246
32756
  CTree *sons[3]; // declarator, colon, expr
28247
32757
 
28248
32758
public:
28268
32778
/*                                                                           */
28269
32779
/*****************************************************************************/
28270
32780
 
 
32781
 
 
32782
#line 32783 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28271
32783
} // closed Puma
28272
32784
class WinIfExists;
28273
32785
class WinImportHandler;
28288
32800
class CCExprResolve;
28289
32801
class CExprResolve;
28290
32802
namespace Puma {
28291
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
 
32803
 
 
32804
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32805
class CT_Statement : public CTree {
 
32806
#line 32807 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32807
  friend class ::WinIfExists;
28292
32808
  friend class ::WinImportHandler;
28293
32809
  friend class ::WinMacros;
28294
32810
  friend class ::CMatchSyntax;
28306
32822
  friend class ::PragmaOnce;
28307
32823
  friend class ::CCExprResolve;
28308
32824
  friend class ::CExprResolve;
 
32825
 
 
32826
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
28309
32827
 
28310
32828
protected:
28311
32829
  CT_Statement () {}
28312
32830
};
28313
32831
 
 
32832
 
 
32833
#line 32834 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28314
32834
} // closed Puma
28315
32835
class WinIfExists;
28316
32836
class WinImportHandler;
28331
32851
class CCExprResolve;
28332
32852
class CExprResolve;
28333
32853
namespace Puma {
28334
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
 
32854
 
 
32855
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32856
class CT_LabelStmt : public CT_Statement {
 
32857
#line 32858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32858
  friend class ::WinIfExists;
28335
32859
  friend class ::WinImportHandler;
28336
32860
  friend class ::WinMacros;
28337
32861
  friend class ::CMatchSyntax;
28350
32874
  friend class ::CCExprResolve;
28351
32875
  friend class ::CExprResolve;
28352
32876
 
 
32877
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32878
 
28353
32879
  CTree *sons[3]; // id, colon, stmt
28354
32880
 
28355
32881
public:
28367
32893
  }
28368
32894
};
28369
32895
 
 
32896
 
 
32897
#line 32898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28370
32898
} // closed Puma
28371
32899
class WinIfExists;
28372
32900
class WinImportHandler;
28387
32915
class CCExprResolve;
28388
32916
class CExprResolve;
28389
32917
namespace Puma {
28390
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
 
32918
 
 
32919
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32920
class CT_DefaultStmt : public CT_Statement {
 
32921
#line 32922 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32922
  friend class ::WinIfExists;
28391
32923
  friend class ::WinImportHandler;
28392
32924
  friend class ::WinMacros;
28393
32925
  friend class ::CMatchSyntax;
28406
32938
  friend class ::CCExprResolve;
28407
32939
  friend class ::CExprResolve;
28408
32940
 
 
32941
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32942
 
28409
32943
  CTree *sons[3]; // keyword, colon, stmt
28410
32944
 
28411
32945
public:
28422
32956
  }
28423
32957
};
28424
32958
 
 
32959
 
 
32960
#line 32961 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28425
32961
} // closed Puma
28426
32962
class WinIfExists;
28427
32963
class WinImportHandler;
28442
32978
class CCExprResolve;
28443
32979
class CExprResolve;
28444
32980
namespace Puma {
28445
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
 
32981
 
 
32982
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
32983
class CT_TryStmt : public CT_Statement {
 
32984
#line 32985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
32985
  friend class ::WinIfExists;
28446
32986
  friend class ::WinImportHandler;
28447
32987
  friend class ::WinMacros;
28448
32988
  friend class ::CMatchSyntax;
28461
33001
  friend class ::CCExprResolve;
28462
33002
  friend class ::CExprResolve;
28463
33003
 
 
33004
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33005
 
28464
33006
  CTree *sons[3]; // try, stmt, handlers
28465
33007
 
28466
33008
public:
28478
33020
  }
28479
33021
};
28480
33022
 
 
33023
 
 
33024
#line 33025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28481
33025
} // closed Puma
28482
33026
class WinIfExists;
28483
33027
class WinImportHandler;
28498
33042
class CCExprResolve;
28499
33043
class CExprResolve;
28500
33044
namespace Puma {
28501
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
 
33045
 
 
33046
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33047
class CT_CaseStmt : public CT_Statement {
 
33048
#line 33049 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33049
  friend class ::WinIfExists;
28502
33050
  friend class ::WinImportHandler;
28503
33051
  friend class ::WinMacros;
28504
33052
  friend class ::CMatchSyntax;
28517
33065
  friend class ::CCExprResolve;
28518
33066
  friend class ::CExprResolve;
28519
33067
 
 
33068
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33069
 
28520
33070
  CTree *sons[4]; // keyword, expr, colon, stmt
28521
33071
 
28522
33072
public:
28534
33084
  }
28535
33085
};
28536
33086
 
 
33087
 
 
33088
#line 33089 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28537
33089
} // closed Puma
28538
33090
class WinIfExists;
28539
33091
class WinImportHandler;
28554
33106
class CCExprResolve;
28555
33107
class CExprResolve;
28556
33108
namespace Puma {
28557
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
 
33109
 
 
33110
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33111
class CT_ExprStmt : public CT_Statement {
 
33112
#line 33113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33113
  friend class ::WinIfExists;
28558
33114
  friend class ::WinImportHandler;
28559
33115
  friend class ::WinMacros;
28560
33116
  friend class ::CMatchSyntax;
28573
33129
  friend class ::CCExprResolve;
28574
33130
  friend class ::CExprResolve;
28575
33131
 
 
33132
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33133
 
28576
33134
  CTree *sons[2]; // expr, semi_colon
28577
33135
 
28578
33136
public:
28587
33145
  }
28588
33146
};
28589
33147
 
 
33148
 
 
33149
#line 33150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28590
33150
} // closed Puma
28591
33151
class WinIfExists;
28592
33152
class WinImportHandler;
28607
33167
class CCExprResolve;
28608
33168
class CExprResolve;
28609
33169
namespace Puma {
28610
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
 
33170
 
 
33171
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33172
class CT_DeclStmt : public CT_Statement {
 
33173
#line 33174 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33174
  friend class ::WinIfExists;
28611
33175
  friend class ::WinImportHandler;
28612
33176
  friend class ::WinMacros;
28613
33177
  friend class ::CMatchSyntax;
28626
33190
  friend class ::CCExprResolve;
28627
33191
  friend class ::CExprResolve;
28628
33192
 
 
33193
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33194
 
28629
33195
  CTree *_decl;
28630
33196
 
28631
33197
public:
28638
33204
   { if (old_son == _decl) _decl = new_son; }
28639
33205
};
28640
33206
 
 
33207
 
 
33208
#line 33209 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28641
33209
} // closed Puma
28642
33210
class WinIfExists;
28643
33211
class WinImportHandler;
28658
33226
class CCExprResolve;
28659
33227
class CExprResolve;
28660
33228
namespace Puma {
28661
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
33229
 
 
33230
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33231
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
33232
#line 33233 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33233
  friend class ::WinIfExists;
28662
33234
  friend class ::WinImportHandler;
28663
33235
  friend class ::WinMacros;
28664
33236
  friend class ::CMatchSyntax;
28677
33249
  friend class ::CCExprResolve;
28678
33250
  friend class ::CExprResolve;
28679
33251
 
 
33252
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33253
 
28680
33254
  CTree *sons[5]; // keyword, open, cond, close, stmt
28681
33255
 
28682
33256
public:
28694
33268
  }
28695
33269
};
28696
33270
 
 
33271
 
 
33272
#line 33273 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28697
33273
} // closed Puma
28698
33274
class WinIfExists;
28699
33275
class WinImportHandler;
28714
33290
class CCExprResolve;
28715
33291
class CExprResolve;
28716
33292
namespace Puma {
28717
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
33293
 
 
33294
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33295
class CT_IfStmt : public CT_Statement, public CSemScope {
 
33296
#line 33297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33297
  friend class ::WinIfExists;
28718
33298
  friend class ::WinImportHandler;
28719
33299
  friend class ::WinMacros;
28720
33300
  friend class ::CMatchSyntax;
28733
33313
  friend class ::CCExprResolve;
28734
33314
  friend class ::CExprResolve;
28735
33315
 
 
33316
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33317
 
28736
33318
  CTree *sons[5]; // keyword, open, cond, close, stmt
28737
33319
 
28738
33320
public:
28750
33332
  }
28751
33333
};
28752
33334
 
 
33335
 
 
33336
#line 33337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28753
33337
} // closed Puma
28754
33338
class WinIfExists;
28755
33339
class WinImportHandler;
28770
33354
class CCExprResolve;
28771
33355
class CExprResolve;
28772
33356
namespace Puma {
28773
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
33357
 
 
33358
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33359
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
33360
#line 33361 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33361
  friend class ::WinIfExists;
28774
33362
  friend class ::WinImportHandler;
28775
33363
  friend class ::WinMacros;
28776
33364
  friend class ::CMatchSyntax;
28789
33377
  friend class ::CCExprResolve;
28790
33378
  friend class ::CExprResolve;
28791
33379
 
 
33380
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33381
 
28792
33382
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
28793
33383
 
28794
33384
public:
28809
33399
  }
28810
33400
};
28811
33401
 
 
33402
 
 
33403
#line 33404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28812
33404
} // closed Puma
28813
33405
class WinIfExists;
28814
33406
class WinImportHandler;
28829
33421
class CCExprResolve;
28830
33422
class CExprResolve;
28831
33423
namespace Puma {
28832
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
 
33424
 
 
33425
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33426
class CT_BreakStmt : public CT_Statement {
 
33427
#line 33428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33428
  friend class ::WinIfExists;
28833
33429
  friend class ::WinImportHandler;
28834
33430
  friend class ::WinMacros;
28835
33431
  friend class ::CMatchSyntax;
28848
33444
  friend class ::CCExprResolve;
28849
33445
  friend class ::CExprResolve;
28850
33446
 
 
33447
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33448
 
28851
33449
  CTree *sons[2]; // key, semi_colon
28852
33450
 
28853
33451
public:
28861
33459
  }
28862
33460
};
28863
33461
 
 
33462
 
 
33463
#line 33464 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28864
33464
} // closed Puma
28865
33465
class WinIfExists;
28866
33466
class WinImportHandler;
28881
33481
class CCExprResolve;
28882
33482
class CExprResolve;
28883
33483
namespace Puma {
28884
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
 
33484
 
 
33485
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33486
class CT_ContinueStmt : public CT_Statement {
 
33487
#line 33488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33488
  friend class ::WinIfExists;
28885
33489
  friend class ::WinImportHandler;
28886
33490
  friend class ::WinMacros;
28887
33491
  friend class ::CMatchSyntax;
28900
33504
  friend class ::CCExprResolve;
28901
33505
  friend class ::CExprResolve;
28902
33506
 
 
33507
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33508
 
28903
33509
  CTree *sons[2]; // key, semi_colon
28904
33510
 
28905
33511
public:
28913
33519
  }
28914
33520
};
28915
33521
 
 
33522
 
 
33523
#line 33524 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28916
33524
} // closed Puma
28917
33525
class WinIfExists;
28918
33526
class WinImportHandler;
28933
33541
class CCExprResolve;
28934
33542
class CExprResolve;
28935
33543
namespace Puma {
28936
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
 
33544
 
 
33545
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33546
class CT_GotoStmt : public CT_Statement {
 
33547
#line 33548 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33548
  friend class ::WinIfExists;
28937
33549
  friend class ::WinImportHandler;
28938
33550
  friend class ::WinMacros;
28939
33551
  friend class ::CMatchSyntax;
28952
33564
  friend class ::CCExprResolve;
28953
33565
  friend class ::CExprResolve;
28954
33566
 
 
33567
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33568
 
28955
33569
  CTree *sons[3]; // key, label, semi_colon
28956
33570
 
28957
33571
public:
28968
33582
  }
28969
33583
};
28970
33584
 
 
33585
 
 
33586
#line 33587 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
28971
33587
} // closed Puma
28972
33588
class WinIfExists;
28973
33589
class WinImportHandler;
28988
33604
class CCExprResolve;
28989
33605
class CExprResolve;
28990
33606
namespace Puma {
28991
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
 
33607
 
 
33608
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33609
class CT_ReturnStmt : public CT_Statement {
 
33610
#line 33611 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33611
  friend class ::WinIfExists;
28992
33612
  friend class ::WinImportHandler;
28993
33613
  friend class ::WinMacros;
28994
33614
  friend class ::CMatchSyntax;
29007
33627
  friend class ::CCExprResolve;
29008
33628
  friend class ::CExprResolve;
29009
33629
 
 
33630
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33631
 
29010
33632
  CTree *sons[3]; // key, expr, semi_colon
29011
33633
 
29012
33634
public:
29023
33645
  }
29024
33646
};
29025
33647
 
 
33648
 
 
33649
#line 33650 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29026
33650
} // closed Puma
29027
33651
class WinIfExists;
29028
33652
class WinImportHandler;
29043
33667
class CCExprResolve;
29044
33668
class CExprResolve;
29045
33669
namespace Puma {
29046
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
33670
 
 
33671
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33672
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
33673
#line 33674 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33674
  friend class ::WinIfExists;
29047
33675
  friend class ::WinImportHandler;
29048
33676
  friend class ::WinMacros;
29049
33677
  friend class ::CMatchSyntax;
29062
33690
  friend class ::CCExprResolve;
29063
33691
  friend class ::CExprResolve;
29064
33692
 
 
33693
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33694
 
29065
33695
  CTree *sons[5]; // key, open, cond, close, stmt
29066
33696
 
29067
33697
public:
29079
33709
  }
29080
33710
};
29081
33711
 
 
33712
 
 
33713
#line 33714 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29082
33714
} // closed Puma
29083
33715
class WinIfExists;
29084
33716
class WinImportHandler;
29099
33731
class CCExprResolve;
29100
33732
class CExprResolve;
29101
33733
namespace Puma {
29102
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
 
33734
 
 
33735
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33736
class CT_DoStmt : public CT_Statement {
 
33737
#line 33738 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33738
  friend class ::WinIfExists;
29103
33739
  friend class ::WinImportHandler;
29104
33740
  friend class ::WinMacros;
29105
33741
  friend class ::CMatchSyntax;
29118
33754
  friend class ::CCExprResolve;
29119
33755
  friend class ::CExprResolve;
29120
33756
 
 
33757
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33758
 
29121
33759
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
29122
33760
 
29123
33761
public:
29137
33775
  }
29138
33776
};
29139
33777
 
 
33778
 
 
33779
#line 33780 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29140
33780
} // closed Puma
29141
33781
class WinIfExists;
29142
33782
class WinImportHandler;
29157
33797
class CCExprResolve;
29158
33798
class CExprResolve;
29159
33799
namespace Puma {
29160
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
33800
 
 
33801
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33802
class CT_ForStmt : public CT_Statement, public CSemScope {
 
33803
#line 33804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33804
  friend class ::WinIfExists;
29161
33805
  friend class ::WinImportHandler;
29162
33806
  friend class ::WinMacros;
29163
33807
  friend class ::CMatchSyntax;
29176
33820
  friend class ::CCExprResolve;
29177
33821
  friend class ::CExprResolve;
29178
33822
 
 
33823
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33824
 
29179
33825
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
29180
33826
 
29181
33827
public:
29197
33843
  }
29198
33844
};
29199
33845
 
 
33846
 
 
33847
#line 33848 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29200
33848
} // closed Puma
29201
33849
class WinIfExists;
29202
33850
class WinImportHandler;
29217
33865
class CCExprResolve;
29218
33866
class CExprResolve;
29219
33867
namespace Puma {
29220
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
33868
 
 
33869
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33870
class CT_Condition : public CT_Decl, public CSemObject {
 
33871
#line 33872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33872
  friend class ::WinIfExists;
29221
33873
  friend class ::WinImportHandler;
29222
33874
  friend class ::WinMacros;
29223
33875
  friend class ::CMatchSyntax;
29236
33888
  friend class ::CCExprResolve;
29237
33889
  friend class ::CExprResolve;
29238
33890
 
 
33891
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33892
 
29239
33893
  CTree *sons[3]; // declspecs, declarator, init
29240
33894
 
29241
33895
public:
29262
33916
/*                                                                           */
29263
33917
/*****************************************************************************/
29264
33918
 
 
33919
 
 
33920
#line 33921 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29265
33921
} // closed Puma
29266
33922
class WinIfExists;
29267
33923
class WinImportHandler;
29282
33938
class CCExprResolve;
29283
33939
class CExprResolve;
29284
33940
namespace Puma {
29285
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
33941
 
 
33942
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33943
class CT_ClassDef : public CT_Decl, public CSemObject {
 
33944
#line 33945 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33945
  friend class ::WinIfExists;
29286
33946
  friend class ::WinImportHandler;
29287
33947
  friend class ::WinMacros;
29288
33948
  friend class ::CMatchSyntax;
29301
33961
  friend class ::CCExprResolve;
29302
33962
  friend class ::CExprResolve;
29303
33963
 
 
33964
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33965
 
29304
33966
   
 
33967
#line 33968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33968
 
29305
33969
  struct __ac_wrapper_sons {
29306
33970
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
29307
33971
    operator A& () { return _data; }
29314
33978
    operator const void* () const { return _data; }
29315
33979
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
29316
33980
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
29317
 
  } sons; // key, name, bases, members
 
33981
  } sons
 
33982
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33983
 
 
33984
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
33985
; // key, name, bases, members
29318
33986
  CTree *obj_decl;
29319
33987
 
29320
33988
public:
29321
33989
  
 
33990
#line 33991 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
33991
 
29322
33992
 
29323
33993
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
29324
33994
  typedef void Result;
29354
34024
 
29355
34025
};
29356
34026
 
29357
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
 
34027
 
 
34028
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34029
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
34030
#line 34031 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34031
{
29358
34032
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
29359
34033
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
29360
34034
this->__exec_old_C1(arg0, arg1, arg2);
29361
34035
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
29362
34036
 
29363
34037
}
29364
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
 
34038
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
34039
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34040
{
29365
34041
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
29366
34042
  }
29367
34043
  static const char *NodeId ();
29381
34057
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
29382
34058
  }
29383
34059
   private:
 
34060
 
 
34061
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
29384
34062
 CTree * _intro_members ;
29385
34063
public :
29386
34064
CTree * IntroMembers ( ) const { return _intro_members ; }
29387
34065
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
34066
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34067
 
 
34068
#line 34069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34069
 
29388
34070
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
29389
34071
  typedef void Result;
29390
34072
  typedef ::Puma::CT_ClassDef That;
29412
34094
};
29413
34095
 
29414
34096
 
 
34097
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34098
 
 
34099
#line 34100 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34100
 
29415
34101
public:
29416
34102
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
29417
34103
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
29420
34106
 
29421
34107
}
29422
34108
 
 
34109
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34110
 
 
34111
#line 34112 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34112
 
29423
34113
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
29424
34114
  typedef void Result;
29425
34115
  typedef ::Puma::CT_ClassDef That;
29443
34133
};
29444
34134
 
29445
34135
 
 
34136
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34137
 
 
34138
#line 34139 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34139
 
29446
34140
public:
29447
34141
inline ~CT_ClassDef () {
29448
34142
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
29450
34144
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
29451
34145
 
29452
34146
}
 
34147
 
 
34148
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
29453
34149
};
29454
34150
      
 
34151
 
 
34152
#line 34153 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29455
34153
} // closed Puma
29456
34154
class WinIfExists;
29457
34155
class WinImportHandler;
29472
34170
class CCExprResolve;
29473
34171
class CExprResolve;
29474
34172
namespace Puma {
29475
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
 
34173
 
 
34174
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34175
class CT_UnionDef : public CT_ClassDef {
 
34176
#line 34177 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34177
  friend class ::WinIfExists;
29476
34178
  friend class ::WinImportHandler;
29477
34179
  friend class ::WinMacros;
29478
34180
  friend class ::CMatchSyntax;
29491
34193
  friend class ::CCExprResolve;
29492
34194
  friend class ::CExprResolve;
29493
34195
 
 
34196
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34197
 
29494
34198
public:
29495
34199
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
29496
34200
  static const char *NodeId ();
29497
34201
  const char *NodeName () const { return NodeId (); }
29498
34202
};
29499
34203
      
 
34204
 
 
34205
#line 34206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29500
34206
} // closed Puma
29501
34207
class WinIfExists;
29502
34208
class WinImportHandler;
29517
34223
class CCExprResolve;
29518
34224
class CExprResolve;
29519
34225
namespace Puma {
29520
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
34226
 
 
34227
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34228
class CT_MembList : public CT_DeclList, public CSemScope {
 
34229
#line 34230 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34230
  friend class ::WinIfExists;
29521
34231
  friend class ::WinImportHandler;
29522
34232
  friend class ::WinMacros;
29523
34233
  friend class ::CMatchSyntax;
29536
34246
  friend class ::CCExprResolve;
29537
34247
  friend class ::CExprResolve;
29538
34248
 
 
34249
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34250
 
29539
34251
public:
29540
34252
  CT_MembList (int size = 10, int incr = 10) : 
29541
34253
    CT_DeclList (size, incr) {}
29543
34255
  const char *NodeName () const { return NodeId (); }
29544
34256
};
29545
34257
 
 
34258
 
 
34259
#line 34260 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29546
34260
} // closed Puma
29547
34261
class WinIfExists;
29548
34262
class WinImportHandler;
29563
34277
class CCExprResolve;
29564
34278
class CExprResolve;
29565
34279
namespace Puma {
29566
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
34280
 
 
34281
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34282
class CT_MembInitList : public CT_List, public CSemScope {
 
34283
#line 34284 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34284
  friend class ::WinIfExists;
29567
34285
  friend class ::WinImportHandler;
29568
34286
  friend class ::WinMacros;
29569
34287
  friend class ::CMatchSyntax;
29582
34300
  friend class ::CCExprResolve;
29583
34301
  friend class ::CExprResolve;
29584
34302
 
 
34303
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34304
 
29585
34305
public:
29586
34306
  CT_MembInitList (int size = 2) : 
29587
34307
    CT_List (size, 2, CT_List::OPEN) {}
29589
34309
  const char *NodeName () const { return NodeId (); }
29590
34310
};
29591
34311
 
 
34312
 
 
34313
#line 34314 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29592
34314
} // closed Puma
29593
34315
class WinIfExists;
29594
34316
class WinImportHandler;
29609
34331
class CCExprResolve;
29610
34332
class CExprResolve;
29611
34333
namespace Puma {
29612
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
34334
 
 
34335
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34336
class CT_MembInit : public CT_Expression, public CSemObject {
 
34337
#line 34338 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34338
  friend class ::WinIfExists;
29613
34339
  friend class ::WinImportHandler;
29614
34340
  friend class ::WinMacros;
29615
34341
  friend class ::CMatchSyntax;
29628
34354
  friend class ::CCExprResolve;
29629
34355
  friend class ::CExprResolve;
29630
34356
 
 
34357
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34358
 
29631
34359
  CTree *sons[2]; // name, init
29632
34360
 
29633
34361
public:
29644
34372
  CSemObject *SemObject () const { return (CSemObject*)this; }
29645
34373
   private:
29646
34374
  typedef CT_MembInit CCExprResolveExpr;
 
34375
 
 
34376
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
29647
34377
 public :
29648
34378
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
29649
34379
  typedef CT_MembInit CExprResolveExpr;
 
34380
 
 
34381
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
29650
34382
 public :
29651
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
29652
 
 
 
34383
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
34384
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34385
};
 
34386
 
 
34387
 
 
34388
#line 34389 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29653
34389
} // closed Puma
29654
34390
class WinIfExists;
29655
34391
class WinImportHandler;
29670
34406
class CCExprResolve;
29671
34407
class CExprResolve;
29672
34408
namespace Puma {
29673
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
 
34409
 
 
34410
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34411
class CT_BaseSpecList : public CT_List {
 
34412
#line 34413 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34413
  friend class ::WinIfExists;
29674
34414
  friend class ::WinImportHandler;
29675
34415
  friend class ::WinMacros;
29676
34416
  friend class ::CMatchSyntax;
29689
34429
  friend class ::CCExprResolve;
29690
34430
  friend class ::CExprResolve;
29691
34431
 
 
34432
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34433
 
29692
34434
public:
29693
34435
  CT_BaseSpecList (int size = 2) : 
29694
34436
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
29696
34438
  const char *NodeName () const { return NodeId (); }
29697
34439
};
29698
34440
 
 
34441
 
 
34442
#line 34443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29699
34443
} // closed Puma
29700
34444
class WinIfExists;
29701
34445
class WinImportHandler;
29716
34460
class CCExprResolve;
29717
34461
class CExprResolve;
29718
34462
namespace Puma {
29719
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
 
34463
 
 
34464
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34465
class CT_AccessSpec : public CTree {
 
34466
#line 34467 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34467
  friend class ::WinIfExists;
29720
34468
  friend class ::WinImportHandler;
29721
34469
  friend class ::WinMacros;
29722
34470
  friend class ::CMatchSyntax;
29735
34483
  friend class ::CCExprResolve;
29736
34484
  friend class ::CExprResolve;
29737
34485
 
 
34486
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34487
 
29738
34488
  CTree *sons[2]; // access, colon
29739
34489
 
29740
34490
public:
29749
34499
  }
29750
34500
};
29751
34501
 
 
34502
 
 
34503
#line 34504 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29752
34504
} // closed Puma
29753
34505
class WinIfExists;
29754
34506
class WinImportHandler;
29769
34521
class CCExprResolve;
29770
34522
class CExprResolve;
29771
34523
namespace Puma {
29772
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
 
34524
 
 
34525
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34526
class CT_BaseSpec : public CTree {
 
34527
#line 34528 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34528
  friend class ::WinIfExists;
29773
34529
  friend class ::WinImportHandler;
29774
34530
  friend class ::WinMacros;
29775
34531
  friend class ::CMatchSyntax;
29788
34544
  friend class ::CCExprResolve;
29789
34545
  friend class ::CExprResolve;
29790
34546
 
 
34547
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34548
 
29791
34549
  CTree *sons[3]; // virtual, access, name
29792
34550
 
29793
34551
public:
29807
34565
  }
29808
34566
};
29809
34567
 
 
34568
 
 
34569
#line 34570 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29810
34570
} // closed Puma
29811
34571
class WinIfExists;
29812
34572
class WinImportHandler;
29827
34587
class CCExprResolve;
29828
34588
class CExprResolve;
29829
34589
namespace Puma {
29830
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
 
34590
 
 
34591
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34592
class CT_AccessDecl : public CT_Decl {
 
34593
#line 34594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34594
  friend class ::WinIfExists;
29831
34595
  friend class ::WinImportHandler;
29832
34596
  friend class ::WinMacros;
29833
34597
  friend class ::CMatchSyntax;
29846
34610
  friend class ::CCExprResolve;
29847
34611
  friend class ::CExprResolve;
29848
34612
 
 
34613
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34614
 
29849
34615
  CTree *sons[2]; // name, semi_colon
29850
34616
 
29851
34617
public:
29860
34626
  }
29861
34627
};
29862
34628
 
 
34629
 
 
34630
#line 34631 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29863
34631
} // closed Puma
29864
34632
class WinIfExists;
29865
34633
class WinImportHandler;
29880
34648
class CCExprResolve;
29881
34649
class CExprResolve;
29882
34650
namespace Puma {
29883
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
 
34651
 
 
34652
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34653
class CT_UsingDecl : public CT_AccessDecl {
 
34654
#line 34655 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34655
  friend class ::WinIfExists;
29884
34656
  friend class ::WinImportHandler;
29885
34657
  friend class ::WinMacros;
29886
34658
  friend class ::CMatchSyntax;
29899
34671
  friend class ::CCExprResolve;
29900
34672
  friend class ::CExprResolve;
29901
34673
 
 
34674
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34675
 
29902
34676
  CTree *sons[2]; // using, typename
29903
34677
 
29904
34678
public:
29929
34703
/*                                                                           */
29930
34704
/*****************************************************************************/
29931
34705
 
 
34706
 
 
34707
#line 34708 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29932
34708
} // closed Puma
29933
34709
class WinIfExists;
29934
34710
class WinImportHandler;
29949
34725
class CCExprResolve;
29950
34726
class CExprResolve;
29951
34727
namespace Puma {
29952
 
class CT_Any : public CTree {  friend class ::WinIfExists;
 
34728
 
 
34729
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34730
class CT_Any : public CTree {
 
34731
#line 34732 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34732
  friend class ::WinIfExists;
29953
34733
  friend class ::WinImportHandler;
29954
34734
  friend class ::WinMacros;
29955
34735
  friend class ::CMatchSyntax;
29968
34748
  friend class ::CCExprResolve;
29969
34749
  friend class ::CExprResolve;
29970
34750
 
 
34751
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34752
 
29971
34753
  CTree *sons[2]; // keyword, extension
29972
34754
 
29973
34755
public:
29983
34765
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
29984
34766
};
29985
34767
 
 
34768
 
 
34769
#line 34770 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
29986
34770
} // closed Puma
29987
34771
class WinIfExists;
29988
34772
class WinImportHandler;
30003
34787
class CCExprResolve;
30004
34788
class CExprResolve;
30005
34789
namespace Puma {
30006
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
 
34790
 
 
34791
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34792
class CT_AnyList : public CT_Any {
 
34793
#line 34794 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34794
  friend class ::WinIfExists;
30007
34795
  friend class ::WinImportHandler;
30008
34796
  friend class ::WinMacros;
30009
34797
  friend class ::CMatchSyntax;
30022
34810
  friend class ::CCExprResolve;
30023
34811
  friend class ::CExprResolve;
30024
34812
 
 
34813
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34814
 
30025
34815
public:
30026
34816
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
30027
34817
  static const char *NodeId ();
30028
34818
  const char *NodeName () const { return NodeId (); }
30029
34819
};
30030
34820
 
 
34821
 
 
34822
#line 34823 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
30031
34823
} // closed Puma
30032
34824
class WinIfExists;
30033
34825
class WinImportHandler;
30048
34840
class CCExprResolve;
30049
34841
class CExprResolve;
30050
34842
namespace Puma {
30051
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
 
34843
 
 
34844
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34845
class CT_AnyExtension : public CTree, public CSemValue {
 
34846
#line 34847 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34847
  friend class ::WinIfExists;
30052
34848
  friend class ::WinImportHandler;
30053
34849
  friend class ::WinMacros;
30054
34850
  friend class ::CMatchSyntax;
30067
34863
  friend class ::CCExprResolve;
30068
34864
  friend class ::CExprResolve;
30069
34865
 
 
34866
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34867
 
30070
34868
  CTree *sons[5]; // open, string, comma, cond, close
30071
34869
 
30072
34870
public:
30089
34887
  CSemValue *SemValue () const { return (CSemValue*)this; }
30090
34888
};
30091
34889
 
 
34890
 
 
34891
#line 34892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
30092
34892
} // closed Puma
30093
34893
class WinIfExists;
30094
34894
class WinImportHandler;
30109
34909
class CCExprResolve;
30110
34910
class CExprResolve;
30111
34911
namespace Puma {
30112
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
 
34912
 
 
34913
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34914
class CT_AnyCondition : public CTree {
 
34915
#line 34916 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34916
  friend class ::WinIfExists;
30113
34917
  friend class ::WinImportHandler;
30114
34918
  friend class ::WinMacros;
30115
34919
  friend class ::CMatchSyntax;
30128
34932
  friend class ::CCExprResolve;
30129
34933
  friend class ::CExprResolve;
30130
34934
 
 
34935
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34936
 
30131
34937
  CTree *sons[3]; // arg1, arg2, arg3
30132
34938
 
30133
34939
public:
30147
34953
} // namespace Puma
30148
34954
 
30149
34955
#endif /* __CTree_h__ */
30150
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
34956
 
 
34957
#line 34958 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34958
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
34959
 
 
34960
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
34961
 
 
34962
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
30151
34963
namespace Puma {
30152
34964
 
30153
34965
 
30154
34966
class ErrorSink;
30155
34967
 
 
34968
 
 
34969
#line 34970 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
30156
34970
} // closed Puma
30157
34971
class WinIfExists;
30158
34972
class WinImportHandler;
30173
34987
class CCExprResolve;
30174
34988
class CExprResolve;
30175
34989
namespace Puma {
30176
 
class CSemDeclSpecs {  friend class ::WinIfExists;
 
34990
 
 
34991
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
34992
class CSemDeclSpecs {
 
34993
#line 34994 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
34994
  friend class ::WinIfExists;
30177
34995
  friend class ::WinImportHandler;
30178
34996
  friend class ::WinMacros;
30179
34997
  friend class ::CMatchSyntax;
30192
35010
  friend class ::CCExprResolve;
30193
35011
  friend class ::CExprResolve;
30194
35012
 
 
35013
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
35014
 
30195
35015
 
30196
35016
  // initialization context
30197
35017
  ErrorSink *_err;
30216
35036
 
30217
35037
  // analyses the syntax tree nodes of the decl-spec sequence. Return false
30218
35038
  // if an error was detected. 
30219
 
  public: inline bool __exec_old_analyze_seq();
 
35039
  
 
35040
#line 35041 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35041
public: inline bool __exec_old_analyze_seq();
30220
35042
private:
 
35043
 
 
35044
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
30221
35045
bool analyze_seq ();
30222
35046
  
30223
35047
  // analyzes the current declaration specifier in the sequence and set some
30224
35048
  // attributes according to the result. Returns false if the specifier type
30225
35049
  // is unknown.
30226
 
  public: inline bool __exec_old_analyze(::Puma::CTree * spec);
 
35050
  
 
35051
#line 35052 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35052
public: inline bool __exec_old_analyze(::Puma::CTree * spec);
30227
35053
private:
 
35054
 
 
35055
#line 60 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
30228
35056
bool analyze (CTree *spec);
30229
35057
 
30230
35058
  // check functions (used after analyse_seq()
30231
35059
  bool check_prim_decl_specs (bool &have_type);
30232
 
  public: inline bool __exec_old_check_complex_decl_specs(bool & have_type);
 
35060
  
 
35061
#line 35062 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35062
public: inline bool __exec_old_check_complex_decl_specs(bool & have_type);
30233
35063
private:
 
35064
 
 
35065
#line 64 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
30234
35066
bool check_complex_decl_specs (bool &have_type);  
30235
35067
  bool check_storage_class ();
30236
 
  public: inline bool __exec_old_check_signed_unsigned();
 
35068
  
 
35069
#line 35070 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35070
public: inline bool __exec_old_check_signed_unsigned();
30237
35071
private:
 
35072
 
 
35073
#line 66 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
30238
35074
bool check_signed_unsigned ();
30239
35075
  bool check_long_short (); 
30240
 
  public: inline bool __exec_old_check_finally();
 
35076
  
 
35077
#line 35078 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35078
public: inline bool __exec_old_check_finally();
30241
35079
private:
 
35080
 
 
35081
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
30242
35082
bool check_finally ();
30243
35083
  
30244
35084
  // type creation code
30245
 
  public: inline ::Puma::CTypeInfo * __exec_old_create_type();
 
35085
  
 
35086
#line 35087 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35087
public: inline ::Puma::CTypeInfo * __exec_old_create_type();
30246
35088
private:
 
35089
 
 
35090
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
30247
35091
CTypeInfo *create_type ();
30248
35092
  CTypeInfo *create_qualifiers (CTypeInfo *type);
30249
35093
  
30259
35103
  bool defUnion () const;
30260
35104
  bool defEnum () const;
30261
35105
   private:
 
35106
 
 
35107
#line 151 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30262
35108
 public :
30263
35109
int _typeofs ;
30264
 
CT_GnuTypeof * _typeof_node ;};
 
35110
CT_GnuTypeof * _typeof_node ;
 
35111
#line 85 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
35112
};
30265
35113
 
30266
35114
inline CSemDeclSpecs::~CSemDeclSpecs () 
30267
35115
 { if (_type) CTypeInfo::Destroy (_type); }
30285
35133
} // namespace Puma
30286
35134
 
30287
35135
#endif /* __c_sem_decl_specs_h__ */
30288
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
35136
 
 
35137
#line 35138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35138
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
35139
 
 
35140
#line 108 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
35141
 
 
35142
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30289
35143
namespace Puma {
30290
35144
  class CCSyntax;
30291
35145
  class CSyntax;
30296
35150
 
30297
35151
namespace Puma {
30298
35152
  
30299
 
  
30300
 
  
30301
 
  
30302
 
  
30303
 
  
30304
 
  
30305
 
  
30306
 
  
30307
 
  
 
35153
#line 40 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35154
 
 
35155
  
 
35156
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35157
 
 
35158
  
 
35159
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35160
 
 
35161
  
 
35162
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35163
 
 
35164
  
 
35165
#line 44 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35166
 
 
35167
  
 
35168
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35169
 
 
35170
  
 
35171
#line 46 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35172
 
 
35173
  
 
35174
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35175
 
 
35176
  
 
35177
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35178
 
 
35179
  
 
35180
#line 49 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35181
 
30308
35182
}
30309
35183
 
 
35184
 
 
35185
#line 35186 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
30310
35186
class WinIfExists;
30311
35187
class WinImportHandler;
30312
35188
class WinMacros;
30324
35200
class PragmaOnce;
30325
35201
class CCExprResolve;
30326
35202
class CExprResolve;
 
35203
 
 
35204
#line 52 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30327
35205
class ExtGnu {
 
35206
#line 35207 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35207
 
30328
35208
public:
30329
35209
  static ExtGnu *aspectof () {
30330
35210
    static ExtGnu __instance;
30334
35214
    return aspectof ();
30335
35215
  }
30336
35216
private:
 
35217
 
 
35218
#line 52 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35219
 
 
35220
#line 35221 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
30337
35221
  friend class ::WinIfExists;
30338
35222
  friend class ::WinImportHandler;
30339
35223
  friend class ::WinMacros;
30352
35236
  friend class ::CCExprResolve;
30353
35237
  friend class ::CExprResolve;
30354
35238
 
 
35239
#line 52 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35240
 
30355
35241
 
30356
35242
  // flags to enable/disable certain Gnu features
30357
35243
  bool extended_asm;
30363
35249
 
30364
35250
  // pointcut definitions
30365
35251
  
30366
 
  
30367
 
  
30368
 
  
30369
 
  
 
35252
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35253
 
 
35254
  
 
35255
#line 64 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35256
 
 
35257
  
 
35258
#line 65 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35259
 
 
35260
  
 
35261
#line 66 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35262
 
 
35263
  
 
35264
#line 67 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35265
 
30370
35266
 
30371
35267
  // ----------------------------------------------------
30372
35268
  // the Gnu ASM syntax
30374
35270
 
30375
35271
  // structural extensions
30376
35272
  
 
35273
#line 74 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35274
 
30377
35275
  
 
35276
#line 75 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35277
 
30378
35278
 
30379
35279
  // extended asm statement
30380
35280
  
30381
 
public: template<class JoinPoint> void __a0_after (JoinPoint *tjp, CSyntax *syntax) {
 
35281
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35282
 
 
35283
public: template<class JoinPoint> void __a0_after 
 
35284
#line 79 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35285
 
 
35286
#line 79 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35287
(JoinPoint *tjp, CSyntax *syntax)
 
35288
#line 79 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35289
 {
 
35290
#line 35291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35291
 
30382
35292
  typedef typename JoinPoint::That __JP_That;
30383
35293
  typedef typename JoinPoint::Target __JP_Target;
30384
35294
  typedef typename JoinPoint::Result __JP_Result;
30385
35295
 
 
35296
#line 79 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35297
 
30386
35298
    CTree *&result = *(CTree**)tjp->result ();
30387
35299
    if (extended_asm && !result &&
30388
 
        ((__JP_That*)syntax)->look_ahead (TOK_ASM) &&
30389
 
        ((__JP_That*)syntax)->parse (&__JP_That::gnu_asm_def)) {
30390
 
      result = ((__JP_That*)syntax)->builder().simple_decl ();
 
35300
        ((__JP_That
 
35301
#line 82 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35302
*)syntax)->look_ahead (TOK_ASM) &&
 
35303
        ((__JP_That
 
35304
#line 83 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35305
*)syntax)->parse (&__JP_That
 
35306
#line 83 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35307
::gnu_asm_def)) {
 
35308
      result = ((__JP_That
 
35309
#line 84 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35310
*)syntax)->builder().simple_decl ();
30391
35311
    }
30392
35312
  }
 
35313
#line 35314 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35314
 
30393
35315
private:
30394
35316
 
 
35317
#line 86 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35318
 
30395
35319
 
30396
35320
  // extended asm statement
30397
35321
  
30398
 
public: template<class JoinPoint> void __a1_around (JoinPoint *tjp, CSyntax *syn) {
 
35322
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35323
 
 
35324
public: template<class JoinPoint> void __a1_around 
 
35325
#line 90 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35326
 
 
35327
#line 90 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35328
(JoinPoint *tjp, CSyntax *syn)
 
35329
#line 90 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35330
 {
 
35331
#line 35332 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35332
 
30399
35333
  typedef typename JoinPoint::That __JP_That;
30400
35334
  typedef typename JoinPoint::Target __JP_Target;
30401
35335
  typedef typename JoinPoint::Result __JP_Result;
30402
35336
 
 
35337
#line 90 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35338
 
30403
35339
    if (extended_asm)
30404
 
      *tjp->result () = ((__JP_That*)syn)->gnu_asm_def ();
 
35340
      *tjp->result () = ((__JP_That
 
35341
#line 92 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35342
*)syn)->gnu_asm_def ();
30405
35343
    else
30406
35344
      tjp->proceed ();
30407
35345
  }
 
35346
#line 35347 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35347
 
30408
35348
private:
30409
35349
 
 
35350
#line 95 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35351
 
30410
35352
 
30411
35353
  // ----------------------------------------------------
30412
35354
  // the 'restrict' keyword
30414
35356
 
30415
35357
  // extended cv qualifier
30416
35358
  
30417
 
public: template<class JoinPoint> void __a2_after (JoinPoint *tjp) {
 
35359
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35360
 
 
35361
public: template<class JoinPoint> void __a2_after 
 
35362
#line 102 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35363
 
 
35364
#line 102 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35365
(JoinPoint *tjp)
 
35366
#line 102 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35367
 {
 
35368
#line 35369 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35369
 
30418
35370
  typedef typename JoinPoint::That __JP_That;
30419
35371
  typedef typename JoinPoint::Target __JP_Target;
30420
35372
  typedef typename JoinPoint::Result __JP_Result;
30421
35373
 
 
35374
#line 102 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35375
 
30422
35376
    if (extended_cv_qual)
30423
35377
      tjp->that ()->_cv_qual_1.set (TOK_RESTRICT);
30424
35378
  }
 
35379
#line 35380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35380
 
30425
35381
private:
30426
35382
 
 
35383
#line 105 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35384
 
30427
35385
 
30428
35386
  // -------------------------
30429
35387
  // Gnu statement expressions 
30431
35389
 
30432
35390
  // pointcut definitions
30433
35391
  
 
35392
#line 112 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35393
 
30434
35394
  
 
35395
#line 113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35396
 
30435
35397
 
30436
35398
  // structural extensions
30437
35399
  
30438
 
  
30439
 
  
 
35400
#line 116 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35401
 
 
35402
  
 
35403
#line 117 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35404
 
 
35405
  
 
35406
#line 118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35407
 
30440
35408
 
30441
35409
  // extended primary expression syntax
30442
35410
  
30443
 
public: template<class JoinPoint> void __a3_around (JoinPoint *tjp) {
 
35411
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35412
 
 
35413
public: template<class JoinPoint> void __a3_around 
 
35414
#line 122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35415
 
 
35416
#line 122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35417
(JoinPoint *tjp)
 
35418
#line 122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35419
 {
 
35420
#line 35421 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35421
 
30444
35422
  typedef typename JoinPoint::That __JP_That;
30445
35423
  typedef typename JoinPoint::Target __JP_Target;
30446
35424
  typedef typename JoinPoint::Result __JP_Result;
30447
35425
 
30448
 
    __JP_That *syntax = tjp->that ();
 
35426
#line 122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35427
 
 
35428
    __JP_That
 
35429
#line 123 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35430
 *syntax = tjp->that ();
30449
35431
    if (statement_exprs &&
30450
 
        ((__JP_That*)syntax)->look_ahead (TOK_OPEN_ROUND) &&
30451
 
        ((__JP_That*)syntax)->look_ahead (TOK_OPEN_CURLY, 2)) {
 
35432
        ((__JP_That
 
35433
#line 125 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35434
*)syntax)->look_ahead (TOK_OPEN_ROUND) &&
 
35435
        ((__JP_That
 
35436
#line 126 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35437
*)syntax)->look_ahead (TOK_OPEN_CURLY, 2)) {
30452
35438
      CTree *&result = *(CTree**)tjp->result ();
30453
 
      ((__JP_That*)syntax)->consume (); // skip the TOK_OPEN_ROUND
 
35439
      ((__JP_That
 
35440
#line 128 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35441
*)syntax)->consume (); // skip the TOK_OPEN_ROUND
30454
35442
      result =
30455
 
        (((__JP_That*)syntax)->parse (&__JP_That::cmpd_stmt) &&
30456
 
        ((__JP_That*)syntax)->parse (TOK_CLOSE_ROUND)) ?
30457
 
        ((__JP_That*)syntax)->builder().gnu_statement_expr () : 0;
 
35443
        (((__JP_That
 
35444
#line 130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35445
*)syntax)->parse (&__JP_That
 
35446
#line 130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35447
::cmpd_stmt) &&
 
35448
        ((__JP_That
 
35449
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35450
*)syntax)->parse (TOK_CLOSE_ROUND)) ?
 
35451
        ((__JP_That
 
35452
#line 132 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35453
*)syntax)->builder().gnu_statement_expr () : 0;
30458
35454
    }
30459
35455
    else
30460
35456
      tjp->proceed ();
30461
35457
  }
 
35458
#line 35459 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35459
 
30462
35460
private:
30463
35461
 
 
35462
#line 136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35463
 
30464
35464
 
30465
35465
  // ----------------------
30466
35466
  // TYPEOF keyword support
30468
35468
 
30469
35469
  // structural extensions
30470
35470
  
30471
 
  
30472
 
  
30473
 
  
 
35471
#line 143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35472
 
 
35473
  
 
35474
#line 144 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35475
 
 
35476
  
 
35477
#line 145 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35478
 
 
35479
  
 
35480
#line 146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35481
 
30474
35482
 
30475
35483
  // introduce new state into CSemDeclSpecs
30476
35484
  
 
35485
#line 149 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35486
 
30477
35487
  
 
35488
#line 154 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35489
 
30478
35490
 
30479
35491
  // syntax extension
30480
35492
  
30481
 
public: template<class JoinPoint> void __a4_after (JoinPoint *tjp) {
 
35493
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35494
 
 
35495
public: template<class JoinPoint> void __a4_after 
 
35496
#line 158 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35497
 
 
35498
#line 158 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35499
(JoinPoint *tjp)
 
35500
#line 158 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35501
 {
 
35502
#line 35503 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35503
 
30482
35504
  typedef typename JoinPoint::That __JP_That;
30483
35505
  typedef typename JoinPoint::Target __JP_Target;
30484
35506
  typedef typename JoinPoint::Result __JP_Result;
30485
35507
 
 
35508
#line 158 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35509
 
30486
35510
    if (typeof_keyword)
30487
35511
      tjp->that ()->_simple_type_spec_1.set (TOK_TYPEOF);
30488
35512
  }
 
35513
#line 35514 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35514
 
30489
35515
private:
30490
35516
 
 
35517
#line 161 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35518
 
30491
35519
  
30492
 
public: template<class JoinPoint> void __a5_after (JoinPoint *tjp) {
 
35520
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35521
 
 
35522
public: template<class JoinPoint> void __a5_after 
 
35523
#line 162 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35524
 
 
35525
#line 162 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35526
(JoinPoint *tjp)
 
35527
#line 162 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35528
 {
 
35529
#line 35530 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35530
 
30493
35531
  typedef typename JoinPoint::That __JP_That;
30494
35532
  typedef typename JoinPoint::Target __JP_Target;
30495
35533
  typedef typename JoinPoint::Result __JP_Result;
30496
35534
 
 
35535
#line 162 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35536
 
30497
35537
    CTree *&result = *(CTree**)tjp->result ();
30498
35538
    if (typeof_keyword && !result && tjp->that ()->look_ahead (TOK_TYPEOF) &&
30499
 
        tjp->that ()->parse (&__JP_That::gnu_typeof))
 
35539
        tjp->that ()->parse (&__JP_That
 
35540
#line 165 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35541
::gnu_typeof))
30500
35542
      result = tjp->that ()->builder ().simple_type_spec ();
30501
35543
  }
 
35544
#line 35545 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35545
 
30502
35546
private:
30503
35547
 
 
35548
#line 167 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35549
 
30504
35550
  
30505
 
public: template<class JoinPoint> void __a6_after (JoinPoint *tjp) {
 
35551
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35552
 
 
35553
public: template<class JoinPoint> void __a6_after 
 
35554
#line 168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35555
 
 
35556
#line 168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35557
(JoinPoint *tjp)
 
35558
#line 168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35559
 {
 
35560
#line 35561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35561
 
30506
35562
  typedef typename JoinPoint::That __JP_That;
30507
35563
  typedef typename JoinPoint::Target __JP_Target;
30508
35564
  typedef typename JoinPoint::Result __JP_Result;
30509
35565
 
 
35566
#line 168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35567
 
30510
35568
    CTree *&result = *(CTree**)tjp->result ();
30511
35569
    if (typeof_keyword && !result && tjp->that ()->look_ahead (TOK_TYPEOF) &&
30512
 
        tjp->that ()->parse (&__JP_That::gnu_typeof))
 
35570
        tjp->that ()->parse (&__JP_That
 
35571
#line 171 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35572
::gnu_typeof))
30513
35573
      result = tjp->that ()->semantic ().simple_type_spec ();
30514
35574
  }
 
35575
#line 35576 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35576
 
30515
35577
private:
30516
35578
 
 
35579
#line 173 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35580
 
30517
35581
 
30518
35582
  // initialize the new state before an analysis starts
30519
35583
  
30520
 
public: void __a7_before (CSemDeclSpecs &csd) {
 
35584
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35585
 
 
35586
public: void __a7_before 
 
35587
#line 177 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35588
 
 
35589
#line 177 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35590
(CSemDeclSpecs &csd)
 
35591
#line 177 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35592
 {
30521
35593
    csd._typeofs = 0;
30522
35594
    csd._typeof_node = 0;
30523
35595
  }
 
35596
#line 35597 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35597
 
30524
35598
private:
30525
35599
 
 
35600
#line 180 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35601
 
30526
35602
 
30527
35603
  // make the analysis function aware of 'typeof'
30528
35604
  
30529
 
public: template<class JoinPoint> void __a8_after (JoinPoint *tjp, CSemDeclSpecs &csd, CTree *spec) {
 
35605
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35606
 
 
35607
public: template<class JoinPoint> void __a8_after 
 
35608
#line 184 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35609
 
 
35610
#line 184 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35611
(JoinPoint *tjp, CSemDeclSpecs &csd, CTree *spec)
 
35612
#line 184 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35613
 {
 
35614
#line 35615 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35615
 
30530
35616
  typedef typename JoinPoint::That __JP_That;
30531
35617
  typedef typename JoinPoint::Target __JP_Target;
30532
35618
  typedef typename JoinPoint::Result __JP_Result;
30533
35619
 
 
35620
#line 184 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35621
 
30534
35622
    bool &result = *tjp->result ();
30535
35623
    if (!result && spec->NodeName () == CT_GnuTypeof::NodeId ()) {
30536
35624
      csd._typeofs++;      
30538
35626
      result = true;
30539
35627
    }
30540
35628
  }
 
35629
#line 35630 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35630
 
30541
35631
private:
30542
35632
 
 
35633
#line 191 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35634
 
30543
35635
  
30544
35636
  // make the check functions aware of 'typeof'
30545
35637
  
30546
 
public: template<class JoinPoint> void __a9_after (JoinPoint *tjp, CSemDeclSpecs &csd, bool &have_type) {
 
35638
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35639
 
 
35640
public: template<class JoinPoint> void __a9_after 
 
35641
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35642
 
 
35643
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35644
(JoinPoint *tjp, CSemDeclSpecs &csd, bool &have_type)
 
35645
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35646
 {
 
35647
#line 35648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35648
 
30547
35649
  typedef typename JoinPoint::That __JP_That;
30548
35650
  typedef typename JoinPoint::Target __JP_Target;
30549
35651
  typedef typename JoinPoint::Result __JP_Result;
30550
35652
 
 
35653
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35654
 
30551
35655
    bool &result = *tjp->result ();
30552
35656
    if (result && !have_type && csd._typeofs) {
30553
35657
      have_type = true;
30554
35658
      result    = true;
30555
35659
    }
30556
35660
  }
 
35661
#line 35662 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35662
 
30557
35663
private:
30558
35664
 
30559
 
  
30560
 
  
30561
 
public: template<class JoinPoint> void __a10_after (JoinPoint *tjp, CSemDeclSpecs &csd) {
 
35665
#line 202 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35666
 
 
35667
  
 
35668
  
 
35669
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35670
 
 
35671
public: template<class JoinPoint> void __a10_after 
 
35672
#line 205 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35673
 
 
35674
#line 205 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35675
(JoinPoint *tjp, CSemDeclSpecs &csd)
 
35676
#line 205 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35677
 {
 
35678
#line 35679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35679
 
30562
35680
  typedef typename JoinPoint::That __JP_That;
30563
35681
  typedef typename JoinPoint::Target __JP_Target;
30564
35682
  typedef typename JoinPoint::Result __JP_Result;
30565
35683
 
 
35684
#line 205 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35685
 
30566
35686
    bool &result = *tjp->result ();
30567
35687
    if (result) {
30568
35688
      if ((csd._prim_map[CT_PrimDeclSpec::PDS_SIGNED] || 
30575
35695
      }
30576
35696
    }
30577
35697
  }
 
35698
#line 35699 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35699
 
30578
35700
private:
30579
35701
 
 
35702
#line 217 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35703
 
30580
35704
 
30581
35705
  
30582
 
public: template<class JoinPoint> void __a11_after (JoinPoint *tjp, CSemDeclSpecs &csd) {
 
35706
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35707
 
 
35708
public: template<class JoinPoint> void __a11_after 
 
35709
#line 220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35710
 
 
35711
#line 220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35712
(JoinPoint *tjp, CSemDeclSpecs &csd)
 
35713
#line 220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35714
 {
 
35715
#line 35716 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35716
 
30583
35717
  typedef typename JoinPoint::That __JP_That;
30584
35718
  typedef typename JoinPoint::Target __JP_Target;
30585
35719
  typedef typename JoinPoint::Result __JP_Result;
30586
35720
 
 
35721
#line 220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35722
 
30587
35723
    bool &result = *tjp->result ();
30588
35724
    if (result && csd._typeofs > 0) {
30589
35725
      *csd._err << sev_error << csd._dss->token ()->location () 
30592
35728
      result = false;
30593
35729
    }
30594
35730
  }
 
35731
#line 35732 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35732
 
30595
35733
private:
30596
35734
 
 
35735
#line 228 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35736
 
30597
35737
 
30598
35738
  // make the type creation function aware of 'typeof'
30599
35739
  
30600
 
public: template<class JoinPoint> void __a12_after (JoinPoint *tjp, CSemDeclSpecs &csd) {
 
35740
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35741
 
 
35742
public: template<class JoinPoint> void __a12_after 
 
35743
#line 232 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35744
 
 
35745
#line 232 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35746
(JoinPoint *tjp, CSemDeclSpecs &csd)
 
35747
#line 232 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35748
 {
 
35749
#line 35750 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35750
 
30601
35751
  typedef typename JoinPoint::That __JP_That;
30602
35752
  typedef typename JoinPoint::Target __JP_Target;
30603
35753
  typedef typename JoinPoint::Result __JP_Result;
30604
35754
 
 
35755
#line 232 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35756
 
30605
35757
    CTypeInfo *&result = *tjp->result ();
30606
35758
    if (result->isUndefined () && csd._typeofs) {
30607
35759
      csd._typeofs--;
30610
35762
      }
30611
35763
    }
30612
35764
  }
 
35765
#line 35766 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35766
 
30613
35767
private:
30614
35768
 
 
35769
#line 240 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35770
 
30615
35771
  
30616
35772
  // ----------------------
30617
35773
  // Gnu builtin functions
30619
35775
 
30620
35776
  // structural extensions
30621
35777
  
 
35778
#line 247 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35779
 
30622
35780
 
30623
35781
  
30624
 
public: template<class JoinPoint> void __a13_after (JoinPoint *tjp) {
 
35782
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35783
 
 
35784
public: template<class JoinPoint> void __a13_after 
 
35785
#line 250 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35786
 
 
35787
#line 250 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35788
(JoinPoint *tjp)
 
35789
#line 250 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35790
 {
 
35791
#line 35792 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35792
 
30625
35793
  typedef typename JoinPoint::That __JP_That;
30626
35794
  typedef typename JoinPoint::Target __JP_Target;
30627
35795
  typedef typename JoinPoint::Result __JP_Result;
30628
35796
 
 
35797
#line 250 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35798
 
30629
35799
    if (gnu_builtins)
30630
35800
      tjp->that ()->define_gnu_builtins ();
30631
35801
  }
 
35802
#line 35803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35803
 
30632
35804
private:
30633
35805
 
 
35806
#line 253 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35807
 
30634
35808
 
30635
35809
  // ----------------------------------------------------
30636
35810
  // std hack: if a lookup in 'std' fails, look into '::'
30637
35811
  // ----------------------------------------------------
30638
35812
 
30639
35813
  
30640
 
public: template<class JoinPoint> void __a14_before (JoinPoint *tjp) {
 
35814
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35815
 
 
35816
public: template<class JoinPoint> void __a14_before 
 
35817
#line 260 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35818
 
 
35819
#line 260 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35820
(JoinPoint *tjp)
 
35821
#line 260 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35822
 {
 
35823
#line 35824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35824
 
30641
35825
  typedef typename JoinPoint::That __JP_That;
30642
35826
  typedef typename JoinPoint::Target __JP_Target;
30643
35827
  typedef typename JoinPoint::Result __JP_Result;
30644
35828
 
 
35829
#line 260 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35830
 
30645
35831
    if (std_hack) {
30646
35832
      CStructure *&scope = *(CStructure**)tjp->arg (0);
30647
35833
      bool &nested = *(bool*)tjp->arg (1);
30650
35836
        nested = true;
30651
35837
    }
30652
35838
  }
 
35839
#line 35840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35840
 
30653
35841
private:
30654
35842
 
 
35843
#line 268 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35844
 
30655
35845
  
30656
35846
  // get the configuration and check whether the GNU mode is enabled
30657
35847
  
30658
 
public: void __a15_before (Config &config) {
 
35848
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35849
 
 
35850
public: void __a15_before 
 
35851
#line 272 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35852
 
 
35853
#line 272 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35854
(Config &config)
 
35855
#line 272 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35856
 {
30659
35857
    if (config.Option ("--gnu") || config.Option ("--gnu-2.95")) {
30660
35858
      extended_asm     = true;
30661
35859
      extended_cv_qual = true;
30668
35866
    if (config.Option ("--gnu-2.95") || config.Option ("--gnu-std-hack"))
30669
35867
      std_hack = true;
30670
35868
  }
 
35869
#line 35870 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35870
 
30671
35871
private:
30672
35872
 
 
35873
#line 284 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35874
 
30673
35875
 
30674
35876
protected:
30675
35877
  ExtGnu () : extended_asm (false), extended_cv_qual (false),
30677
35879
    statement_exprs (false)
30678
35880
  {}
30679
35881
};
 
35882
#line 35883 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
35883
 
30680
35884
namespace AC {
30681
35885
  template <class JoinPoint, class Binding>
30682
35886
  inline void invoke_ExtGnu_ExtGnu_a0_after (JoinPoint *tjp) {
30755
35959
  }
30756
35960
30757
35961
 
 
35962
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35963
 
30758
35964
 
30759
35965
 
30760
35966
// ----------------------------------------------------
30763
35969
 
30764
35970
// add rules to the C Syntax
30765
35971
 
30766
 
 
30767
 
 
30768
 
 
30769
 
 
30770
 
 
30771
 
 
30772
 
 
 
35972
#line 305 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35973
 
 
35974
 
 
35975
 
 
35976
#line 315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35977
 
 
35978
 
 
35979
 
 
35980
#line 321 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35981
 
 
35982
 
 
35983
 
 
35984
#line 327 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35985
 
 
35986
 
 
35987
 
 
35988
#line 332 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30773
35989
 
30774
35990
 
30775
35991
// extend the C Builder
30776
35992
 
30777
 
 
30778
 
 
30779
 
 
30780
 
 
30781
 
 
 
35993
#line 341 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35994
 
 
35995
 
 
35996
 
 
35997
#line 355 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
35998
 
 
35999
 
 
36000
 
 
36001
#line 359 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36002
 
 
36003
 
 
36004
 
 
36005
#line 364 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30782
36006
 
30783
36007
        
30784
36008
 
 
36009
#line 368 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36010
 
30785
36011
 
30786
36012
// -------------------------
30787
36013
// Gnu statement expressions 
30789
36015
 
30790
36016
// C Builder extension
30791
36017
 
30792
 
 
 
36018
#line 378 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36019
 
 
36020
 
 
36021
 
 
36022
#line 382 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30793
36023
 
30794
36024
 
30795
36025
// C semantic extension
30796
36026
 
 
36027
#line 388 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36028
 
30797
36029
 
30798
36030
// the necessary #include "..CSemVisitor.h" in CSemExpr.cc will is inserted
30799
36031
// manually (for now)!
30800
36032
 
 
36033
#line 422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36034
 
30801
36035
 
30802
36036
// C++ semantic extension
30803
36037
 
 
36038
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36039
 
30804
36040
 
30805
36041
// the necessary #include "..CCSemVisitor.h" in CCSemExpr.cc will is inserted
30806
36042
// manually (for now)!
30807
36043
 
 
36044
#line 462 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36045
 
30808
36046
 
30809
36047
// ----------------------
30810
36048
// TYPEOF keyword support
30812
36050
 
30813
36051
// add rules to the C Syntax for the Gnu Typeof syntax
30814
36052
 
30815
 
 
 
36053
#line 472 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36054
 
 
36055
 
 
36056
 
 
36057
#line 478 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30816
36058
 
30817
36059
 
30818
36060
// add rules to the C Builder for the Gnu Typeof syntax
30819
36061
 
 
36062
#line 484 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36063
 
30820
36064
 
30821
36065
// builder extension
30822
36066
 
 
36067
#line 497 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36068
 
30823
36069
 
30824
36070
// C semantic extension
30825
36071
 
30826
 
 
 
36072
#line 503 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36073
 
 
36074
 
 
36075
 
 
36076
#line 521 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30827
36077
 
30828
36078
 
30829
36079
// C++ semantic extension
30830
36080
 
30831
 
 
 
36081
#line 527 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36082
 
 
36083
 
 
36084
 
 
36085
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30832
36086
 
30833
36087
 
30834
36088
 
30838
36092
 
30839
36093
// extend the C/C++ semantic
30840
36094
 
30841
 
 
 
36095
#line 555 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
36096
 
 
36097
 
 
36098
 
 
36099
#line 894 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
30842
36100
 
30843
36101
 
30844
36102
 
30845
36103
#endif /* __ext_gnu_h__ */
 
36104
 
 
36105
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
30846
36106
// This file is part of PUMA.
30847
36107
// Copyright (C) 1999-2003  The PUMA developer team.
30848
36108
//                                                                
30864
36124
#ifndef __ext_ac_ah__
30865
36125
#define __ext_ac_ah__
30866
36126
 
 
36127
 
 
36128
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
30867
36129
// This file is part of PUMA.
30868
36130
// Copyright (C) 1999-2003  The PUMA developer team.
30869
36131
//                                                                
30886
36148
#define __ACTree_h__
30887
36149
 
30888
36150
 
 
36151
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36152
 
 
36153
#line 36154 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36154
 
30889
36155
#ifndef __ac_fwd_ExtACTree__
30890
36156
#define __ac_fwd_ExtACTree__
30891
36157
class ExtACTree;
30897
36163
}
30898
36164
#endif
30899
36165
 
30900
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
30901
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
36166
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
36167
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
30902
36168
#endif
30903
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
30904
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
36169
 
 
36170
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36171
 
 
36172
#line 36173 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36173
 
 
36174
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36175
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
36176
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
36177
 
 
36178
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
30905
36179
// This file is part of PUMA.
30906
36180
// Copyright (C) 1999-2003  The PUMA developer team.
30907
36181
//                                                                
31083
36357
/*                                                                           */
31084
36358
/*****************************************************************************/
31085
36359
 
 
36360
 
 
36361
#line 36362 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31086
36362
} // closed Puma
31087
36363
class WinIfExists;
31088
36364
class WinImportHandler;
31103
36379
class CCExprResolve;
31104
36380
class CExprResolve;
31105
36381
namespace Puma {
31106
 
class CTree {  friend class ::WinIfExists;
 
36382
 
 
36383
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36384
class CTree {
 
36385
#line 36386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36386
  friend class ::WinIfExists;
31107
36387
  friend class ::WinImportHandler;
31108
36388
  friend class ::WinMacros;
31109
36389
  friend class ::CMatchSyntax;
31122
36402
  friend class ::CCExprResolve;
31123
36403
  friend class ::CExprResolve;
31124
36404
 
 
36405
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36406
 
31125
36407
public:
31126
36408
  /*DEBUG*/static int alloc;
31127
36409
  /*DEBUG*/static int release;
31157
36439
  virtual CT_Declarator *IsDeclarator () { return 0; }
31158
36440
   private:
31159
36441
  typedef CTree CCExprResolveCTree;
 
36442
 
 
36443
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
31160
36444
 public :
31161
36445
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
31162
36446
  typedef CTree CExprResolveCTree;
 
36447
 
 
36448
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
31163
36449
 public :
31164
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
31165
 
 
 
36450
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
36451
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36452
};
 
36453
 
 
36454
 
 
36455
#line 36456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31166
36456
} // closed Puma
31167
36457
class WinIfExists;
31168
36458
class WinImportHandler;
31183
36473
class CCExprResolve;
31184
36474
class CExprResolve;
31185
36475
namespace Puma {
31186
 
class CT_Error : public CTree {  friend class ::WinIfExists;
 
36476
 
 
36477
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36478
class CT_Error : public CTree {
 
36479
#line 36480 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36480
  friend class ::WinIfExists;
31187
36481
  friend class ::WinImportHandler;
31188
36482
  friend class ::WinMacros;
31189
36483
  friend class ::CMatchSyntax;
31202
36496
  friend class ::CCExprResolve;
31203
36497
  friend class ::CExprResolve;
31204
36498
 
 
36499
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36500
 
31205
36501
public:
31206
36502
  static const char *NodeId ();
31207
36503
  const char *NodeName () const { return NodeId (); }
31208
36504
  int Sons () const { return 0; }
31209
36505
};
31210
36506
 
 
36507
 
 
36508
#line 36509 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31211
36509
} // closed Puma
31212
36510
class WinIfExists;
31213
36511
class WinImportHandler;
31228
36526
class CCExprResolve;
31229
36527
class CExprResolve;
31230
36528
namespace Puma {
31231
 
class CT_Token : public CTree {  friend class ::WinIfExists;
 
36529
 
 
36530
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36531
class CT_Token : public CTree {
 
36532
#line 36533 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36533
  friend class ::WinIfExists;
31232
36534
  friend class ::WinImportHandler;
31233
36535
  friend class ::WinMacros;
31234
36536
  friend class ::CMatchSyntax;
31247
36549
  friend class ::CCExprResolve;
31248
36550
  friend class ::CExprResolve;
31249
36551
 
 
36552
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36553
 
31250
36554
  Token *_token;
31251
36555
  unsigned long int _number;
31252
36556
  
31273
36577
/*                                                                           */
31274
36578
/*****************************************************************************/
31275
36579
 
 
36580
 
 
36581
#line 36582 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31276
36582
} // closed Puma
31277
36583
class WinIfExists;
31278
36584
class WinImportHandler;
31293
36599
class CCExprResolve;
31294
36600
class CExprResolve;
31295
36601
namespace Puma {
31296
 
class CT_List : public CTree {  friend class ::WinIfExists;
 
36602
 
 
36603
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36604
class CT_List : public CTree {
 
36605
#line 36606 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36606
  friend class ::WinIfExists;
31297
36607
  friend class ::WinImportHandler;
31298
36608
  friend class ::WinMacros;
31299
36609
  friend class ::CMatchSyntax;
31312
36622
  friend class ::CCExprResolve;
31313
36623
  friend class ::CExprResolve;
31314
36624
 
 
36625
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36626
 
31315
36627
  Array<CTree*> _sons;
31316
36628
  int _properties;
31317
36629
 
31350
36662
   { if (idx < Sons ()) _sons.remove (idx); }
31351
36663
};
31352
36664
 
 
36665
 
 
36666
#line 36667 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31353
36667
} // closed Puma
31354
36668
class WinIfExists;
31355
36669
class WinImportHandler;
31370
36684
class CCExprResolve;
31371
36685
class CExprResolve;
31372
36686
namespace Puma {
31373
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
36687
 
 
36688
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36689
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
36690
#line 36691 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36691
  friend class ::WinIfExists;
31374
36692
  friend class ::WinImportHandler;
31375
36693
  friend class ::WinMacros;
31376
36694
  friend class ::CMatchSyntax;
31389
36707
  friend class ::CCExprResolve;
31390
36708
  friend class ::CExprResolve;
31391
36709
 
 
36710
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36711
 
31392
36712
public:
31393
36713
  CT_ExprList () { AddProperties (SEPARATORS); }
31394
36714
  static const char *NodeId ();
31400
36720
  CSemObject *SemObject () const { return (CSemObject*)this; }
31401
36721
};
31402
36722
 
 
36723
 
 
36724
#line 36725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31403
36725
} // closed Puma
31404
36726
class WinIfExists;
31405
36727
class WinImportHandler;
31420
36742
class CCExprResolve;
31421
36743
class CExprResolve;
31422
36744
namespace Puma {
31423
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
 
36745
 
 
36746
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36747
class CT_DeclaratorList : public CT_List {
 
36748
#line 36749 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36749
  friend class ::WinIfExists;
31424
36750
  friend class ::WinImportHandler;
31425
36751
  friend class ::WinMacros;
31426
36752
  friend class ::CMatchSyntax;
31439
36765
  friend class ::CCExprResolve;
31440
36766
  friend class ::CExprResolve;
31441
36767
 
 
36768
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36769
 
31442
36770
public:
31443
36771
  static const char *NodeId ();
31444
36772
  const char *NodeName () const { return NodeId (); }
31445
36773
};
31446
36774
 
 
36775
 
 
36776
#line 36777 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31447
36777
} // closed Puma
31448
36778
class WinIfExists;
31449
36779
class WinImportHandler;
31464
36794
class CCExprResolve;
31465
36795
class CExprResolve;
31466
36796
namespace Puma {
31467
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
 
36797
 
 
36798
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36799
class CT_EnumeratorList : public CT_List {
 
36800
#line 36801 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36801
  friend class ::WinIfExists;
31468
36802
  friend class ::WinImportHandler;
31469
36803
  friend class ::WinMacros;
31470
36804
  friend class ::CMatchSyntax;
31483
36817
  friend class ::CCExprResolve;
31484
36818
  friend class ::CExprResolve;
31485
36819
 
 
36820
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36821
 
31486
36822
public:
31487
36823
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
31488
36824
  static const char *NodeId ();
31489
36825
  const char *NodeName () const { return NodeId (); }
31490
36826
};
31491
36827
   
 
36828
 
 
36829
#line 36830 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31492
36830
} // closed Puma
31493
36831
class WinIfExists;
31494
36832
class WinImportHandler;
31509
36847
class CCExprResolve;
31510
36848
class CExprResolve;
31511
36849
namespace Puma {
31512
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
 
36850
 
 
36851
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36852
class CT_DeclList : public CT_List {
 
36853
#line 36854 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36854
  friend class ::WinIfExists;
31513
36855
  friend class ::WinImportHandler;
31514
36856
  friend class ::WinMacros;
31515
36857
  friend class ::CMatchSyntax;
31528
36870
  friend class ::CCExprResolve;
31529
36871
  friend class ::CExprResolve;
31530
36872
 
 
36873
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36874
 
31531
36875
public:
31532
36876
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
31533
36877
  static const char *NodeId ();
31535
36879
  void Linkage (CT_LinkageSpec *l);
31536
36880
};
31537
36881
 
 
36882
 
 
36883
#line 36884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31538
36884
} // closed Puma
31539
36885
class WinIfExists;
31540
36886
class WinImportHandler;
31555
36901
class CCExprResolve;
31556
36902
class CExprResolve;
31557
36903
namespace Puma {
31558
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
 
36904
 
 
36905
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36906
class CT_DeclSpecSeq : public CT_List {
 
36907
#line 36908 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36908
  friend class ::WinIfExists;
31559
36909
  friend class ::WinImportHandler;
31560
36910
  friend class ::WinMacros;
31561
36911
  friend class ::CMatchSyntax;
31574
36924
  friend class ::CCExprResolve;
31575
36925
  friend class ::CExprResolve;
31576
36926
 
 
36927
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36928
 
31577
36929
public:
31578
36930
  static const char *NodeId ();
31579
36931
  const char *NodeName () const { return NodeId (); }
31580
36932
};
31581
36933
 
 
36934
 
 
36935
#line 36936 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31582
36936
} // closed Puma
31583
36937
class WinIfExists;
31584
36938
class WinImportHandler;
31599
36953
class CCExprResolve;
31600
36954
class CExprResolve;
31601
36955
namespace Puma {
31602
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
36956
 
 
36957
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36958
class CT_CmpdStmt : public CT_List, public CSemScope {
 
36959
#line 36960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
36960
  friend class ::WinIfExists;
31603
36961
  friend class ::WinImportHandler;
31604
36962
  friend class ::WinMacros;
31605
36963
  friend class ::CMatchSyntax;
31618
36976
  friend class ::CCExprResolve;
31619
36977
  friend class ::CExprResolve;
31620
36978
 
 
36979
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
36980
 
31621
36981
public:
31622
36982
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
31623
36983
  static const char *NodeId ();
31624
36984
  const char *NodeName () const { return NodeId (); }
31625
36985
};
31626
36986
 
 
36987
 
 
36988
#line 36989 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31627
36989
} // closed Puma
31628
36990
class WinIfExists;
31629
36991
class WinImportHandler;
31644
37006
class CCExprResolve;
31645
37007
class CExprResolve;
31646
37008
namespace Puma {
31647
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
 
37009
 
 
37010
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37011
class CT_HandlerSeq : public CT_List {
 
37012
#line 37013 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37013
  friend class ::WinIfExists;
31648
37014
  friend class ::WinImportHandler;
31649
37015
  friend class ::WinMacros;
31650
37016
  friend class ::CMatchSyntax;
31663
37029
  friend class ::CCExprResolve;
31664
37030
  friend class ::CExprResolve;
31665
37031
 
 
37032
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37033
 
31666
37034
public:
31667
37035
  static const char *NodeId ();
31668
37036
  const char *NodeName () const { return NodeId (); }
31669
37037
};
31670
37038
 
 
37039
 
 
37040
#line 37041 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31671
37041
} // closed Puma
31672
37042
class WinIfExists;
31673
37043
class WinImportHandler;
31688
37058
class CCExprResolve;
31689
37059
class CExprResolve;
31690
37060
namespace Puma {
31691
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
37061
 
 
37062
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37063
class CT_TemplateParamList : public CT_List, public CSemScope {
 
37064
#line 37065 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37065
  friend class ::WinIfExists;
31692
37066
  friend class ::WinImportHandler;
31693
37067
  friend class ::WinMacros;
31694
37068
  friend class ::CMatchSyntax;
31707
37081
  friend class ::CCExprResolve;
31708
37082
  friend class ::CExprResolve;
31709
37083
 
 
37084
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37085
 
31710
37086
public:
31711
37087
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
31712
37088
  static const char *NodeId ();
31713
37089
  const char *NodeName () const { return NodeId (); }
31714
37090
};
31715
37091
 
 
37092
 
 
37093
#line 37094 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31716
37094
} // closed Puma
31717
37095
class WinIfExists;
31718
37096
class WinImportHandler;
31733
37111
class CCExprResolve;
31734
37112
class CExprResolve;
31735
37113
namespace Puma {
31736
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
 
37114
 
 
37115
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37116
class CT_TemplateArgList : public CT_List {
 
37117
#line 37118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37118
  friend class ::WinIfExists;
31737
37119
  friend class ::WinImportHandler;
31738
37120
  friend class ::WinMacros;
31739
37121
  friend class ::CMatchSyntax;
31752
37134
  friend class ::CCExprResolve;
31753
37135
  friend class ::CExprResolve;
31754
37136
 
 
37137
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37138
 
31755
37139
public:
31756
37140
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
31757
37141
  static const char *NodeId ();
31764
37148
/*                                                                           */
31765
37149
/*****************************************************************************/
31766
37150
 
 
37151
 
 
37152
#line 37153 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31767
37153
} // closed Puma
31768
37154
class WinIfExists;
31769
37155
class WinImportHandler;
31784
37170
class CCExprResolve;
31785
37171
class CExprResolve;
31786
37172
namespace Puma {
31787
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
 
37173
 
 
37174
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37175
class CT_Expression : public CTree, public CSemValue {
 
37176
#line 37177 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37177
  friend class ::WinIfExists;
31788
37178
  friend class ::WinImportHandler;
31789
37179
  friend class ::WinMacros;
31790
37180
  friend class ::CMatchSyntax;
31803
37193
  friend class ::CCExprResolve;
31804
37194
  friend class ::CExprResolve;
31805
37195
 
 
37196
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37197
 
31806
37198
protected:
31807
37199
  CT_Expression () {}
31808
37200
 
31814
37206
  CSemValue *SemValue () const { return (CSemValue*)this; }
31815
37207
   private:
31816
37208
  typedef CT_Expression CCExprResolveExpr;
 
37209
 
 
37210
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
31817
37211
 public :
31818
37212
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
31819
37213
  typedef CT_Expression CExprResolveExpr;
 
37214
 
 
37215
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
31820
37216
 public :
31821
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
31822
 
 
 
37217
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37218
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37219
};
 
37220
 
 
37221
 
 
37222
#line 37223 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31823
37223
} // closed Puma
31824
37224
class WinIfExists;
31825
37225
class WinImportHandler;
31840
37240
class CCExprResolve;
31841
37241
class CExprResolve;
31842
37242
namespace Puma {
31843
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
37243
 
 
37244
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37245
class CT_String : public CT_List, public CSemValue {
 
37246
#line 37247 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37247
  friend class ::WinIfExists;
31844
37248
  friend class ::WinImportHandler;
31845
37249
  friend class ::WinMacros;
31846
37250
  friend class ::CMatchSyntax;
31859
37263
  friend class ::CCExprResolve;
31860
37264
  friend class ::CExprResolve;
31861
37265
 
 
37266
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37267
 
31862
37268
public:
31863
37269
  CT_String (int size) : CT_List (size, 1) {}
31864
37270
  static const char *NodeId ();
31869
37275
  CSemValue *SemValue () const { return (CSemValue*)this; }
31870
37276
   private:
31871
37277
  typedef CT_String CCExprResolveExpr;
 
37278
 
 
37279
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
31872
37280
 public :
31873
37281
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
31874
37282
  typedef CT_String CExprResolveExpr;
 
37283
 
 
37284
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
31875
37285
 public :
31876
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
31877
 
 
 
37286
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37287
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37288
};
 
37289
 
 
37290
 
 
37291
#line 37292 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31878
37292
} // closed Puma
31879
37293
class WinIfExists;
31880
37294
class WinImportHandler;
31895
37309
class CCExprResolve;
31896
37310
class CExprResolve;
31897
37311
namespace Puma {
31898
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
 
37312
 
 
37313
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37314
class CT_WideString : public CT_String {
 
37315
#line 37316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37316
  friend class ::WinIfExists;
31899
37317
  friend class ::WinImportHandler;
31900
37318
  friend class ::WinMacros;
31901
37319
  friend class ::CMatchSyntax;
31914
37332
  friend class ::CCExprResolve;
31915
37333
  friend class ::CExprResolve;
31916
37334
 
 
37335
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37336
 
31917
37337
public:
31918
37338
  CT_WideString (int size) : CT_String (size) {}
31919
37339
  static const char *NodeId ();
31920
37340
  const char *NodeName () const { return NodeId (); }
31921
37341
   private:
31922
37342
  typedef CT_WideString CCExprResolveExpr;
 
37343
 
 
37344
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
31923
37345
 public :
31924
37346
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
31925
37347
  typedef CT_WideString CExprResolveExpr;
 
37348
 
 
37349
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
31926
37350
 public :
31927
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
31928
 
 
 
37351
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37352
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37353
};
 
37354
 
 
37355
 
 
37356
#line 37357 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31929
37357
} // closed Puma
31930
37358
class WinIfExists;
31931
37359
class WinImportHandler;
31946
37374
class CCExprResolve;
31947
37375
class CExprResolve;
31948
37376
namespace Puma {
31949
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
 
37377
 
 
37378
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37379
class CT_Integer : public CT_Expression {
 
37380
#line 37381 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37381
  friend class ::WinIfExists;
31950
37382
  friend class ::WinImportHandler;
31951
37383
  friend class ::WinMacros;
31952
37384
  friend class ::CMatchSyntax;
31965
37397
  friend class ::CCExprResolve;
31966
37398
  friend class ::CExprResolve;
31967
37399
 
 
37400
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37401
 
31968
37402
  CTree *_value;  // CT_Token
31969
37403
 
31970
37404
public:
31977
37411
   { if (old_son == _value) _value = new_son; }
31978
37412
   private:
31979
37413
  typedef CT_Integer CCExprResolveExpr;
 
37414
 
 
37415
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
31980
37416
 public :
31981
37417
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
31982
37418
  typedef CT_Integer CExprResolveExpr;
 
37419
 
 
37420
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
31983
37421
 public :
31984
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
31985
 
 
 
37422
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37423
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37424
};
 
37425
 
 
37426
 
 
37427
#line 37428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
31986
37428
} // closed Puma
31987
37429
class WinIfExists;
31988
37430
class WinImportHandler;
32003
37445
class CCExprResolve;
32004
37446
class CExprResolve;
32005
37447
namespace Puma {
32006
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
 
37448
 
 
37449
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37450
class CT_Character : public CT_Expression {
 
37451
#line 37452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37452
  friend class ::WinIfExists;
32007
37453
  friend class ::WinImportHandler;
32008
37454
  friend class ::WinMacros;
32009
37455
  friend class ::CMatchSyntax;
32022
37468
  friend class ::CCExprResolve;
32023
37469
  friend class ::CExprResolve;
32024
37470
 
 
37471
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37472
 
32025
37473
  CTree *_value;  // CT_Token
32026
37474
 
32027
37475
public:
32034
37482
   { if (old_son == _value) _value = new_son; }
32035
37483
   private:
32036
37484
  typedef CT_Character CCExprResolveExpr;
 
37485
 
 
37486
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32037
37487
 public :
32038
37488
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32039
37489
  typedef CT_Character CExprResolveExpr;
 
37490
 
 
37491
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32040
37492
 public :
32041
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32042
 
 
 
37493
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37494
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37495
};
 
37496
 
 
37497
 
 
37498
#line 37499 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32043
37499
} // closed Puma
32044
37500
class WinIfExists;
32045
37501
class WinImportHandler;
32060
37516
class CCExprResolve;
32061
37517
class CExprResolve;
32062
37518
namespace Puma {
32063
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
 
37519
 
 
37520
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37521
class CT_WideCharacter : public CT_Character {
 
37522
#line 37523 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37523
  friend class ::WinIfExists;
32064
37524
  friend class ::WinImportHandler;
32065
37525
  friend class ::WinMacros;
32066
37526
  friend class ::CMatchSyntax;
32079
37539
  friend class ::CCExprResolve;
32080
37540
  friend class ::CExprResolve;
32081
37541
 
 
37542
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37543
 
32082
37544
  CTree *_value;  // CT_Token
32083
37545
 
32084
37546
public:
32089
37551
   { if (old_son == _value) _value = new_son; }
32090
37552
   private:
32091
37553
  typedef CT_WideCharacter CCExprResolveExpr;
 
37554
 
 
37555
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32092
37556
 public :
32093
37557
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32094
37558
  typedef CT_WideCharacter CExprResolveExpr;
 
37559
 
 
37560
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32095
37561
 public :
32096
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32097
 
 
 
37562
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37563
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37564
};
 
37565
 
 
37566
 
 
37567
#line 37568 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32098
37568
} // closed Puma
32099
37569
class WinIfExists;
32100
37570
class WinImportHandler;
32115
37585
class CCExprResolve;
32116
37586
class CExprResolve;
32117
37587
namespace Puma {
32118
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
 
37588
 
 
37589
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37590
class CT_Float : public CT_Expression {
 
37591
#line 37592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37592
  friend class ::WinIfExists;
32119
37593
  friend class ::WinImportHandler;
32120
37594
  friend class ::WinMacros;
32121
37595
  friend class ::CMatchSyntax;
32134
37608
  friend class ::CCExprResolve;
32135
37609
  friend class ::CExprResolve;
32136
37610
 
 
37611
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37612
 
32137
37613
  CTree *_value;  // CT_Token
32138
37614
 
32139
37615
public:
32146
37622
   { if (old_son == _value) _value = new_son; }
32147
37623
   private:
32148
37624
  typedef CT_Float CCExprResolveExpr;
 
37625
 
 
37626
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32149
37627
 public :
32150
37628
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32151
37629
  typedef CT_Float CExprResolveExpr;
 
37630
 
 
37631
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32152
37632
 public :
32153
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32154
 
 
 
37633
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37634
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37635
};
 
37636
 
 
37637
 
 
37638
#line 37639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32155
37639
} // closed Puma
32156
37640
class WinIfExists;
32157
37641
class WinImportHandler;
32172
37656
class CCExprResolve;
32173
37657
class CExprResolve;
32174
37658
namespace Puma {
32175
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
 
37659
 
 
37660
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37661
class CT_Bool : public CT_Expression {
 
37662
#line 37663 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37663
  friend class ::WinIfExists;
32176
37664
  friend class ::WinImportHandler;
32177
37665
  friend class ::WinMacros;
32178
37666
  friend class ::CMatchSyntax;
32191
37679
  friend class ::CCExprResolve;
32192
37680
  friend class ::CExprResolve;
32193
37681
 
 
37682
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37683
 
32194
37684
  CTree *_value;  // CT_Token
32195
37685
 
32196
37686
public:
32203
37693
   { if (old_son == _value) _value = new_son; }
32204
37694
   private:
32205
37695
  typedef CT_Bool CCExprResolveExpr;
 
37696
 
 
37697
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32206
37698
 public :
32207
37699
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32208
37700
  typedef CT_Bool CExprResolveExpr;
 
37701
 
 
37702
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32209
37703
 public :
32210
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32211
 
 
 
37704
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37705
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37706
};
 
37707
 
 
37708
 
 
37709
#line 37710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32212
37710
} // closed Puma
32213
37711
class WinIfExists;
32214
37712
class WinImportHandler;
32229
37727
class CCExprResolve;
32230
37728
class CExprResolve;
32231
37729
namespace Puma {
32232
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
 
37730
 
 
37731
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37732
class CT_BracedExpr : public CT_Expression {
 
37733
#line 37734 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37734
  friend class ::WinIfExists;
32233
37735
  friend class ::WinImportHandler;
32234
37736
  friend class ::WinMacros;
32235
37737
  friend class ::CMatchSyntax;
32248
37750
  friend class ::CCExprResolve;
32249
37751
  friend class ::CExprResolve;
32250
37752
 
 
37753
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37754
 
32251
37755
  CTree *sons[3]; // open, expr, close
32252
37756
 
32253
37757
public:
32267
37771
  }
32268
37772
   private:
32269
37773
  typedef CT_BracedExpr CCExprResolveExpr;
 
37774
 
 
37775
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32270
37776
 public :
32271
37777
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32272
37778
  typedef CT_BracedExpr CExprResolveExpr;
 
37779
 
 
37780
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32273
37781
 public :
32274
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32275
 
 
 
37782
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37783
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37784
};
 
37785
 
 
37786
 
 
37787
#line 37788 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32276
37788
} // closed Puma
32277
37789
class WinIfExists;
32278
37790
class WinImportHandler;
32293
37805
class CCExprResolve;
32294
37806
class CExprResolve;
32295
37807
namespace Puma {
 
37808
 
 
37809
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
32296
37810
class CT_SimpleName : public CT_List, public Printable, 
32297
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
37811
                      public CSemValue, public CSemObject {
 
37812
#line 37813 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37813
  friend class ::WinIfExists;
32298
37814
  friend class ::WinImportHandler;
32299
37815
  friend class ::WinMacros;
32300
37816
  friend class ::CMatchSyntax;
32313
37829
  friend class ::CCExprResolve;
32314
37830
  friend class ::CExprResolve;
32315
37831
 
 
37832
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37833
 
32316
37834
protected:
32317
37835
  CT_SimpleName (int size) : CT_List (size, 1) {}
32318
37836
  CT_SimpleName (int size, int properties) : 
32337
37855
  virtual CT_SimpleName *IsSimpleName () { return this; }  
32338
37856
   private:
32339
37857
  typedef CT_SimpleName CCExprResolveExpr;
 
37858
 
 
37859
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32340
37860
 public :
32341
37861
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32342
37862
  typedef CT_SimpleName CExprResolveExpr;
 
37863
 
 
37864
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32343
37865
 public :
32344
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32345
 
 
 
37866
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37867
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37868
};
 
37869
 
 
37870
 
 
37871
#line 37872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32346
37872
} // closed Puma
32347
37873
class WinIfExists;
32348
37874
class WinImportHandler;
32363
37889
class CCExprResolve;
32364
37890
class CExprResolve;
32365
37891
namespace Puma {
32366
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
 
37892
 
 
37893
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37894
class CT_SpecialName : public CT_SimpleName {
 
37895
#line 37896 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37896
  friend class ::WinIfExists;
32367
37897
  friend class ::WinImportHandler;
32368
37898
  friend class ::WinMacros;
32369
37899
  friend class ::CMatchSyntax;
32382
37912
  friend class ::CCExprResolve;
32383
37913
  friend class ::CExprResolve;
32384
37914
 
 
37915
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37916
 
32385
37917
  char *_name;
32386
37918
  
32387
37919
protected:
32401
37933
  void  operator delete (void *);
32402
37934
   private:
32403
37935
  typedef CT_SpecialName CCExprResolveExpr;
 
37936
 
 
37937
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32404
37938
 public :
32405
37939
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32406
37940
  typedef CT_SpecialName CExprResolveExpr;
 
37941
 
 
37942
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32407
37943
 public :
32408
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32409
 
 
 
37944
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
37945
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37946
};
 
37947
 
 
37948
 
 
37949
#line 37950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32410
37950
} // closed Puma
32411
37951
class WinIfExists;
32412
37952
class WinImportHandler;
32427
37967
class CCExprResolve;
32428
37968
class CExprResolve;
32429
37969
namespace Puma {
32430
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
 
37970
 
 
37971
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37972
class CT_PrivateName : public CT_SpecialName {
 
37973
#line 37974 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
37974
  friend class ::WinIfExists;
32431
37975
  friend class ::WinImportHandler;
32432
37976
  friend class ::WinMacros;
32433
37977
  friend class ::CMatchSyntax;
32446
37990
  friend class ::CCExprResolve;
32447
37991
  friend class ::CExprResolve;
32448
37992
 
 
37993
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
37994
 
32449
37995
public:
32450
37996
  CT_PrivateName (const char *n) { Name (n); }
32451
37997
  static const char *NodeId ();
32457
38003
  void  operator delete (void *);
32458
38004
   private:
32459
38005
  typedef CT_PrivateName CCExprResolveExpr;
 
38006
 
 
38007
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32460
38008
 public :
32461
38009
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32462
38010
  typedef CT_PrivateName CExprResolveExpr;
 
38011
 
 
38012
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32463
38013
 public :
32464
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32465
 
 
 
38014
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38015
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38016
};
 
38017
 
 
38018
 
 
38019
#line 38020 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32466
38020
} // closed Puma
32467
38021
class WinIfExists;
32468
38022
class WinImportHandler;
32483
38037
class CCExprResolve;
32484
38038
class CExprResolve;
32485
38039
namespace Puma {
32486
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
 
38040
 
 
38041
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38042
class CT_DestructorName : public CT_SpecialName {
 
38043
#line 38044 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38044
  friend class ::WinIfExists;
32487
38045
  friend class ::WinImportHandler;
32488
38046
  friend class ::WinMacros;
32489
38047
  friend class ::CMatchSyntax;
32502
38060
  friend class ::CCExprResolve;
32503
38061
  friend class ::CExprResolve;
32504
38062
 
 
38063
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38064
 
32505
38065
public:
32506
38066
  CT_DestructorName (CTree *, CTree *);
32507
38067
  static const char *NodeId ();
32511
38071
  void  operator delete (void *);
32512
38072
   private:
32513
38073
  typedef CT_DestructorName CCExprResolveExpr;
 
38074
 
 
38075
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32514
38076
 public :
32515
38077
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32516
38078
  typedef CT_DestructorName CExprResolveExpr;
 
38079
 
 
38080
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32517
38081
 public :
32518
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32519
 
 
 
38082
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38083
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38084
};
 
38085
 
 
38086
 
 
38087
#line 38088 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32520
38088
} // closed Puma
32521
38089
class WinIfExists;
32522
38090
class WinImportHandler;
32537
38105
class CCExprResolve;
32538
38106
class CExprResolve;
32539
38107
namespace Puma {
32540
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
 
38108
 
 
38109
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38110
class CT_TemplateName : public CT_SpecialName {
 
38111
#line 38112 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38112
  friend class ::WinIfExists;
32541
38113
  friend class ::WinImportHandler;
32542
38114
  friend class ::WinMacros;
32543
38115
  friend class ::CMatchSyntax;
32556
38128
  friend class ::CCExprResolve;
32557
38129
  friend class ::CExprResolve;
32558
38130
 
 
38131
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38132
 
32559
38133
public:
32560
38134
  CT_TemplateName (CTree *n, CTree *a) 
32561
38135
   { AddSon (n); AddSon (a); }
32572
38146
  void  operator delete (void *);
32573
38147
   private:
32574
38148
  typedef CT_TemplateName CCExprResolveExpr;
 
38149
 
 
38150
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32575
38151
 public :
32576
38152
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32577
38153
  typedef CT_TemplateName CExprResolveExpr;
 
38154
 
 
38155
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32578
38156
 public :
32579
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32580
 
 
 
38157
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38158
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38159
};
 
38160
 
 
38161
 
 
38162
#line 38163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32581
38163
} // closed Puma
32582
38164
class WinIfExists;
32583
38165
class WinImportHandler;
32598
38180
class CCExprResolve;
32599
38181
class CExprResolve;
32600
38182
namespace Puma {
32601
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
 
38183
 
 
38184
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38185
class CT_OperatorName : public CT_SpecialName {
 
38186
#line 38187 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38187
  friend class ::WinIfExists;
32602
38188
  friend class ::WinImportHandler;
32603
38189
  friend class ::WinMacros;
32604
38190
  friend class ::CMatchSyntax;
32617
38203
  friend class ::CCExprResolve;
32618
38204
  friend class ::CExprResolve;
32619
38205
 
 
38206
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38207
 
32620
38208
  int _oper;
32621
38209
 
32622
38210
public:
32638
38226
  void  operator delete (void *);
32639
38227
   private:
32640
38228
  typedef CT_OperatorName CCExprResolveExpr;
 
38229
 
 
38230
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32641
38231
 public :
32642
38232
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32643
38233
  typedef CT_OperatorName CExprResolveExpr;
 
38234
 
 
38235
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32644
38236
 public :
32645
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32646
 
 
 
38237
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38238
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38239
};
 
38240
 
 
38241
 
 
38242
#line 38243 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32647
38243
} // closed Puma
32648
38244
class WinIfExists;
32649
38245
class WinImportHandler;
32664
38260
class CCExprResolve;
32665
38261
class CExprResolve;
32666
38262
namespace Puma {
32667
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
 
38263
 
 
38264
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38265
class CT_ConversionName : public CT_SpecialName {
 
38266
#line 38267 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38267
  friend class ::WinIfExists;
32668
38268
  friend class ::WinImportHandler;
32669
38269
  friend class ::WinMacros;
32670
38270
  friend class ::CMatchSyntax;
32683
38283
  friend class ::CCExprResolve;
32684
38284
  friend class ::CExprResolve;
32685
38285
 
 
38286
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38287
 
32686
38288
public:
32687
38289
  CT_ConversionName (CTree *, CTree *);
32688
38290
  static const char *NodeId ();
32693
38295
  void  operator delete (void *);
32694
38296
   private:
32695
38297
  typedef CT_ConversionName CCExprResolveExpr;
 
38298
 
 
38299
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32696
38300
 public :
32697
38301
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32698
38302
  typedef CT_ConversionName CExprResolveExpr;
 
38303
 
 
38304
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32699
38305
 public :
32700
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32701
 
 
 
38306
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38307
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38308
};
 
38309
 
 
38310
 
 
38311
#line 38312 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32702
38312
} // closed Puma
32703
38313
class WinIfExists;
32704
38314
class WinImportHandler;
32719
38329
class CCExprResolve;
32720
38330
class CExprResolve;
32721
38331
namespace Puma {
32722
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
 
38332
 
 
38333
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38334
class CT_QualName : public CT_SimpleName {
 
38335
#line 38336 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38336
  friend class ::WinIfExists;
32723
38337
  friend class ::WinImportHandler;
32724
38338
  friend class ::WinMacros;
32725
38339
  friend class ::CMatchSyntax;
32738
38352
  friend class ::CCExprResolve;
32739
38353
  friend class ::CExprResolve;
32740
38354
 
 
38355
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38356
 
32741
38357
public:
32742
38358
  CT_QualName (int size = 3) : 
32743
38359
    CT_SimpleName (size, CT_List::SEPARATORS) {}
32755
38371
  void  operator delete (void *);
32756
38372
   private:
32757
38373
  typedef CT_QualName CCExprResolveExpr;
 
38374
 
 
38375
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32758
38376
 public :
32759
38377
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32760
38378
  typedef CT_QualName CExprResolveExpr;
 
38379
 
 
38380
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32761
38381
 public :
32762
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32763
 
 
 
38382
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38383
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38384
};
 
38385
 
 
38386
 
 
38387
#line 38388 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32764
38388
} // closed Puma
32765
38389
class WinIfExists;
32766
38390
class WinImportHandler;
32781
38405
class CCExprResolve;
32782
38406
class CExprResolve;
32783
38407
namespace Puma {
32784
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
 
38408
 
 
38409
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38410
class CT_RootQualName : public CT_QualName {
 
38411
#line 38412 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38412
  friend class ::WinIfExists;
32785
38413
  friend class ::WinImportHandler;
32786
38414
  friend class ::WinMacros;
32787
38415
  friend class ::CMatchSyntax;
32800
38428
  friend class ::CCExprResolve;
32801
38429
  friend class ::CExprResolve;
32802
38430
 
 
38431
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38432
 
32803
38433
public:
32804
38434
  CT_RootQualName (int size = 2) : 
32805
38435
    CT_QualName (size) { AddProperties (INTRO); }
32810
38440
  void  operator delete (void *);
32811
38441
   private:
32812
38442
  typedef CT_RootQualName CCExprResolveExpr;
 
38443
 
 
38444
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32813
38445
 public :
32814
38446
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32815
38447
  typedef CT_RootQualName CExprResolveExpr;
 
38448
 
 
38449
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32816
38450
 public :
32817
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32818
 
 
 
38451
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38452
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38453
};
 
38454
 
 
38455
 
 
38456
#line 38457 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32819
38457
} // closed Puma
32820
38458
class WinIfExists;
32821
38459
class WinImportHandler;
32836
38474
class CCExprResolve;
32837
38475
class CExprResolve;
32838
38476
namespace Puma {
32839
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
38477
 
 
38478
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38479
class CT_BinaryExpr : public CT_Expression {
 
38480
#line 38481 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38481
  friend class ::WinIfExists;
32840
38482
  friend class ::WinImportHandler;
32841
38483
  friend class ::WinMacros;
32842
38484
  friend class ::CMatchSyntax;
32855
38497
  friend class ::CCExprResolve;
32856
38498
  friend class ::CExprResolve;
32857
38499
 
 
38500
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38501
 
32858
38502
  CTree *sons[3]; // expr, oper, expr
32859
38503
 
32860
38504
public:
32870
38514
  }
32871
38515
   private:
32872
38516
  typedef CT_BinaryExpr CCExprResolveExpr;
 
38517
 
 
38518
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32873
38519
 public :
32874
38520
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32875
38521
  typedef CT_BinaryExpr CExprResolveExpr;
 
38522
 
 
38523
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32876
38524
 public :
32877
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32878
 
 
 
38525
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38526
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38527
};
 
38528
 
 
38529
 
 
38530
#line 38531 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32879
38531
} // closed Puma
32880
38532
class WinIfExists;
32881
38533
class WinImportHandler;
32896
38548
class CCExprResolve;
32897
38549
class CExprResolve;
32898
38550
namespace Puma {
32899
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
 
38551
 
 
38552
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38553
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
38554
#line 38555 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38555
  friend class ::WinIfExists;
32900
38556
  friend class ::WinImportHandler;
32901
38557
  friend class ::WinMacros;
32902
38558
  friend class ::CMatchSyntax;
32915
38571
  friend class ::CCExprResolve;
32916
38572
  friend class ::CExprResolve;
32917
38573
 
 
38574
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38575
 
32918
38576
public:
32919
38577
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
32920
38578
    CT_BinaryExpr (e, o, i) {}
32923
38581
  CSemObject *SemObject () const { return (CSemObject*)this; }
32924
38582
   private:
32925
38583
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
38584
 
 
38585
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32926
38586
 public :
32927
38587
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32928
38588
  typedef CT_MembPtrExpr CExprResolveExpr;
 
38589
 
 
38590
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32929
38591
 public :
32930
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32931
 
 
 
38592
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38593
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38594
};
 
38595
 
 
38596
 
 
38597
#line 38598 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32932
38598
} // closed Puma
32933
38599
class WinIfExists;
32934
38600
class WinImportHandler;
32949
38615
class CCExprResolve;
32950
38616
class CExprResolve;
32951
38617
namespace Puma {
32952
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
 
38618
 
 
38619
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38620
class CT_MembRefExpr : public CT_MembPtrExpr {
 
38621
#line 38622 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38622
  friend class ::WinIfExists;
32953
38623
  friend class ::WinImportHandler;
32954
38624
  friend class ::WinMacros;
32955
38625
  friend class ::CMatchSyntax;
32968
38638
  friend class ::CCExprResolve;
32969
38639
  friend class ::CExprResolve;
32970
38640
 
 
38641
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38642
 
32971
38643
public:
32972
38644
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
32973
38645
    CT_MembPtrExpr (e, o, i) {}
32975
38647
  const char *NodeName () const { return NodeId (); }
32976
38648
   private:
32977
38649
  typedef CT_MembRefExpr CCExprResolveExpr;
 
38650
 
 
38651
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
32978
38652
 public :
32979
38653
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
32980
38654
  typedef CT_MembRefExpr CExprResolveExpr;
 
38655
 
 
38656
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
32981
38657
 public :
32982
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
32983
 
 
 
38658
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38659
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38660
};
 
38661
 
 
38662
 
 
38663
#line 38664 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
32984
38664
} // closed Puma
32985
38665
class WinIfExists;
32986
38666
class WinImportHandler;
33001
38681
class CCExprResolve;
33002
38682
class CExprResolve;
33003
38683
namespace Puma {
33004
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
38684
 
 
38685
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38686
class CT_UnaryExpr : public CT_Expression {
 
38687
#line 38688 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38688
  friend class ::WinIfExists;
33005
38689
  friend class ::WinImportHandler;
33006
38690
  friend class ::WinMacros;
33007
38691
  friend class ::CMatchSyntax;
33020
38704
  friend class ::CCExprResolve;
33021
38705
  friend class ::CExprResolve;
33022
38706
 
 
38707
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38708
 
33023
38709
  CTree *sons[2]; // oper, expr
33024
38710
 
33025
38711
public:
33034
38720
  CTree *Expr () const { return sons[1]; }
33035
38721
   private:
33036
38722
  typedef CT_UnaryExpr CCExprResolveExpr;
 
38723
 
 
38724
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33037
38725
 public :
33038
38726
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33039
38727
  typedef CT_UnaryExpr CExprResolveExpr;
 
38728
 
 
38729
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33040
38730
 public :
33041
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33042
 
 
 
38731
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38732
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38733
};
 
38734
 
 
38735
 
 
38736
#line 38737 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33043
38737
} // closed Puma
33044
38738
class WinIfExists;
33045
38739
class WinImportHandler;
33060
38754
class CCExprResolve;
33061
38755
class CExprResolve;
33062
38756
namespace Puma {
33063
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
38757
 
 
38758
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38759
class CT_PostfixExpr : public CT_UnaryExpr {
 
38760
#line 38761 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38761
  friend class ::WinIfExists;
33064
38762
  friend class ::WinImportHandler;
33065
38763
  friend class ::WinMacros;
33066
38764
  friend class ::CMatchSyntax;
33079
38777
  friend class ::CCExprResolve;
33080
38778
  friend class ::CExprResolve;
33081
38779
 
 
38780
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38781
 
33082
38782
public:
33083
38783
  CT_PostfixExpr (CTree *e, CTree *o) :
33084
38784
    CT_UnaryExpr (e, o) {}
33086
38786
  const char *NodeName () const { return NodeId (); }
33087
38787
   private:
33088
38788
  typedef CT_PostfixExpr CCExprResolveExpr;
 
38789
 
 
38790
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33089
38791
 public :
33090
38792
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33091
38793
  typedef CT_PostfixExpr CExprResolveExpr;
 
38794
 
 
38795
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33092
38796
 public :
33093
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33094
 
 
 
38797
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38798
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38799
};
 
38800
 
 
38801
 
 
38802
#line 38803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33095
38803
} // closed Puma
33096
38804
class WinIfExists;
33097
38805
class WinImportHandler;
33112
38820
class CCExprResolve;
33113
38821
class CExprResolve;
33114
38822
namespace Puma {
33115
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
38823
 
 
38824
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38825
class CT_AddrExpr : public CT_UnaryExpr {
 
38826
#line 38827 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38827
  friend class ::WinIfExists;
33116
38828
  friend class ::WinImportHandler;
33117
38829
  friend class ::WinMacros;
33118
38830
  friend class ::CMatchSyntax;
33131
38843
  friend class ::CCExprResolve;
33132
38844
  friend class ::CExprResolve;
33133
38845
 
 
38846
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38847
 
33134
38848
public:
33135
38849
  CT_AddrExpr (CTree *o, CTree *e) :
33136
38850
    CT_UnaryExpr (o, e) {}
33138
38852
  const char *NodeName () const { return NodeId (); }
33139
38853
   private:
33140
38854
  typedef CT_AddrExpr CCExprResolveExpr;
 
38855
 
 
38856
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33141
38857
 public :
33142
38858
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33143
38859
  typedef CT_AddrExpr CExprResolveExpr;
 
38860
 
 
38861
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33144
38862
 public :
33145
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33146
 
 
 
38863
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38864
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38865
};
 
38866
 
 
38867
 
 
38868
#line 38869 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33147
38869
} // closed Puma
33148
38870
class WinIfExists;
33149
38871
class WinImportHandler;
33164
38886
class CCExprResolve;
33165
38887
class CExprResolve;
33166
38888
namespace Puma {
33167
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
38889
 
 
38890
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38891
class CT_DerefExpr : public CT_UnaryExpr {
 
38892
#line 38893 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38893
  friend class ::WinIfExists;
33168
38894
  friend class ::WinImportHandler;
33169
38895
  friend class ::WinMacros;
33170
38896
  friend class ::CMatchSyntax;
33183
38909
  friend class ::CCExprResolve;
33184
38910
  friend class ::CExprResolve;
33185
38911
 
 
38912
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38913
 
33186
38914
public:
33187
38915
  CT_DerefExpr (CTree *o, CTree *e) :
33188
38916
    CT_UnaryExpr (o, e) {}
33190
38918
  const char *NodeName () const { return NodeId (); }
33191
38919
   private:
33192
38920
  typedef CT_DerefExpr CCExprResolveExpr;
 
38921
 
 
38922
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33193
38923
 public :
33194
38924
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33195
38925
  typedef CT_DerefExpr CExprResolveExpr;
 
38926
 
 
38927
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33196
38928
 public :
33197
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33198
 
 
 
38929
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
38930
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38931
};
 
38932
 
 
38933
 
 
38934
#line 38935 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33199
38935
} // closed Puma
33200
38936
class WinIfExists;
33201
38937
class WinImportHandler;
33216
38952
class CCExprResolve;
33217
38953
class CExprResolve;
33218
38954
namespace Puma {
33219
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
38955
 
 
38956
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38957
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
38958
#line 38959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
38959
  friend class ::WinIfExists;
33220
38960
  friend class ::WinImportHandler;
33221
38961
  friend class ::WinMacros;
33222
38962
  friend class ::CMatchSyntax;
33235
38975
  friend class ::CCExprResolve;
33236
38976
  friend class ::CExprResolve;
33237
38977
 
 
38978
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
38979
 
33238
38980
  CTree *sons[2]; // oper, expr
33239
38981
 
33240
38982
public:
33251
38993
  CSemObject *SemObject () const { return (CSemObject*)this; }
33252
38994
   private:
33253
38995
  typedef CT_DeleteExpr CCExprResolveExpr;
 
38996
 
 
38997
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33254
38998
 public :
33255
38999
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33256
39000
  typedef CT_DeleteExpr CExprResolveExpr;
 
39001
 
 
39002
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33257
39003
 public :
33258
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33259
 
 
 
39004
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39005
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39006
};
 
39007
 
 
39008
 
 
39009
#line 39010 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33260
39010
} // closed Puma
33261
39011
class WinIfExists;
33262
39012
class WinImportHandler;
33277
39027
class CCExprResolve;
33278
39028
class CExprResolve;
33279
39029
namespace Puma {
33280
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
39030
 
 
39031
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39032
class CT_NewExpr : public CT_Expression, public CSemObject {
 
39033
#line 39034 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39034
  friend class ::WinIfExists;
33281
39035
  friend class ::WinImportHandler;
33282
39036
  friend class ::WinMacros;
33283
39037
  friend class ::CMatchSyntax;
33296
39050
  friend class ::CCExprResolve;
33297
39051
  friend class ::CExprResolve;
33298
39052
 
 
39053
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39054
 
33299
39055
  CTree *sons[6]; // oper, placement, open, type, close, init
33300
39056
 
33301
39057
public:
33316
39072
  CSemObject *SemObject () const { return (CSemObject*)this; }
33317
39073
   private:
33318
39074
  typedef CT_NewExpr CCExprResolveExpr;
 
39075
 
 
39076
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33319
39077
 public :
33320
39078
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33321
39079
  typedef CT_NewExpr CExprResolveExpr;
 
39080
 
 
39081
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33322
39082
 public :
33323
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33324
 
 
 
39083
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39084
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39085
};
 
39086
 
 
39087
 
 
39088
#line 39089 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33325
39089
} // closed Puma
33326
39090
class WinIfExists;
33327
39091
class WinImportHandler;
33342
39106
class CCExprResolve;
33343
39107
class CExprResolve;
33344
39108
namespace Puma {
33345
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
 
39109
 
 
39110
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39111
class CT_IfThenExpr : public CT_Expression {
 
39112
#line 39113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39113
  friend class ::WinIfExists;
33346
39114
  friend class ::WinImportHandler;
33347
39115
  friend class ::WinMacros;
33348
39116
  friend class ::CMatchSyntax;
33361
39129
  friend class ::CCExprResolve;
33362
39130
  friend class ::CExprResolve;
33363
39131
 
 
39132
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39133
 
33364
39134
  CTree *sons[5]; // cond, oper, left, colon, right
33365
39135
 
33366
39136
public:
33382
39152
  }
33383
39153
   private:
33384
39154
  typedef CT_IfThenExpr CCExprResolveExpr;
 
39155
 
 
39156
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33385
39157
 public :
33386
39158
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33387
39159
  typedef CT_IfThenExpr CExprResolveExpr;
 
39160
 
 
39161
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33388
39162
 public :
33389
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33390
 
 
 
39163
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39164
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39165
};
 
39166
 
 
39167
 
 
39168
#line 39169 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33391
39169
} // closed Puma
33392
39170
class WinIfExists;
33393
39171
class WinImportHandler;
33408
39186
class CCExprResolve;
33409
39187
class CExprResolve;
33410
39188
namespace Puma {
33411
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
39189
 
 
39190
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39191
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
39192
#line 39193 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39193
  friend class ::WinIfExists;
33412
39194
  friend class ::WinImportHandler;
33413
39195
  friend class ::WinMacros;
33414
39196
  friend class ::CMatchSyntax;
33427
39209
  friend class ::CCExprResolve;
33428
39210
  friend class ::CExprResolve;
33429
39211
 
 
39212
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39213
 
33430
39214
  CTree *sons[4]; // open, type, close, init
33431
39215
 
33432
39216
public:
33445
39229
  CSemObject *SemObject () const { return (CSemObject*)this; }
33446
39230
   private:
33447
39231
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
39232
 
 
39233
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33448
39234
 public :
33449
39235
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33450
39236
  typedef CT_CmpdLiteral CExprResolveExpr;
 
39237
 
 
39238
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33451
39239
 public :
33452
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33453
 
 
 
39240
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39241
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39242
};
 
39243
 
 
39244
 
 
39245
#line 39246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33454
39246
} // closed Puma
33455
39247
class WinIfExists;
33456
39248
class WinImportHandler;
33471
39263
class CCExprResolve;
33472
39264
class CExprResolve;
33473
39265
namespace Puma {
33474
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
39266
 
 
39267
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39268
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
39269
#line 39270 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39270
  friend class ::WinIfExists;
33475
39271
  friend class ::WinImportHandler;
33476
39272
  friend class ::WinMacros;
33477
39273
  friend class ::CMatchSyntax;
33490
39286
  friend class ::CCExprResolve;
33491
39287
  friend class ::CExprResolve;
33492
39288
 
 
39289
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39290
 
33493
39291
  CTree *sons[2]; // type, init
33494
39292
 
33495
39293
public:
33506
39304
  CSemObject *SemObject () const { return (CSemObject*)this; }
33507
39305
   private:
33508
39306
  typedef CT_ConstructExpr CCExprResolveExpr;
 
39307
 
 
39308
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33509
39309
 public :
33510
39310
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33511
39311
  typedef CT_ConstructExpr CExprResolveExpr;
 
39312
 
 
39313
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33512
39314
 public :
33513
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33514
 
 
 
39315
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39316
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39317
};
 
39318
 
 
39319
 
 
39320
#line 39321 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33515
39321
} // closed Puma
33516
39322
class WinIfExists;
33517
39323
class WinImportHandler;
33532
39338
class CCExprResolve;
33533
39339
class CExprResolve;
33534
39340
namespace Puma {
33535
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
 
39341
 
 
39342
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39343
class CT_ThrowExpr : public CT_Expression {
 
39344
#line 39345 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39345
  friend class ::WinIfExists;
33536
39346
  friend class ::WinImportHandler;
33537
39347
  friend class ::WinMacros;
33538
39348
  friend class ::CMatchSyntax;
33551
39361
  friend class ::CCExprResolve;
33552
39362
  friend class ::CExprResolve;
33553
39363
 
 
39364
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39365
 
33554
39366
  CTree *sons[2]; // throw, expr
33555
39367
 
33556
39368
public:
33565
39377
  CTree *Expr () const { return sons[1]; }
33566
39378
   private:
33567
39379
  typedef CT_ThrowExpr CCExprResolveExpr;
 
39380
 
 
39381
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33568
39382
 public :
33569
39383
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33570
39384
  typedef CT_ThrowExpr CExprResolveExpr;
 
39385
 
 
39386
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33571
39387
 public :
33572
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33573
 
 
 
39388
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39389
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39390
};
 
39391
 
 
39392
 
 
39393
#line 39394 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33574
39394
} // closed Puma
33575
39395
class WinIfExists;
33576
39396
class WinImportHandler;
33591
39411
class CCExprResolve;
33592
39412
class CExprResolve;
33593
39413
namespace Puma {
33594
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
 
39414
 
 
39415
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39416
class CT_IndexExpr : public CT_Expression {
 
39417
#line 39418 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39418
  friend class ::WinIfExists;
33595
39419
  friend class ::WinImportHandler;
33596
39420
  friend class ::WinMacros;
33597
39421
  friend class ::CMatchSyntax;
33610
39434
  friend class ::CCExprResolve;
33611
39435
  friend class ::CExprResolve;
33612
39436
 
 
39437
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39438
 
33613
39439
  CTree *sons[4]; // expr, open, index, close
33614
39440
 
33615
39441
public:
33625
39451
  }
33626
39452
   private:
33627
39453
  typedef CT_IndexExpr CCExprResolveExpr;
 
39454
 
 
39455
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33628
39456
 public :
33629
39457
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33630
39458
  typedef CT_IndexExpr CExprResolveExpr;
 
39459
 
 
39460
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33631
39461
 public :
33632
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33633
 
 
 
39462
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39463
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39464
};
 
39465
 
 
39466
 
 
39467
#line 39468 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33634
39468
} // closed Puma
33635
39469
class WinIfExists;
33636
39470
class WinImportHandler;
33651
39485
class CCExprResolve;
33652
39486
class CExprResolve;
33653
39487
namespace Puma {
33654
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
39488
 
 
39489
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39490
class CT_CallExpr : public CT_Expression, public CSemObject {
 
39491
#line 39492 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39492
  friend class ::WinIfExists;
33655
39493
  friend class ::WinImportHandler;
33656
39494
  friend class ::WinMacros;
33657
39495
  friend class ::CMatchSyntax;
33670
39508
  friend class ::CCExprResolve;
33671
39509
  friend class ::CExprResolve;
33672
39510
 
 
39511
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39512
 
33673
39513
  CTree *sons[2]; // expr, args
33674
39514
 
33675
39515
public:
33687
39527
  CSemObject *SemObject () const { return (CSemObject*)this; }
33688
39528
   private:
33689
39529
  typedef CT_CallExpr CCExprResolveExpr;
 
39530
 
 
39531
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33690
39532
 public :
33691
39533
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33692
39534
  typedef CT_CallExpr CExprResolveExpr;
 
39535
 
 
39536
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33693
39537
 public :
33694
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33695
 
 
 
39538
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39539
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39540
};
 
39541
 
 
39542
 
 
39543
#line 39544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33696
39544
} // closed Puma
33697
39545
class WinIfExists;
33698
39546
class WinImportHandler;
33713
39561
class CCExprResolve;
33714
39562
class CExprResolve;
33715
39563
namespace Puma {
33716
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
 
39564
 
 
39565
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39566
class CT_CastExpr : public CT_Expression {
 
39567
#line 39568 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39568
  friend class ::WinIfExists;
33717
39569
  friend class ::WinImportHandler;
33718
39570
  friend class ::WinMacros;
33719
39571
  friend class ::CMatchSyntax;
33732
39584
  friend class ::CCExprResolve;
33733
39585
  friend class ::CExprResolve;
33734
39586
 
 
39587
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39588
 
33735
39589
  CTree *sons[4]; // open, type, close, expr
33736
39590
 
33737
39591
public:
33749
39603
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
33750
39604
   private:
33751
39605
  typedef CT_CastExpr CCExprResolveExpr;
 
39606
 
 
39607
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33752
39608
 public :
33753
39609
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33754
39610
  typedef CT_CastExpr CExprResolveExpr;
 
39611
 
 
39612
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33755
39613
 public :
33756
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33757
 
 
 
39614
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39615
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39616
};
 
39617
 
 
39618
 
 
39619
#line 39620 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33758
39620
} // closed Puma
33759
39621
class WinIfExists;
33760
39622
class WinImportHandler;
33775
39637
class CCExprResolve;
33776
39638
class CExprResolve;
33777
39639
namespace Puma {
33778
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
 
39640
 
 
39641
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39642
class CT_StaticCast : public CT_Expression {
 
39643
#line 39644 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39644
  friend class ::WinIfExists;
33779
39645
  friend class ::WinImportHandler;
33780
39646
  friend class ::WinMacros;
33781
39647
  friend class ::CMatchSyntax;
33794
39660
  friend class ::CCExprResolve;
33795
39661
  friend class ::CExprResolve;
33796
39662
 
 
39663
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39664
 
33797
39665
  CTree *sons[5]; // cast, open, type, close, expr
33798
39666
 
33799
39667
public:
33811
39679
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
33812
39680
   private:
33813
39681
  typedef CT_StaticCast CCExprResolveExpr;
 
39682
 
 
39683
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33814
39684
 public :
33815
39685
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33816
39686
  typedef CT_StaticCast CExprResolveExpr;
 
39687
 
 
39688
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33817
39689
 public :
33818
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33819
 
 
 
39690
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39691
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39692
};
 
39693
 
 
39694
 
 
39695
#line 39696 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33820
39696
} // closed Puma
33821
39697
class WinIfExists;
33822
39698
class WinImportHandler;
33837
39713
class CCExprResolve;
33838
39714
class CExprResolve;
33839
39715
namespace Puma {
33840
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
 
39716
 
 
39717
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39718
class CT_ConstCast : public CT_StaticCast {
 
39719
#line 39720 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39720
  friend class ::WinIfExists;
33841
39721
  friend class ::WinImportHandler;
33842
39722
  friend class ::WinMacros;
33843
39723
  friend class ::CMatchSyntax;
33856
39736
  friend class ::CCExprResolve;
33857
39737
  friend class ::CExprResolve;
33858
39738
 
 
39739
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39740
 
33859
39741
public:
33860
39742
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
33861
39743
    CT_StaticCast (cst, o, t, c, e) {}
33863
39745
  const char *NodeName () const { return NodeId (); }
33864
39746
   private:
33865
39747
  typedef CT_ConstCast CCExprResolveExpr;
 
39748
 
 
39749
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33866
39750
 public :
33867
39751
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33868
39752
  typedef CT_ConstCast CExprResolveExpr;
 
39753
 
 
39754
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33869
39755
 public :
33870
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33871
 
 
 
39756
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39757
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39758
};
 
39759
 
 
39760
 
 
39761
#line 39762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33872
39762
} // closed Puma
33873
39763
class WinIfExists;
33874
39764
class WinImportHandler;
33889
39779
class CCExprResolve;
33890
39780
class CExprResolve;
33891
39781
namespace Puma {
33892
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
 
39782
 
 
39783
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39784
class CT_ReintCast : public CT_StaticCast {
 
39785
#line 39786 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39786
  friend class ::WinIfExists;
33893
39787
  friend class ::WinImportHandler;
33894
39788
  friend class ::WinMacros;
33895
39789
  friend class ::CMatchSyntax;
33908
39802
  friend class ::CCExprResolve;
33909
39803
  friend class ::CExprResolve;
33910
39804
 
 
39805
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39806
 
33911
39807
public:
33912
39808
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
33913
39809
    CT_StaticCast (cst, o, t, c, e) {}
33915
39811
  const char *NodeName () const { return NodeId (); }
33916
39812
   private:
33917
39813
  typedef CT_ReintCast CCExprResolveExpr;
 
39814
 
 
39815
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33918
39816
 public :
33919
39817
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33920
39818
  typedef CT_ReintCast CExprResolveExpr;
 
39819
 
 
39820
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33921
39821
 public :
33922
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33923
 
 
 
39822
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39823
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39824
};
 
39825
 
 
39826
 
 
39827
#line 39828 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33924
39828
} // closed Puma
33925
39829
class WinIfExists;
33926
39830
class WinImportHandler;
33941
39845
class CCExprResolve;
33942
39846
class CExprResolve;
33943
39847
namespace Puma {
33944
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
 
39848
 
 
39849
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39850
class CT_DynamicCast : public CT_StaticCast {
 
39851
#line 39852 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39852
  friend class ::WinIfExists;
33945
39853
  friend class ::WinImportHandler;
33946
39854
  friend class ::WinMacros;
33947
39855
  friend class ::CMatchSyntax;
33960
39868
  friend class ::CCExprResolve;
33961
39869
  friend class ::CExprResolve;
33962
39870
 
 
39871
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39872
 
33963
39873
public:
33964
39874
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
33965
39875
    CT_StaticCast (cst, o, t, c, e) {}
33967
39877
  const char *NodeName () const { return NodeId (); }
33968
39878
   private:
33969
39879
  typedef CT_DynamicCast CCExprResolveExpr;
 
39880
 
 
39881
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
33970
39882
 public :
33971
39883
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
33972
39884
  typedef CT_DynamicCast CExprResolveExpr;
 
39885
 
 
39886
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
33973
39887
 public :
33974
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
33975
 
 
 
39888
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39889
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39890
};
 
39891
 
 
39892
 
 
39893
#line 39894 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
33976
39894
} // closed Puma
33977
39895
class WinIfExists;
33978
39896
class WinImportHandler;
33993
39911
class CCExprResolve;
33994
39912
class CExprResolve;
33995
39913
namespace Puma {
33996
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
 
39914
 
 
39915
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39916
class CT_ImplicitCast : public CT_Expression {
 
39917
#line 39918 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39918
  friend class ::WinIfExists;
33997
39919
  friend class ::WinImportHandler;
33998
39920
  friend class ::WinMacros;
33999
39921
  friend class ::CMatchSyntax;
34012
39934
  friend class ::CCExprResolve;
34013
39935
  friend class ::CExprResolve;
34014
39936
 
 
39937
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39938
 
34015
39939
  CTree *_expr; // casted expression
34016
39940
 
34017
39941
public:
34025
39949
   { if (old_son == _expr) _expr = new_son; }
34026
39950
   private:
34027
39951
  typedef CT_ImplicitCast CCExprResolveExpr;
 
39952
 
 
39953
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
34028
39954
 public :
34029
39955
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
34030
39956
  typedef CT_ImplicitCast CExprResolveExpr;
 
39957
 
 
39958
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
34031
39959
 public :
34032
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
34033
 
 
 
39960
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
39961
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39962
};
 
39963
 
 
39964
 
 
39965
#line 39966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34034
39966
} // closed Puma
34035
39967
class WinIfExists;
34036
39968
class WinImportHandler;
34051
39983
class CCExprResolve;
34052
39984
class CExprResolve;
34053
39985
namespace Puma {
34054
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
 
39986
 
 
39987
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
39988
class CT_TypeidExpr : public CT_Expression {
 
39989
#line 39990 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
39990
  friend class ::WinIfExists;
34055
39991
  friend class ::WinImportHandler;
34056
39992
  friend class ::WinMacros;
34057
39993
  friend class ::CMatchSyntax;
34070
40006
  friend class ::CCExprResolve;
34071
40007
  friend class ::CExprResolve;
34072
40008
 
 
40009
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40010
 
34073
40011
  CTree *sons[4]; // typeid, open, type_id/expr, close
34074
40012
 
34075
40013
public:
34086
40024
  CTree *Arg () const { return sons[2]; }
34087
40025
   private:
34088
40026
  typedef CT_TypeidExpr CCExprResolveExpr;
 
40027
 
 
40028
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
34089
40029
 public :
34090
40030
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
34091
40031
  typedef CT_TypeidExpr CExprResolveExpr;
 
40032
 
 
40033
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
34092
40034
 public :
34093
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
34094
 
 
 
40035
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
40036
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40037
};
 
40038
 
 
40039
 
 
40040
#line 40041 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34095
40041
} // closed Puma
34096
40042
class WinIfExists;
34097
40043
class WinImportHandler;
34112
40058
class CCExprResolve;
34113
40059
class CExprResolve;
34114
40060
namespace Puma {
34115
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
 
40061
 
 
40062
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40063
class CT_SizeofExpr : public CT_Expression {
 
40064
#line 40065 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40065
  friend class ::WinIfExists;
34116
40066
  friend class ::WinImportHandler;
34117
40067
  friend class ::WinMacros;
34118
40068
  friend class ::CMatchSyntax;
34131
40081
  friend class ::CCExprResolve;
34132
40082
  friend class ::CExprResolve;
34133
40083
 
 
40084
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40085
 
34134
40086
  CTree *sons[5]; // key, open, type, close, expr
34135
40087
 
34136
40088
public:
34151
40103
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
34152
40104
   private:
34153
40105
  typedef CT_SizeofExpr CCExprResolveExpr;
 
40106
 
 
40107
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
34154
40108
 public :
34155
40109
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
34156
40110
  typedef CT_SizeofExpr CExprResolveExpr;
 
40111
 
 
40112
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
34157
40113
 public :
34158
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
34159
 
 
 
40114
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
40115
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40116
};
 
40117
 
 
40118
 
 
40119
#line 40120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34160
40120
} // closed Puma
34161
40121
class WinIfExists;
34162
40122
class WinImportHandler;
34177
40137
class CCExprResolve;
34178
40138
class CExprResolve;
34179
40139
namespace Puma {
34180
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
 
40140
 
 
40141
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40142
class CT_IndexDesignator : public CT_Expression {
 
40143
#line 40144 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40144
  friend class ::WinIfExists;
34181
40145
  friend class ::WinImportHandler;
34182
40146
  friend class ::WinMacros;
34183
40147
  friend class ::CMatchSyntax;
34196
40160
  friend class ::CCExprResolve;
34197
40161
  friend class ::CExprResolve;
34198
40162
 
 
40163
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40164
 
34199
40165
  CTree *sons[3]; // open, index, close
34200
40166
 
34201
40167
public:
34211
40177
  }
34212
40178
   private:
34213
40179
  typedef CT_IndexDesignator CCExprResolveExpr;
 
40180
 
 
40181
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
34214
40182
 public :
34215
40183
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
34216
40184
  typedef CT_IndexDesignator CExprResolveExpr;
 
40185
 
 
40186
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
34217
40187
 public :
34218
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
34219
 
 
 
40188
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
40189
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40190
};
 
40191
 
 
40192
 
 
40193
#line 40194 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34220
40194
} // closed Puma
34221
40195
class WinIfExists;
34222
40196
class WinImportHandler;
34237
40211
class CCExprResolve;
34238
40212
class CExprResolve;
34239
40213
namespace Puma {
34240
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
 
40214
 
 
40215
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40216
class CT_MembDesignator : public CT_Expression {
 
40217
#line 40218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40218
  friend class ::WinIfExists;
34241
40219
  friend class ::WinImportHandler;
34242
40220
  friend class ::WinMacros;
34243
40221
  friend class ::CMatchSyntax;
34256
40234
  friend class ::CCExprResolve;
34257
40235
  friend class ::CExprResolve;
34258
40236
 
 
40237
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40238
 
34259
40239
  CTree *sons[2]; // dot, member
34260
40240
 
34261
40241
public:
34269
40249
  }
34270
40250
   private:
34271
40251
  typedef CT_MembDesignator CCExprResolveExpr;
 
40252
 
 
40253
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
34272
40254
 public :
34273
40255
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
34274
40256
  typedef CT_MembDesignator CExprResolveExpr;
 
40257
 
 
40258
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
34275
40259
 public :
34276
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
34277
 
 
 
40260
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
40261
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40262
};
 
40263
 
 
40264
 
 
40265
#line 40266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34278
40266
} // closed Puma
34279
40267
class WinIfExists;
34280
40268
class WinImportHandler;
34295
40283
class CCExprResolve;
34296
40284
class CExprResolve;
34297
40285
namespace Puma {
34298
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
40286
 
 
40287
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40288
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
40289
#line 40290 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40290
  friend class ::WinIfExists;
34299
40291
  friend class ::WinImportHandler;
34300
40292
  friend class ::WinMacros;
34301
40293
  friend class ::CMatchSyntax;
34314
40306
  friend class ::CCExprResolve;
34315
40307
  friend class ::CExprResolve;
34316
40308
 
 
40309
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40310
 
34317
40311
public:
34318
40312
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
34319
40313
  static const char *NodeId ();
34330
40324
/*                                                                           */
34331
40325
/*****************************************************************************/
34332
40326
 
 
40327
 
 
40328
#line 40329 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34333
40329
} // closed Puma
34334
40330
class WinIfExists;
34335
40331
class WinImportHandler;
34350
40346
class CCExprResolve;
34351
40347
class CExprResolve;
34352
40348
namespace Puma {
34353
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
 
40349
 
 
40350
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40351
class CT_DeclSpec : public CTree {
 
40352
#line 40353 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40353
  friend class ::WinIfExists;
34354
40354
  friend class ::WinImportHandler;
34355
40355
  friend class ::WinMacros;
34356
40356
  friend class ::CMatchSyntax;
34369
40369
  friend class ::CCExprResolve;
34370
40370
  friend class ::CExprResolve;
34371
40371
 
 
40372
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40373
 
34372
40374
protected:
34373
40375
  CT_DeclSpec () {}
34374
40376
};
34375
40377
 
 
40378
 
 
40379
#line 40380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34376
40380
} // closed Puma
34377
40381
class WinIfExists;
34378
40382
class WinImportHandler;
34393
40397
class CCExprResolve;
34394
40398
class CExprResolve;
34395
40399
namespace Puma {
34396
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
40400
 
 
40401
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40402
class CT_PrimDeclSpec : public CT_DeclSpec {
 
40403
#line 40404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40404
  friend class ::WinIfExists;
34397
40405
  friend class ::WinImportHandler;
34398
40406
  friend class ::WinMacros;
34399
40407
  friend class ::CMatchSyntax;
34412
40420
  friend class ::CCExprResolve;
34413
40421
  friend class ::CExprResolve;
34414
40422
 
 
40423
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40424
 
34415
40425
public:
34416
40426
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
34417
40427
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
34444
40454
  static const int NumTypes = PDS_NUM;
34445
40455
};
34446
40456
 
 
40457
 
 
40458
#line 40459 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34447
40459
} // closed Puma
34448
40460
class WinIfExists;
34449
40461
class WinImportHandler;
34464
40476
class CCExprResolve;
34465
40477
class CExprResolve;
34466
40478
namespace Puma {
34467
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
40479
 
 
40480
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40481
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
40482
#line 40483 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40483
  friend class ::WinIfExists;
34468
40484
  friend class ::WinImportHandler;
34469
40485
  friend class ::WinMacros;
34470
40486
  friend class ::CMatchSyntax;
34483
40499
  friend class ::CCExprResolve;
34484
40500
  friend class ::CExprResolve;
34485
40501
 
 
40502
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40503
 
34486
40504
  CTree *sons[2]; // declspecs, declarator
34487
40505
 
34488
40506
public:
34498
40516
  CSemObject *SemObject () const { return (CSemObject*)this; }
34499
40517
};
34500
40518
      
 
40519
 
 
40520
#line 40521 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34501
40521
} // closed Puma
34502
40522
class WinIfExists;
34503
40523
class WinImportHandler;
34518
40538
class CCExprResolve;
34519
40539
class CExprResolve;
34520
40540
namespace Puma {
34521
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
40541
 
 
40542
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40543
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
40544
#line 40545 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40545
  friend class ::WinIfExists;
34522
40546
  friend class ::WinImportHandler;
34523
40547
  friend class ::WinMacros;
34524
40548
  friend class ::CMatchSyntax;
34537
40561
  friend class ::CCExprResolve;
34538
40562
  friend class ::CExprResolve;
34539
40563
 
 
40564
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40565
 
34540
40566
  CTree *sons[2]; // key, name
34541
40567
  
34542
40568
public:
34552
40578
  }
34553
40579
};
34554
40580
 
 
40581
 
 
40582
#line 40583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34555
40583
} // closed Puma
34556
40584
class WinIfExists;
34557
40585
class WinImportHandler;
34572
40600
class CCExprResolve;
34573
40601
class CExprResolve;
34574
40602
namespace Puma {
34575
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
40603
 
 
40604
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40605
class CT_UnionSpec : public CT_ClassSpec {
 
40606
#line 40607 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40607
  friend class ::WinIfExists;
34576
40608
  friend class ::WinImportHandler;
34577
40609
  friend class ::WinMacros;
34578
40610
  friend class ::CMatchSyntax;
34591
40623
  friend class ::CCExprResolve;
34592
40624
  friend class ::CExprResolve;
34593
40625
 
 
40626
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40627
 
34594
40628
public:
34595
40629
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
34596
40630
  static const char *NodeId ();
34597
40631
  const char *NodeName () const { return NodeId (); }
34598
40632
};
34599
40633
 
 
40634
 
 
40635
#line 40636 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34600
40636
} // closed Puma
34601
40637
class WinIfExists;
34602
40638
class WinImportHandler;
34617
40653
class CCExprResolve;
34618
40654
class CExprResolve;
34619
40655
namespace Puma {
34620
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
40656
 
 
40657
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40658
class CT_EnumSpec : public CT_ClassSpec {
 
40659
#line 40660 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40660
  friend class ::WinIfExists;
34621
40661
  friend class ::WinImportHandler;
34622
40662
  friend class ::WinMacros;
34623
40663
  friend class ::CMatchSyntax;
34636
40676
  friend class ::CCExprResolve;
34637
40677
  friend class ::CExprResolve;
34638
40678
 
 
40679
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40680
 
34639
40681
public:
34640
40682
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
34641
40683
  static const char *NodeId ();
34642
40684
  const char *NodeName () const { return NodeId (); }
34643
40685
};
34644
40686
 
 
40687
 
 
40688
#line 40689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34645
40689
} // closed Puma
34646
40690
class WinIfExists;
34647
40691
class WinImportHandler;
34662
40706
class CCExprResolve;
34663
40707
class CExprResolve;
34664
40708
namespace Puma {
34665
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
40709
 
 
40710
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40711
class CT_ExceptionSpec : public CT_DeclSpec {
 
40712
#line 40713 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40713
  friend class ::WinIfExists;
34666
40714
  friend class ::WinImportHandler;
34667
40715
  friend class ::WinMacros;
34668
40716
  friend class ::CMatchSyntax;
34681
40729
  friend class ::CCExprResolve;
34682
40730
  friend class ::CExprResolve;
34683
40731
 
 
40732
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40733
 
34684
40734
  CTree *sons[2]; // throw, type_id_list
34685
40735
  
34686
40736
public:
34701
40751
/*                                                                           */
34702
40752
/*****************************************************************************/
34703
40753
 
 
40754
 
 
40755
#line 40756 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34704
40756
} // closed Puma
34705
40757
class WinIfExists;
34706
40758
class WinImportHandler;
34721
40773
class CCExprResolve;
34722
40774
class CExprResolve;
34723
40775
namespace Puma {
34724
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
 
40776
 
 
40777
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40778
class CT_Decl : public CTree {
 
40779
#line 40780 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40780
  friend class ::WinIfExists;
34725
40781
  friend class ::WinImportHandler;
34726
40782
  friend class ::WinMacros;
34727
40783
  friend class ::CMatchSyntax;
34739
40795
  friend class ::PragmaOnce;
34740
40796
  friend class ::CCExprResolve;
34741
40797
  friend class ::CExprResolve;
 
40798
 
 
40799
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
34742
40800
 
34743
40801
  CT_LinkageSpec *_linkage;
34744
40802
protected:
34748
40806
  CT_LinkageSpec *Linkage () const { return _linkage; }
34749
40807
};
34750
40808
 
 
40809
 
 
40810
#line 40811 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34751
40811
} // closed Puma
34752
40812
class WinIfExists;
34753
40813
class WinImportHandler;
34768
40828
class CCExprResolve;
34769
40829
class CExprResolve;
34770
40830
namespace Puma {
34771
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
40831
 
 
40832
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40833
class CT_Program : public CT_DeclList, public CSemScope {
 
40834
#line 40835 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40835
  friend class ::WinIfExists;
34772
40836
  friend class ::WinImportHandler;
34773
40837
  friend class ::WinMacros;
34774
40838
  friend class ::CMatchSyntax;
34787
40851
  friend class ::CCExprResolve;
34788
40852
  friend class ::CExprResolve;
34789
40853
 
 
40854
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40855
 
34790
40856
public:
34791
40857
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
34792
40858
  static const char *NodeId ();
34793
40859
  const char *NodeName () const { return NodeId (); }
34794
40860
};
34795
40861
   
 
40862
 
 
40863
#line 40864 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34796
40864
} // closed Puma
34797
40865
class WinIfExists;
34798
40866
class WinImportHandler;
34813
40881
class CCExprResolve;
34814
40882
class CExprResolve;
34815
40883
namespace Puma {
34816
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
 
40884
 
 
40885
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40886
class CT_ObjDecl : public CT_Decl {
 
40887
#line 40888 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40888
  friend class ::WinIfExists;
34817
40889
  friend class ::WinImportHandler;
34818
40890
  friend class ::WinMacros;
34819
40891
  friend class ::CMatchSyntax;
34832
40904
  friend class ::CCExprResolve;
34833
40905
  friend class ::CExprResolve;
34834
40906
 
 
40907
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40908
 
34835
40909
  CTree *sons[3]; // declspecs, declarators, colon
34836
40910
 
34837
40911
public:
34849
40923
  }
34850
40924
};
34851
40925
 
 
40926
 
 
40927
#line 40928 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34852
40928
} // closed Puma
34853
40929
class WinIfExists;
34854
40930
class WinImportHandler;
34869
40945
class CCExprResolve;
34870
40946
class CExprResolve;
34871
40947
namespace Puma {
34872
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
40948
 
 
40949
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40950
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
40951
#line 40952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
40952
  friend class ::WinIfExists;
34873
40953
  friend class ::WinImportHandler;
34874
40954
  friend class ::WinMacros;
34875
40955
  friend class ::CMatchSyntax;
34888
40968
  friend class ::CCExprResolve;
34889
40969
  friend class ::CExprResolve;
34890
40970
 
 
40971
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
40972
 
34891
40973
  CTree *sons[3]; // export, param_list, decl
34892
40974
 
34893
40975
public:
34908
40990
  CTree *Declaration () const { return sons[2]; }
34909
40991
};
34910
40992
 
 
40993
 
 
40994
#line 40995 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34911
40995
} // closed Puma
34912
40996
class WinIfExists;
34913
40997
class WinImportHandler;
34928
41012
class CCExprResolve;
34929
41013
class CExprResolve;
34930
41014
namespace Puma {
34931
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
41015
 
 
41016
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41017
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
41018
#line 41019 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41019
  friend class ::WinIfExists;
34932
41020
  friend class ::WinImportHandler;
34933
41021
  friend class ::WinMacros;
34934
41022
  friend class ::CMatchSyntax;
34947
41035
  friend class ::CCExprResolve;
34948
41036
  friend class ::CExprResolve;
34949
41037
 
 
41038
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41039
 
34950
41040
protected:
34951
41041
  CT_TemplateParamDecl () {}
34952
41042
  
34955
41045
  CSemObject *SemObject () const { return (CSemObject*)this; }
34956
41046
};
34957
41047
 
 
41048
 
 
41049
#line 41050 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
34958
41050
} // closed Puma
34959
41051
class WinIfExists;
34960
41052
class WinImportHandler;
34975
41067
class CCExprResolve;
34976
41068
class CExprResolve;
34977
41069
namespace Puma {
34978
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
41070
 
 
41071
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41072
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
41073
#line 41074 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41074
  friend class ::WinIfExists;
34979
41075
  friend class ::WinImportHandler;
34980
41076
  friend class ::WinMacros;
34981
41077
  friend class ::CMatchSyntax;
34994
41090
  friend class ::CCExprResolve;
34995
41091
  friend class ::CExprResolve;
34996
41092
 
 
41093
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41094
 
34997
41095
  CTree *sons[3]; // declspecs, declarator, init
34998
41096
 
34999
41097
public:
35014
41112
  }
35015
41113
};
35016
41114
 
 
41115
 
 
41116
#line 41117 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35017
41117
} // closed Puma
35018
41118
class WinIfExists;
35019
41119
class WinImportHandler;
35034
41134
class CCExprResolve;
35035
41135
class CExprResolve;
35036
41136
namespace Puma {
35037
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
41137
 
 
41138
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41139
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
41140
#line 41141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41141
  friend class ::WinIfExists;
35038
41142
  friend class ::WinImportHandler;
35039
41143
  friend class ::WinMacros;
35040
41144
  friend class ::CMatchSyntax;
35053
41157
  friend class ::CCExprResolve;
35054
41158
  friend class ::CExprResolve;
35055
41159
 
 
41160
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41161
 
35056
41162
  CTree *sons[4]; // params, key, id, init
35057
41163
 
35058
41164
public:
35074
41180
  }
35075
41181
};
35076
41182
 
 
41183
 
 
41184
#line 41185 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35077
41185
} // closed Puma
35078
41186
class WinIfExists;
35079
41187
class WinImportHandler;
35094
41202
class CCExprResolve;
35095
41203
class CExprResolve;
35096
41204
namespace Puma {
35097
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
41205
 
 
41206
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41207
class CT_EnumDef : public CT_Decl, public CSemObject {
 
41208
#line 41209 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41209
  friend class ::WinIfExists;
35098
41210
  friend class ::WinImportHandler;
35099
41211
  friend class ::WinMacros;
35100
41212
  friend class ::CMatchSyntax;
35113
41225
  friend class ::CCExprResolve;
35114
41226
  friend class ::CExprResolve;
35115
41227
 
 
41228
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41229
 
35116
41230
  CTree *sons[3]; // key, name, enumerators
35117
41231
 
35118
41232
public:
35132
41246
  CSemObject *SemObject () const { return (CSemObject*)this; }
35133
41247
};
35134
41248
 
 
41249
 
 
41250
#line 41251 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35135
41251
} // closed Puma
35136
41252
class WinIfExists;
35137
41253
class WinImportHandler;
35152
41268
class CCExprResolve;
35153
41269
class CExprResolve;
35154
41270
namespace Puma {
35155
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
41271
 
 
41272
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41273
class CT_Enumerator : public CT_Decl, public CSemObject {
 
41274
#line 41275 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41275
  friend class ::WinIfExists;
35156
41276
  friend class ::WinImportHandler;
35157
41277
  friend class ::WinMacros;
35158
41278
  friend class ::CMatchSyntax;
35171
41291
  friend class ::CCExprResolve;
35172
41292
  friend class ::CExprResolve;
35173
41293
 
 
41294
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41295
 
35174
41296
  CTree *sons[2]; // name, init
35175
41297
 
35176
41298
public:
35188
41310
  CSemObject *SemObject () const { return (CSemObject*)this; }
35189
41311
};
35190
41312
 
 
41313
 
 
41314
#line 41315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35191
41315
} // closed Puma
35192
41316
class WinIfExists;
35193
41317
class WinImportHandler;
35208
41332
class CCExprResolve;
35209
41333
class CExprResolve;
35210
41334
namespace Puma {
35211
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
41335
 
 
41336
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41337
class CT_FctDef : public CT_Decl, public CSemObject {
 
41338
#line 41339 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41339
  friend class ::WinIfExists;
35212
41340
  friend class ::WinImportHandler;
35213
41341
  friend class ::WinMacros;
35214
41342
  friend class ::CMatchSyntax;
35227
41355
  friend class ::CCExprResolve;
35228
41356
  friend class ::CExprResolve;
35229
41357
 
 
41358
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41359
 
35230
41360
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
35231
41361
 
35232
41362
public:
35257
41387
  }
35258
41388
};
35259
41389
 
 
41390
 
 
41391
#line 41392 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35260
41392
} // closed Puma
35261
41393
class WinIfExists;
35262
41394
class WinImportHandler;
35277
41409
class CCExprResolve;
35278
41410
class CExprResolve;
35279
41411
namespace Puma {
35280
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
 
41412
 
 
41413
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41414
class CT_AsmDef : public CT_Decl {
 
41415
#line 41416 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41416
  friend class ::WinIfExists;
35281
41417
  friend class ::WinImportHandler;
35282
41418
  friend class ::WinMacros;
35283
41419
  friend class ::CMatchSyntax;
35296
41432
  friend class ::CCExprResolve;
35297
41433
  friend class ::CExprResolve;
35298
41434
 
 
41435
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41436
 
35299
41437
  CTree *sons[5]; // asm, open, str, close, semi_colon
35300
41438
 
35301
41439
public:
35312
41450
  }
35313
41451
};
35314
41452
 
 
41453
 
 
41454
#line 41455 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35315
41455
} // closed Puma
35316
41456
class WinIfExists;
35317
41457
class WinImportHandler;
35332
41472
class CCExprResolve;
35333
41473
class CExprResolve;
35334
41474
namespace Puma {
35335
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
41475
 
 
41476
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41477
class CT_Handler : public CT_Decl, public CSemScope {
 
41478
#line 41479 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41479
  friend class ::WinIfExists;
35336
41480
  friend class ::WinImportHandler;
35337
41481
  friend class ::WinMacros;
35338
41482
  friend class ::CMatchSyntax;
35351
41495
  friend class ::CCExprResolve;
35352
41496
  friend class ::CExprResolve;
35353
41497
 
 
41498
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41499
 
35354
41500
  CTree *sons[3]; // catch, exception_decl, stmt
35355
41501
 
35356
41502
public:
35368
41514
  }
35369
41515
};
35370
41516
 
 
41517
 
 
41518
#line 41519 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35371
41519
} // closed Puma
35372
41520
class WinIfExists;
35373
41521
class WinImportHandler;
35388
41536
class CCExprResolve;
35389
41537
class CExprResolve;
35390
41538
namespace Puma {
35391
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
 
41539
 
 
41540
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41541
class CT_LinkageSpec : public CT_Decl {
 
41542
#line 41543 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41543
  friend class ::WinIfExists;
35392
41544
  friend class ::WinImportHandler;
35393
41545
  friend class ::WinMacros;
35394
41546
  friend class ::CMatchSyntax;
35407
41559
  friend class ::CCExprResolve;
35408
41560
  friend class ::CExprResolve;
35409
41561
 
 
41562
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41563
 
35410
41564
  CTree *sons[5]; // extern, str, open, decls, close
35411
41565
 
35412
41566
public:
35431
41585
  }
35432
41586
};
35433
41587
 
 
41588
 
 
41589
#line 41590 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35434
41590
} // closed Puma
35435
41591
class WinIfExists;
35436
41592
class WinImportHandler;
35451
41607
class CCExprResolve;
35452
41608
class CExprResolve;
35453
41609
namespace Puma {
35454
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
41610
 
 
41611
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41612
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
41613
#line 41614 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41614
  friend class ::WinIfExists;
35455
41615
  friend class ::WinImportHandler;
35456
41616
  friend class ::WinMacros;
35457
41617
  friend class ::CMatchSyntax;
35470
41630
  friend class ::CCExprResolve;
35471
41631
  friend class ::CExprResolve;
35472
41632
 
 
41633
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41634
 
35473
41635
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
35474
41636
 
35475
41637
public:
35494
41656
  }
35495
41657
};
35496
41658
 
 
41659
 
 
41660
#line 41661 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35497
41661
} // closed Puma
35498
41662
class WinIfExists;
35499
41663
class WinImportHandler;
35514
41678
class CCExprResolve;
35515
41679
class CExprResolve;
35516
41680
namespace Puma {
35517
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
41681
 
 
41682
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41683
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
41684
#line 41685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41685
  friend class ::WinIfExists;
35518
41686
  friend class ::WinImportHandler;
35519
41687
  friend class ::WinMacros;
35520
41688
  friend class ::CMatchSyntax;
35533
41701
  friend class ::CCExprResolve;
35534
41702
  friend class ::CExprResolve;
35535
41703
 
 
41704
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41705
 
35536
41706
public:
35537
41707
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
35538
41708
   CT_DeclList (size, 2) { AddProperties (props); }
35540
41710
  const char *NodeName () const { return NodeId (); }
35541
41711
};
35542
41712
 
 
41713
 
 
41714
#line 41715 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35543
41715
} // closed Puma
35544
41716
class WinIfExists;
35545
41717
class WinImportHandler;
35560
41732
class CCExprResolve;
35561
41733
class CExprResolve;
35562
41734
namespace Puma {
35563
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
41735
 
 
41736
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41737
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
41738
#line 41739 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41739
  friend class ::WinIfExists;
35564
41740
  friend class ::WinImportHandler;
35565
41741
  friend class ::WinMacros;
35566
41742
  friend class ::CMatchSyntax;
35579
41755
  friend class ::CCExprResolve;
35580
41756
  friend class ::CExprResolve;
35581
41757
 
 
41758
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41759
 
35582
41760
public:
35583
41761
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
35584
41762
  static const char *NodeId ();
35585
41763
  const char *NodeName () const { return NodeId (); }
35586
41764
};
35587
41765
 
 
41766
 
 
41767
#line 41768 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35588
41768
} // closed Puma
35589
41769
class WinIfExists;
35590
41770
class WinImportHandler;
35605
41785
class CCExprResolve;
35606
41786
class CExprResolve;
35607
41787
namespace Puma {
35608
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
 
41788
 
 
41789
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41790
class CT_ArgNameList : public CT_ArgDeclList {
 
41791
#line 41792 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41792
  friend class ::WinIfExists;
35609
41793
  friend class ::WinImportHandler;
35610
41794
  friend class ::WinMacros;
35611
41795
  friend class ::CMatchSyntax;
35624
41808
  friend class ::CCExprResolve;
35625
41809
  friend class ::CExprResolve;
35626
41810
 
 
41811
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41812
 
35627
41813
public:
35628
41814
  CT_ArgNameList () : CT_ArgDeclList () {}
35629
41815
  static const char *NodeId ();
35630
41816
  const char *NodeName () const { return NodeId (); }
35631
41817
};
35632
41818
 
 
41819
 
 
41820
#line 41821 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35633
41821
} // closed Puma
35634
41822
class WinIfExists;
35635
41823
class WinImportHandler;
35650
41838
class CCExprResolve;
35651
41839
class CExprResolve;
35652
41840
namespace Puma {
35653
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
41841
 
 
41842
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41843
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
41844
#line 41845 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41845
  friend class ::WinIfExists;
35654
41846
  friend class ::WinImportHandler;
35655
41847
  friend class ::WinMacros;
35656
41848
  friend class ::CMatchSyntax;
35669
41861
  friend class ::CCExprResolve;
35670
41862
  friend class ::CExprResolve;
35671
41863
 
 
41864
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41865
 
35672
41866
  CTree *sons[3]; // ns, name, members
35673
41867
 
35674
41868
public:
35691
41885
  }
35692
41886
};
35693
41887
 
 
41888
 
 
41889
#line 41890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35694
41890
} // closed Puma
35695
41891
class WinIfExists;
35696
41892
class WinImportHandler;
35711
41907
class CCExprResolve;
35712
41908
class CExprResolve;
35713
41909
namespace Puma {
35714
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
41910
 
 
41911
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41912
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
41913
#line 41914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41914
  friend class ::WinIfExists;
35715
41915
  friend class ::WinImportHandler;
35716
41916
  friend class ::WinMacros;
35717
41917
  friend class ::CMatchSyntax;
35730
41930
  friend class ::CCExprResolve;
35731
41931
  friend class ::CExprResolve;
35732
41932
 
 
41933
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41934
 
35733
41935
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
35734
41936
 
35735
41937
public:
35748
41950
  }
35749
41951
};
35750
41952
 
 
41953
 
 
41954
#line 41955 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35751
41955
} // closed Puma
35752
41956
class WinIfExists;
35753
41957
class WinImportHandler;
35768
41972
class CCExprResolve;
35769
41973
class CExprResolve;
35770
41974
namespace Puma {
35771
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
 
41975
 
 
41976
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41977
class CT_UsingDirective : public CT_Decl {
 
41978
#line 41979 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
41979
  friend class ::WinIfExists;
35772
41980
  friend class ::WinImportHandler;
35773
41981
  friend class ::WinMacros;
35774
41982
  friend class ::CMatchSyntax;
35787
41995
  friend class ::CCExprResolve;
35788
41996
  friend class ::CExprResolve;
35789
41997
 
 
41998
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
41999
 
35790
42000
  CTree *sons[4]; // using, ns, name, semi_colon
35791
42001
 
35792
42002
public:
35809
42019
/*                                                                           */
35810
42020
/*****************************************************************************/
35811
42021
 
 
42022
 
 
42023
#line 42024 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35812
42024
} // closed Puma
35813
42025
class WinIfExists;
35814
42026
class WinImportHandler;
35829
42041
class CCExprResolve;
35830
42042
class CExprResolve;
35831
42043
namespace Puma {
35832
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
 
42044
 
 
42045
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42046
class CT_Declarator : public CTree {
 
42047
#line 42048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42048
  friend class ::WinIfExists;
35833
42049
  friend class ::WinImportHandler;
35834
42050
  friend class ::WinMacros;
35835
42051
  friend class ::CMatchSyntax;
35848
42064
  friend class ::CCExprResolve;
35849
42065
  friend class ::CExprResolve;
35850
42066
 
 
42067
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42068
 
35851
42069
protected:
35852
42070
  CT_Declarator () {}
35853
42071
 
35860
42078
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
35861
42079
};
35862
42080
 
 
42081
 
 
42082
#line 42083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35863
42083
} // closed Puma
35864
42084
class WinIfExists;
35865
42085
class WinImportHandler;
35880
42100
class CCExprResolve;
35881
42101
class CExprResolve;
35882
42102
namespace Puma {
35883
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
42103
 
 
42104
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42105
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
42106
#line 42107 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42107
  friend class ::WinIfExists;
35884
42108
  friend class ::WinImportHandler;
35885
42109
  friend class ::WinMacros;
35886
42110
  friend class ::CMatchSyntax;
35899
42123
  friend class ::CCExprResolve;
35900
42124
  friend class ::CExprResolve;
35901
42125
 
 
42126
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42127
 
35902
42128
  CTree *sons[2]; // declarator, init
35903
42129
  CTree *obj_decl;
35904
42130
 
35921
42147
  }
35922
42148
};
35923
42149
 
 
42150
 
 
42151
#line 42152 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35924
42152
} // closed Puma
35925
42153
class WinIfExists;
35926
42154
class WinImportHandler;
35941
42169
class CCExprResolve;
35942
42170
class CExprResolve;
35943
42171
namespace Puma {
35944
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
42172
 
 
42173
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42174
class CT_BracedDeclarator : public CT_Declarator {
 
42175
#line 42176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42176
  friend class ::WinIfExists;
35945
42177
  friend class ::WinImportHandler;
35946
42178
  friend class ::WinMacros;
35947
42179
  friend class ::CMatchSyntax;
35960
42192
  friend class ::CCExprResolve;
35961
42193
  friend class ::CExprResolve;
35962
42194
 
 
42195
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42196
 
35963
42197
  CTree *sons[4]; // open, win_specs, declarator, close
35964
42198
 
35965
42199
public:
35979
42213
  }
35980
42214
};
35981
42215
 
 
42216
 
 
42217
#line 42218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
35982
42218
} // closed Puma
35983
42219
class WinIfExists;
35984
42220
class WinImportHandler;
35999
42235
class CCExprResolve;
36000
42236
class CExprResolve;
36001
42237
namespace Puma {
36002
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
 
42238
 
 
42239
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42240
class CT_ArrayDelimiter : public CTree {
 
42241
#line 42242 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42242
  friend class ::WinIfExists;
36003
42243
  friend class ::WinImportHandler;
36004
42244
  friend class ::WinMacros;
36005
42245
  friend class ::CMatchSyntax;
36018
42258
  friend class ::CCExprResolve;
36019
42259
  friend class ::CExprResolve;
36020
42260
 
 
42261
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42262
 
36021
42263
  CTree *sons[4]; // star, static, quals, expr
36022
42264
  bool pos0;
36023
42265
 
36038
42280
  }
36039
42281
};
36040
42282
 
 
42283
 
 
42284
#line 42285 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36041
42285
} // closed Puma
36042
42286
class WinIfExists;
36043
42287
class WinImportHandler;
36058
42302
class CCExprResolve;
36059
42303
class CExprResolve;
36060
42304
namespace Puma {
36061
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
 
42305
 
 
42306
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42307
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
42308
#line 42309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42309
  friend class ::WinIfExists;
36062
42310
  friend class ::WinImportHandler;
36063
42311
  friend class ::WinMacros;
36064
42312
  friend class ::CMatchSyntax;
36077
42325
  friend class ::CCExprResolve;
36078
42326
  friend class ::CExprResolve;
36079
42327
 
 
42328
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42329
 
36080
42330
  CTree *sons[4]; // declarator, open, delim, close
36081
42331
 
36082
42332
public:
36098
42348
  CSemValue *SemValue () const { return (CSemValue*)this; }
36099
42349
};
36100
42350
 
 
42351
 
 
42352
#line 42353 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36101
42353
} // closed Puma
36102
42354
class WinIfExists;
36103
42355
class WinImportHandler;
36118
42370
class CCExprResolve;
36119
42371
class CExprResolve;
36120
42372
namespace Puma {
36121
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
42373
 
 
42374
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42375
class CT_FctDeclarator : public CT_Declarator {
 
42376
#line 42377 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42377
  friend class ::WinIfExists;
36122
42378
  friend class ::WinImportHandler;
36123
42379
  friend class ::WinMacros;
36124
42380
  friend class ::CMatchSyntax;
36137
42393
  friend class ::CCExprResolve;
36138
42394
  friend class ::CExprResolve;
36139
42395
 
 
42396
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42397
 
36140
42398
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
36141
42399
 
36142
42400
public:
36156
42414
  }
36157
42415
};
36158
42416
 
 
42417
 
 
42418
#line 42419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36159
42419
} // closed Puma
36160
42420
class WinIfExists;
36161
42421
class WinImportHandler;
36176
42436
class CCExprResolve;
36177
42437
class CExprResolve;
36178
42438
namespace Puma {
36179
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
42439
 
 
42440
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42441
class CT_RefDeclarator : public CT_Declarator {
 
42442
#line 42443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42443
  friend class ::WinIfExists;
36180
42444
  friend class ::WinImportHandler;
36181
42445
  friend class ::WinMacros;
36182
42446
  friend class ::CMatchSyntax;
36195
42459
  friend class ::CCExprResolve;
36196
42460
  friend class ::CExprResolve;
36197
42461
 
 
42462
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42463
 
36198
42464
  CTree *sons[2]; // ref, declarator
36199
42465
 
36200
42466
public:
36209
42475
  }
36210
42476
};
36211
42477
 
 
42478
 
 
42479
#line 42480 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36212
42480
} // closed Puma
36213
42481
class WinIfExists;
36214
42482
class WinImportHandler;
36229
42497
class CCExprResolve;
36230
42498
class CExprResolve;
36231
42499
namespace Puma {
36232
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
42500
 
 
42501
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42502
class CT_PtrDeclarator : public CT_Declarator {
 
42503
#line 42504 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42504
  friend class ::WinIfExists;
36233
42505
  friend class ::WinImportHandler;
36234
42506
  friend class ::WinMacros;
36235
42507
  friend class ::CMatchSyntax;
36248
42520
  friend class ::CCExprResolve;
36249
42521
  friend class ::CExprResolve;
36250
42522
 
 
42523
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42524
 
36251
42525
  CTree *sons[3]; // ptr, cv_quals, declarator
36252
42526
 
36253
42527
public:
36265
42539
  }
36266
42540
};
36267
42541
 
 
42542
 
 
42543
#line 42544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36268
42544
} // closed Puma
36269
42545
class WinIfExists;
36270
42546
class WinImportHandler;
36285
42561
class CCExprResolve;
36286
42562
class CExprResolve;
36287
42563
namespace Puma {
36288
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
42564
 
 
42565
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42566
class CT_MembPtrDeclarator : public CT_Declarator {
 
42567
#line 42568 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42568
  friend class ::WinIfExists;
36289
42569
  friend class ::WinImportHandler;
36290
42570
  friend class ::WinMacros;
36291
42571
  friend class ::CMatchSyntax;
36304
42584
  friend class ::CCExprResolve;
36305
42585
  friend class ::CExprResolve;
36306
42586
 
 
42587
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42588
 
36307
42589
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
36308
42590
 
36309
42591
public:
36322
42604
  }
36323
42605
};
36324
42606
 
 
42607
 
 
42608
#line 42609 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36325
42609
} // closed Puma
36326
42610
class WinIfExists;
36327
42611
class WinImportHandler;
36342
42626
class CCExprResolve;
36343
42627
class CExprResolve;
36344
42628
namespace Puma {
36345
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
42629
 
 
42630
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42631
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
42632
#line 42633 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42633
  friend class ::WinIfExists;
36346
42634
  friend class ::WinImportHandler;
36347
42635
  friend class ::WinMacros;
36348
42636
  friend class ::CMatchSyntax;
36361
42649
  friend class ::CCExprResolve;
36362
42650
  friend class ::CExprResolve;
36363
42651
 
 
42652
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42653
 
36364
42654
  CTree *sons[3]; // declarator, colon, expr
36365
42655
 
36366
42656
public:
36386
42676
/*                                                                           */
36387
42677
/*****************************************************************************/
36388
42678
 
 
42679
 
 
42680
#line 42681 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36389
42681
} // closed Puma
36390
42682
class WinIfExists;
36391
42683
class WinImportHandler;
36406
42698
class CCExprResolve;
36407
42699
class CExprResolve;
36408
42700
namespace Puma {
36409
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
 
42701
 
 
42702
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42703
class CT_Statement : public CTree {
 
42704
#line 42705 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42705
  friend class ::WinIfExists;
36410
42706
  friend class ::WinImportHandler;
36411
42707
  friend class ::WinMacros;
36412
42708
  friend class ::CMatchSyntax;
36424
42720
  friend class ::PragmaOnce;
36425
42721
  friend class ::CCExprResolve;
36426
42722
  friend class ::CExprResolve;
 
42723
 
 
42724
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
36427
42725
 
36428
42726
protected:
36429
42727
  CT_Statement () {}
36430
42728
};
36431
42729
 
 
42730
 
 
42731
#line 42732 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36432
42732
} // closed Puma
36433
42733
class WinIfExists;
36434
42734
class WinImportHandler;
36449
42749
class CCExprResolve;
36450
42750
class CExprResolve;
36451
42751
namespace Puma {
36452
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
 
42752
 
 
42753
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42754
class CT_LabelStmt : public CT_Statement {
 
42755
#line 42756 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42756
  friend class ::WinIfExists;
36453
42757
  friend class ::WinImportHandler;
36454
42758
  friend class ::WinMacros;
36455
42759
  friend class ::CMatchSyntax;
36468
42772
  friend class ::CCExprResolve;
36469
42773
  friend class ::CExprResolve;
36470
42774
 
 
42775
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42776
 
36471
42777
  CTree *sons[3]; // id, colon, stmt
36472
42778
 
36473
42779
public:
36485
42791
  }
36486
42792
};
36487
42793
 
 
42794
 
 
42795
#line 42796 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36488
42796
} // closed Puma
36489
42797
class WinIfExists;
36490
42798
class WinImportHandler;
36505
42813
class CCExprResolve;
36506
42814
class CExprResolve;
36507
42815
namespace Puma {
36508
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
 
42816
 
 
42817
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42818
class CT_DefaultStmt : public CT_Statement {
 
42819
#line 42820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42820
  friend class ::WinIfExists;
36509
42821
  friend class ::WinImportHandler;
36510
42822
  friend class ::WinMacros;
36511
42823
  friend class ::CMatchSyntax;
36524
42836
  friend class ::CCExprResolve;
36525
42837
  friend class ::CExprResolve;
36526
42838
 
 
42839
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42840
 
36527
42841
  CTree *sons[3]; // keyword, colon, stmt
36528
42842
 
36529
42843
public:
36540
42854
  }
36541
42855
};
36542
42856
 
 
42857
 
 
42858
#line 42859 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36543
42859
} // closed Puma
36544
42860
class WinIfExists;
36545
42861
class WinImportHandler;
36560
42876
class CCExprResolve;
36561
42877
class CExprResolve;
36562
42878
namespace Puma {
36563
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
 
42879
 
 
42880
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42881
class CT_TryStmt : public CT_Statement {
 
42882
#line 42883 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42883
  friend class ::WinIfExists;
36564
42884
  friend class ::WinImportHandler;
36565
42885
  friend class ::WinMacros;
36566
42886
  friend class ::CMatchSyntax;
36579
42899
  friend class ::CCExprResolve;
36580
42900
  friend class ::CExprResolve;
36581
42901
 
 
42902
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42903
 
36582
42904
  CTree *sons[3]; // try, stmt, handlers
36583
42905
 
36584
42906
public:
36596
42918
  }
36597
42919
};
36598
42920
 
 
42921
 
 
42922
#line 42923 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36599
42923
} // closed Puma
36600
42924
class WinIfExists;
36601
42925
class WinImportHandler;
36616
42940
class CCExprResolve;
36617
42941
class CExprResolve;
36618
42942
namespace Puma {
36619
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
 
42943
 
 
42944
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42945
class CT_CaseStmt : public CT_Statement {
 
42946
#line 42947 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
42947
  friend class ::WinIfExists;
36620
42948
  friend class ::WinImportHandler;
36621
42949
  friend class ::WinMacros;
36622
42950
  friend class ::CMatchSyntax;
36635
42963
  friend class ::CCExprResolve;
36636
42964
  friend class ::CExprResolve;
36637
42965
 
 
42966
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
42967
 
36638
42968
  CTree *sons[4]; // keyword, expr, colon, stmt
36639
42969
 
36640
42970
public:
36652
42982
  }
36653
42983
};
36654
42984
 
 
42985
 
 
42986
#line 42987 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36655
42987
} // closed Puma
36656
42988
class WinIfExists;
36657
42989
class WinImportHandler;
36672
43004
class CCExprResolve;
36673
43005
class CExprResolve;
36674
43006
namespace Puma {
36675
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
 
43007
 
 
43008
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43009
class CT_ExprStmt : public CT_Statement {
 
43010
#line 43011 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43011
  friend class ::WinIfExists;
36676
43012
  friend class ::WinImportHandler;
36677
43013
  friend class ::WinMacros;
36678
43014
  friend class ::CMatchSyntax;
36691
43027
  friend class ::CCExprResolve;
36692
43028
  friend class ::CExprResolve;
36693
43029
 
 
43030
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43031
 
36694
43032
  CTree *sons[2]; // expr, semi_colon
36695
43033
 
36696
43034
public:
36705
43043
  }
36706
43044
};
36707
43045
 
 
43046
 
 
43047
#line 43048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36708
43048
} // closed Puma
36709
43049
class WinIfExists;
36710
43050
class WinImportHandler;
36725
43065
class CCExprResolve;
36726
43066
class CExprResolve;
36727
43067
namespace Puma {
36728
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
 
43068
 
 
43069
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43070
class CT_DeclStmt : public CT_Statement {
 
43071
#line 43072 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43072
  friend class ::WinIfExists;
36729
43073
  friend class ::WinImportHandler;
36730
43074
  friend class ::WinMacros;
36731
43075
  friend class ::CMatchSyntax;
36744
43088
  friend class ::CCExprResolve;
36745
43089
  friend class ::CExprResolve;
36746
43090
 
 
43091
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43092
 
36747
43093
  CTree *_decl;
36748
43094
 
36749
43095
public:
36756
43102
   { if (old_son == _decl) _decl = new_son; }
36757
43103
};
36758
43104
 
 
43105
 
 
43106
#line 43107 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36759
43107
} // closed Puma
36760
43108
class WinIfExists;
36761
43109
class WinImportHandler;
36776
43124
class CCExprResolve;
36777
43125
class CExprResolve;
36778
43126
namespace Puma {
36779
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
43127
 
 
43128
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43129
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
43130
#line 43131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43131
  friend class ::WinIfExists;
36780
43132
  friend class ::WinImportHandler;
36781
43133
  friend class ::WinMacros;
36782
43134
  friend class ::CMatchSyntax;
36795
43147
  friend class ::CCExprResolve;
36796
43148
  friend class ::CExprResolve;
36797
43149
 
 
43150
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43151
 
36798
43152
  CTree *sons[5]; // keyword, open, cond, close, stmt
36799
43153
 
36800
43154
public:
36812
43166
  }
36813
43167
};
36814
43168
 
 
43169
 
 
43170
#line 43171 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36815
43171
} // closed Puma
36816
43172
class WinIfExists;
36817
43173
class WinImportHandler;
36832
43188
class CCExprResolve;
36833
43189
class CExprResolve;
36834
43190
namespace Puma {
36835
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
43191
 
 
43192
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43193
class CT_IfStmt : public CT_Statement, public CSemScope {
 
43194
#line 43195 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43195
  friend class ::WinIfExists;
36836
43196
  friend class ::WinImportHandler;
36837
43197
  friend class ::WinMacros;
36838
43198
  friend class ::CMatchSyntax;
36851
43211
  friend class ::CCExprResolve;
36852
43212
  friend class ::CExprResolve;
36853
43213
 
 
43214
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43215
 
36854
43216
  CTree *sons[5]; // keyword, open, cond, close, stmt
36855
43217
 
36856
43218
public:
36868
43230
  }
36869
43231
};
36870
43232
 
 
43233
 
 
43234
#line 43235 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36871
43235
} // closed Puma
36872
43236
class WinIfExists;
36873
43237
class WinImportHandler;
36888
43252
class CCExprResolve;
36889
43253
class CExprResolve;
36890
43254
namespace Puma {
36891
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
43255
 
 
43256
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43257
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
43258
#line 43259 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43259
  friend class ::WinIfExists;
36892
43260
  friend class ::WinImportHandler;
36893
43261
  friend class ::WinMacros;
36894
43262
  friend class ::CMatchSyntax;
36907
43275
  friend class ::CCExprResolve;
36908
43276
  friend class ::CExprResolve;
36909
43277
 
 
43278
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43279
 
36910
43280
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
36911
43281
 
36912
43282
public:
36927
43297
  }
36928
43298
};
36929
43299
 
 
43300
 
 
43301
#line 43302 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36930
43302
} // closed Puma
36931
43303
class WinIfExists;
36932
43304
class WinImportHandler;
36947
43319
class CCExprResolve;
36948
43320
class CExprResolve;
36949
43321
namespace Puma {
36950
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
 
43322
 
 
43323
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43324
class CT_BreakStmt : public CT_Statement {
 
43325
#line 43326 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43326
  friend class ::WinIfExists;
36951
43327
  friend class ::WinImportHandler;
36952
43328
  friend class ::WinMacros;
36953
43329
  friend class ::CMatchSyntax;
36966
43342
  friend class ::CCExprResolve;
36967
43343
  friend class ::CExprResolve;
36968
43344
 
 
43345
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43346
 
36969
43347
  CTree *sons[2]; // key, semi_colon
36970
43348
 
36971
43349
public:
36979
43357
  }
36980
43358
};
36981
43359
 
 
43360
 
 
43361
#line 43362 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
36982
43362
} // closed Puma
36983
43363
class WinIfExists;
36984
43364
class WinImportHandler;
36999
43379
class CCExprResolve;
37000
43380
class CExprResolve;
37001
43381
namespace Puma {
37002
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
 
43382
 
 
43383
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43384
class CT_ContinueStmt : public CT_Statement {
 
43385
#line 43386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43386
  friend class ::WinIfExists;
37003
43387
  friend class ::WinImportHandler;
37004
43388
  friend class ::WinMacros;
37005
43389
  friend class ::CMatchSyntax;
37018
43402
  friend class ::CCExprResolve;
37019
43403
  friend class ::CExprResolve;
37020
43404
 
 
43405
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43406
 
37021
43407
  CTree *sons[2]; // key, semi_colon
37022
43408
 
37023
43409
public:
37031
43417
  }
37032
43418
};
37033
43419
 
 
43420
 
 
43421
#line 43422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37034
43422
} // closed Puma
37035
43423
class WinIfExists;
37036
43424
class WinImportHandler;
37051
43439
class CCExprResolve;
37052
43440
class CExprResolve;
37053
43441
namespace Puma {
37054
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
 
43442
 
 
43443
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43444
class CT_GotoStmt : public CT_Statement {
 
43445
#line 43446 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43446
  friend class ::WinIfExists;
37055
43447
  friend class ::WinImportHandler;
37056
43448
  friend class ::WinMacros;
37057
43449
  friend class ::CMatchSyntax;
37070
43462
  friend class ::CCExprResolve;
37071
43463
  friend class ::CExprResolve;
37072
43464
 
 
43465
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43466
 
37073
43467
  CTree *sons[3]; // key, label, semi_colon
37074
43468
 
37075
43469
public:
37086
43480
  }
37087
43481
};
37088
43482
 
 
43483
 
 
43484
#line 43485 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37089
43485
} // closed Puma
37090
43486
class WinIfExists;
37091
43487
class WinImportHandler;
37106
43502
class CCExprResolve;
37107
43503
class CExprResolve;
37108
43504
namespace Puma {
37109
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
 
43505
 
 
43506
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43507
class CT_ReturnStmt : public CT_Statement {
 
43508
#line 43509 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43509
  friend class ::WinIfExists;
37110
43510
  friend class ::WinImportHandler;
37111
43511
  friend class ::WinMacros;
37112
43512
  friend class ::CMatchSyntax;
37125
43525
  friend class ::CCExprResolve;
37126
43526
  friend class ::CExprResolve;
37127
43527
 
 
43528
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43529
 
37128
43530
  CTree *sons[3]; // key, expr, semi_colon
37129
43531
 
37130
43532
public:
37141
43543
  }
37142
43544
};
37143
43545
 
 
43546
 
 
43547
#line 43548 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37144
43548
} // closed Puma
37145
43549
class WinIfExists;
37146
43550
class WinImportHandler;
37161
43565
class CCExprResolve;
37162
43566
class CExprResolve;
37163
43567
namespace Puma {
37164
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
43568
 
 
43569
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43570
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
43571
#line 43572 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43572
  friend class ::WinIfExists;
37165
43573
  friend class ::WinImportHandler;
37166
43574
  friend class ::WinMacros;
37167
43575
  friend class ::CMatchSyntax;
37180
43588
  friend class ::CCExprResolve;
37181
43589
  friend class ::CExprResolve;
37182
43590
 
 
43591
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43592
 
37183
43593
  CTree *sons[5]; // key, open, cond, close, stmt
37184
43594
 
37185
43595
public:
37197
43607
  }
37198
43608
};
37199
43609
 
 
43610
 
 
43611
#line 43612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37200
43612
} // closed Puma
37201
43613
class WinIfExists;
37202
43614
class WinImportHandler;
37217
43629
class CCExprResolve;
37218
43630
class CExprResolve;
37219
43631
namespace Puma {
37220
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
 
43632
 
 
43633
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43634
class CT_DoStmt : public CT_Statement {
 
43635
#line 43636 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43636
  friend class ::WinIfExists;
37221
43637
  friend class ::WinImportHandler;
37222
43638
  friend class ::WinMacros;
37223
43639
  friend class ::CMatchSyntax;
37236
43652
  friend class ::CCExprResolve;
37237
43653
  friend class ::CExprResolve;
37238
43654
 
 
43655
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43656
 
37239
43657
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
37240
43658
 
37241
43659
public:
37255
43673
  }
37256
43674
};
37257
43675
 
 
43676
 
 
43677
#line 43678 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37258
43678
} // closed Puma
37259
43679
class WinIfExists;
37260
43680
class WinImportHandler;
37275
43695
class CCExprResolve;
37276
43696
class CExprResolve;
37277
43697
namespace Puma {
37278
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
43698
 
 
43699
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43700
class CT_ForStmt : public CT_Statement, public CSemScope {
 
43701
#line 43702 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43702
  friend class ::WinIfExists;
37279
43703
  friend class ::WinImportHandler;
37280
43704
  friend class ::WinMacros;
37281
43705
  friend class ::CMatchSyntax;
37294
43718
  friend class ::CCExprResolve;
37295
43719
  friend class ::CExprResolve;
37296
43720
 
 
43721
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43722
 
37297
43723
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
37298
43724
 
37299
43725
public:
37315
43741
  }
37316
43742
};
37317
43743
 
 
43744
 
 
43745
#line 43746 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37318
43746
} // closed Puma
37319
43747
class WinIfExists;
37320
43748
class WinImportHandler;
37335
43763
class CCExprResolve;
37336
43764
class CExprResolve;
37337
43765
namespace Puma {
37338
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
43766
 
 
43767
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43768
class CT_Condition : public CT_Decl, public CSemObject {
 
43769
#line 43770 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43770
  friend class ::WinIfExists;
37339
43771
  friend class ::WinImportHandler;
37340
43772
  friend class ::WinMacros;
37341
43773
  friend class ::CMatchSyntax;
37354
43786
  friend class ::CCExprResolve;
37355
43787
  friend class ::CExprResolve;
37356
43788
 
 
43789
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43790
 
37357
43791
  CTree *sons[3]; // declspecs, declarator, init
37358
43792
 
37359
43793
public:
37380
43814
/*                                                                           */
37381
43815
/*****************************************************************************/
37382
43816
 
 
43817
 
 
43818
#line 43819 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37383
43819
} // closed Puma
37384
43820
class WinIfExists;
37385
43821
class WinImportHandler;
37400
43836
class CCExprResolve;
37401
43837
class CExprResolve;
37402
43838
namespace Puma {
37403
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
43839
 
 
43840
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43841
class CT_ClassDef : public CT_Decl, public CSemObject {
 
43842
#line 43843 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43843
  friend class ::WinIfExists;
37404
43844
  friend class ::WinImportHandler;
37405
43845
  friend class ::WinMacros;
37406
43846
  friend class ::CMatchSyntax;
37419
43859
  friend class ::CCExprResolve;
37420
43860
  friend class ::CExprResolve;
37421
43861
 
 
43862
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43863
 
37422
43864
   
 
43865
#line 43866 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43866
 
37423
43867
  struct __ac_wrapper_sons {
37424
43868
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
37425
43869
    operator A& () { return _data; }
37432
43876
    operator const void* () const { return _data; }
37433
43877
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
37434
43878
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
37435
 
  } sons; // key, name, bases, members
 
43879
  } sons
 
43880
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43881
 
 
43882
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43883
; // key, name, bases, members
37436
43884
  CTree *obj_decl;
37437
43885
 
37438
43886
public:
37439
43887
  
 
43888
#line 43889 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43889
 
37440
43890
 
37441
43891
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
37442
43892
  typedef void Result;
37472
43922
 
37473
43923
};
37474
43924
 
37475
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
 
43925
 
 
43926
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43927
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
43928
#line 43929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43929
{
37476
43930
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
37477
43931
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
37478
43932
this->__exec_old_C1(arg0, arg1, arg2);
37479
43933
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
37480
43934
 
37481
43935
}
37482
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
 
43936
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
43937
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43938
{
37483
43939
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
37484
43940
  }
37485
43941
  static const char *NodeId ();
37499
43955
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
37500
43956
  }
37501
43957
   private:
 
43958
 
 
43959
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
37502
43960
 CTree * _intro_members ;
37503
43961
public :
37504
43962
CTree * IntroMembers ( ) const { return _intro_members ; }
37505
43963
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
43964
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43965
 
 
43966
#line 43967 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43967
 
37506
43968
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
37507
43969
  typedef void Result;
37508
43970
  typedef ::Puma::CT_ClassDef That;
37530
43992
};
37531
43993
 
37532
43994
 
 
43995
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
43996
 
 
43997
#line 43998 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
43998
 
37533
43999
public:
37534
44000
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
37535
44001
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
37538
44004
 
37539
44005
}
37540
44006
 
 
44007
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44008
 
 
44009
#line 44010 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44010
 
37541
44011
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
37542
44012
  typedef void Result;
37543
44013
  typedef ::Puma::CT_ClassDef That;
37561
44031
};
37562
44032
 
37563
44033
 
 
44034
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44035
 
 
44036
#line 44037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44037
 
37564
44038
public:
37565
44039
inline ~CT_ClassDef () {
37566
44040
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
37568
44042
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
37569
44043
 
37570
44044
}
 
44045
 
 
44046
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
37571
44047
};
37572
44048
      
 
44049
 
 
44050
#line 44051 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37573
44051
} // closed Puma
37574
44052
class WinIfExists;
37575
44053
class WinImportHandler;
37590
44068
class CCExprResolve;
37591
44069
class CExprResolve;
37592
44070
namespace Puma {
37593
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
 
44071
 
 
44072
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44073
class CT_UnionDef : public CT_ClassDef {
 
44074
#line 44075 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44075
  friend class ::WinIfExists;
37594
44076
  friend class ::WinImportHandler;
37595
44077
  friend class ::WinMacros;
37596
44078
  friend class ::CMatchSyntax;
37609
44091
  friend class ::CCExprResolve;
37610
44092
  friend class ::CExprResolve;
37611
44093
 
 
44094
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44095
 
37612
44096
public:
37613
44097
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
37614
44098
  static const char *NodeId ();
37615
44099
  const char *NodeName () const { return NodeId (); }
37616
44100
};
37617
44101
      
 
44102
 
 
44103
#line 44104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37618
44104
} // closed Puma
37619
44105
class WinIfExists;
37620
44106
class WinImportHandler;
37635
44121
class CCExprResolve;
37636
44122
class CExprResolve;
37637
44123
namespace Puma {
37638
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
44124
 
 
44125
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44126
class CT_MembList : public CT_DeclList, public CSemScope {
 
44127
#line 44128 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44128
  friend class ::WinIfExists;
37639
44129
  friend class ::WinImportHandler;
37640
44130
  friend class ::WinMacros;
37641
44131
  friend class ::CMatchSyntax;
37654
44144
  friend class ::CCExprResolve;
37655
44145
  friend class ::CExprResolve;
37656
44146
 
 
44147
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44148
 
37657
44149
public:
37658
44150
  CT_MembList (int size = 10, int incr = 10) : 
37659
44151
    CT_DeclList (size, incr) {}
37661
44153
  const char *NodeName () const { return NodeId (); }
37662
44154
};
37663
44155
 
 
44156
 
 
44157
#line 44158 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37664
44158
} // closed Puma
37665
44159
class WinIfExists;
37666
44160
class WinImportHandler;
37681
44175
class CCExprResolve;
37682
44176
class CExprResolve;
37683
44177
namespace Puma {
37684
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
44178
 
 
44179
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44180
class CT_MembInitList : public CT_List, public CSemScope {
 
44181
#line 44182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44182
  friend class ::WinIfExists;
37685
44183
  friend class ::WinImportHandler;
37686
44184
  friend class ::WinMacros;
37687
44185
  friend class ::CMatchSyntax;
37700
44198
  friend class ::CCExprResolve;
37701
44199
  friend class ::CExprResolve;
37702
44200
 
 
44201
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44202
 
37703
44203
public:
37704
44204
  CT_MembInitList (int size = 2) : 
37705
44205
    CT_List (size, 2, CT_List::OPEN) {}
37707
44207
  const char *NodeName () const { return NodeId (); }
37708
44208
};
37709
44209
 
 
44210
 
 
44211
#line 44212 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37710
44212
} // closed Puma
37711
44213
class WinIfExists;
37712
44214
class WinImportHandler;
37727
44229
class CCExprResolve;
37728
44230
class CExprResolve;
37729
44231
namespace Puma {
37730
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
44232
 
 
44233
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44234
class CT_MembInit : public CT_Expression, public CSemObject {
 
44235
#line 44236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44236
  friend class ::WinIfExists;
37731
44237
  friend class ::WinImportHandler;
37732
44238
  friend class ::WinMacros;
37733
44239
  friend class ::CMatchSyntax;
37746
44252
  friend class ::CCExprResolve;
37747
44253
  friend class ::CExprResolve;
37748
44254
 
 
44255
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44256
 
37749
44257
  CTree *sons[2]; // name, init
37750
44258
 
37751
44259
public:
37762
44270
  CSemObject *SemObject () const { return (CSemObject*)this; }
37763
44271
   private:
37764
44272
  typedef CT_MembInit CCExprResolveExpr;
 
44273
 
 
44274
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
37765
44275
 public :
37766
44276
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
37767
44277
  typedef CT_MembInit CExprResolveExpr;
 
44278
 
 
44279
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
37768
44280
 public :
37769
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
37770
 
 
 
44281
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
44282
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44283
};
 
44284
 
 
44285
 
 
44286
#line 44287 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37771
44287
} // closed Puma
37772
44288
class WinIfExists;
37773
44289
class WinImportHandler;
37788
44304
class CCExprResolve;
37789
44305
class CExprResolve;
37790
44306
namespace Puma {
37791
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
 
44307
 
 
44308
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44309
class CT_BaseSpecList : public CT_List {
 
44310
#line 44311 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44311
  friend class ::WinIfExists;
37792
44312
  friend class ::WinImportHandler;
37793
44313
  friend class ::WinMacros;
37794
44314
  friend class ::CMatchSyntax;
37807
44327
  friend class ::CCExprResolve;
37808
44328
  friend class ::CExprResolve;
37809
44329
 
 
44330
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44331
 
37810
44332
public:
37811
44333
  CT_BaseSpecList (int size = 2) : 
37812
44334
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
37814
44336
  const char *NodeName () const { return NodeId (); }
37815
44337
};
37816
44338
 
 
44339
 
 
44340
#line 44341 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37817
44341
} // closed Puma
37818
44342
class WinIfExists;
37819
44343
class WinImportHandler;
37834
44358
class CCExprResolve;
37835
44359
class CExprResolve;
37836
44360
namespace Puma {
37837
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
 
44361
 
 
44362
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44363
class CT_AccessSpec : public CTree {
 
44364
#line 44365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44365
  friend class ::WinIfExists;
37838
44366
  friend class ::WinImportHandler;
37839
44367
  friend class ::WinMacros;
37840
44368
  friend class ::CMatchSyntax;
37853
44381
  friend class ::CCExprResolve;
37854
44382
  friend class ::CExprResolve;
37855
44383
 
 
44384
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44385
 
37856
44386
  CTree *sons[2]; // access, colon
37857
44387
 
37858
44388
public:
37867
44397
  }
37868
44398
};
37869
44399
 
 
44400
 
 
44401
#line 44402 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37870
44402
} // closed Puma
37871
44403
class WinIfExists;
37872
44404
class WinImportHandler;
37887
44419
class CCExprResolve;
37888
44420
class CExprResolve;
37889
44421
namespace Puma {
37890
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
 
44422
 
 
44423
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44424
class CT_BaseSpec : public CTree {
 
44425
#line 44426 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44426
  friend class ::WinIfExists;
37891
44427
  friend class ::WinImportHandler;
37892
44428
  friend class ::WinMacros;
37893
44429
  friend class ::CMatchSyntax;
37906
44442
  friend class ::CCExprResolve;
37907
44443
  friend class ::CExprResolve;
37908
44444
 
 
44445
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44446
 
37909
44447
  CTree *sons[3]; // virtual, access, name
37910
44448
 
37911
44449
public:
37925
44463
  }
37926
44464
};
37927
44465
 
 
44466
 
 
44467
#line 44468 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37928
44468
} // closed Puma
37929
44469
class WinIfExists;
37930
44470
class WinImportHandler;
37945
44485
class CCExprResolve;
37946
44486
class CExprResolve;
37947
44487
namespace Puma {
37948
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
 
44488
 
 
44489
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44490
class CT_AccessDecl : public CT_Decl {
 
44491
#line 44492 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44492
  friend class ::WinIfExists;
37949
44493
  friend class ::WinImportHandler;
37950
44494
  friend class ::WinMacros;
37951
44495
  friend class ::CMatchSyntax;
37964
44508
  friend class ::CCExprResolve;
37965
44509
  friend class ::CExprResolve;
37966
44510
 
 
44511
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44512
 
37967
44513
  CTree *sons[2]; // name, semi_colon
37968
44514
 
37969
44515
public:
37978
44524
  }
37979
44525
};
37980
44526
 
 
44527
 
 
44528
#line 44529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
37981
44529
} // closed Puma
37982
44530
class WinIfExists;
37983
44531
class WinImportHandler;
37998
44546
class CCExprResolve;
37999
44547
class CExprResolve;
38000
44548
namespace Puma {
38001
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
 
44549
 
 
44550
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44551
class CT_UsingDecl : public CT_AccessDecl {
 
44552
#line 44553 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44553
  friend class ::WinIfExists;
38002
44554
  friend class ::WinImportHandler;
38003
44555
  friend class ::WinMacros;
38004
44556
  friend class ::CMatchSyntax;
38017
44569
  friend class ::CCExprResolve;
38018
44570
  friend class ::CExprResolve;
38019
44571
 
 
44572
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44573
 
38020
44574
  CTree *sons[2]; // using, typename
38021
44575
 
38022
44576
public:
38047
44601
/*                                                                           */
38048
44602
/*****************************************************************************/
38049
44603
 
 
44604
 
 
44605
#line 44606 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38050
44606
} // closed Puma
38051
44607
class WinIfExists;
38052
44608
class WinImportHandler;
38067
44623
class CCExprResolve;
38068
44624
class CExprResolve;
38069
44625
namespace Puma {
38070
 
class CT_Any : public CTree {  friend class ::WinIfExists;
 
44626
 
 
44627
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44628
class CT_Any : public CTree {
 
44629
#line 44630 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44630
  friend class ::WinIfExists;
38071
44631
  friend class ::WinImportHandler;
38072
44632
  friend class ::WinMacros;
38073
44633
  friend class ::CMatchSyntax;
38086
44646
  friend class ::CCExprResolve;
38087
44647
  friend class ::CExprResolve;
38088
44648
 
 
44649
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44650
 
38089
44651
  CTree *sons[2]; // keyword, extension
38090
44652
 
38091
44653
public:
38101
44663
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
38102
44664
};
38103
44665
 
 
44666
 
 
44667
#line 44668 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38104
44668
} // closed Puma
38105
44669
class WinIfExists;
38106
44670
class WinImportHandler;
38121
44685
class CCExprResolve;
38122
44686
class CExprResolve;
38123
44687
namespace Puma {
38124
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
 
44688
 
 
44689
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44690
class CT_AnyList : public CT_Any {
 
44691
#line 44692 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44692
  friend class ::WinIfExists;
38125
44693
  friend class ::WinImportHandler;
38126
44694
  friend class ::WinMacros;
38127
44695
  friend class ::CMatchSyntax;
38140
44708
  friend class ::CCExprResolve;
38141
44709
  friend class ::CExprResolve;
38142
44710
 
 
44711
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44712
 
38143
44713
public:
38144
44714
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
38145
44715
  static const char *NodeId ();
38146
44716
  const char *NodeName () const { return NodeId (); }
38147
44717
};
38148
44718
 
 
44719
 
 
44720
#line 44721 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38149
44721
} // closed Puma
38150
44722
class WinIfExists;
38151
44723
class WinImportHandler;
38166
44738
class CCExprResolve;
38167
44739
class CExprResolve;
38168
44740
namespace Puma {
38169
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
 
44741
 
 
44742
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44743
class CT_AnyExtension : public CTree, public CSemValue {
 
44744
#line 44745 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44745
  friend class ::WinIfExists;
38170
44746
  friend class ::WinImportHandler;
38171
44747
  friend class ::WinMacros;
38172
44748
  friend class ::CMatchSyntax;
38185
44761
  friend class ::CCExprResolve;
38186
44762
  friend class ::CExprResolve;
38187
44763
 
 
44764
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44765
 
38188
44766
  CTree *sons[5]; // open, string, comma, cond, close
38189
44767
 
38190
44768
public:
38207
44785
  CSemValue *SemValue () const { return (CSemValue*)this; }
38208
44786
};
38209
44787
 
 
44788
 
 
44789
#line 44790 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38210
44790
} // closed Puma
38211
44791
class WinIfExists;
38212
44792
class WinImportHandler;
38227
44807
class CCExprResolve;
38228
44808
class CExprResolve;
38229
44809
namespace Puma {
38230
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
 
44810
 
 
44811
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44812
class CT_AnyCondition : public CTree {
 
44813
#line 44814 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44814
  friend class ::WinIfExists;
38231
44815
  friend class ::WinImportHandler;
38232
44816
  friend class ::WinMacros;
38233
44817
  friend class ::CMatchSyntax;
38246
44830
  friend class ::CCExprResolve;
38247
44831
  friend class ::CExprResolve;
38248
44832
 
 
44833
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44834
 
38249
44835
  CTree *sons[3]; // arg1, arg2, arg3
38250
44836
 
38251
44837
public:
38265
44851
} // namespace Puma
38266
44852
 
38267
44853
#endif /* __CTree_h__ */
38268
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
44854
 
 
44855
#line 44856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44856
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
44857
 
 
44858
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
44859
 
 
44860
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
38269
44861
namespace Puma {
38270
44862
 
38271
44863
 
 
44864
 
 
44865
#line 44866 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38272
44866
} // closed Puma
38273
44867
class WinIfExists;
38274
44868
class WinImportHandler;
38289
44883
class CCExprResolve;
38290
44884
class CExprResolve;
38291
44885
namespace Puma {
38292
 
class CT_AdviceDecl : public CT_Decl {  friend class ::WinIfExists;
 
44886
 
 
44887
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
44888
class CT_AdviceDecl : public CT_Decl {
 
44889
#line 44890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44890
  friend class ::WinIfExists;
38293
44891
  friend class ::WinImportHandler;
38294
44892
  friend class ::WinMacros;
38295
44893
  friend class ::CMatchSyntax;
38308
44906
  friend class ::CCExprResolve;
38309
44907
  friend class ::CExprResolve;
38310
44908
 
 
44909
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
44910
 
38311
44911
  CTree *_advice;    // CT_Token
38312
44912
  CTree *_pointcut;
38313
44913
  CTree *_colon;     // CT_Token
38338
44938
  CTree *Decl () const { return _decl; }
38339
44939
};
38340
44940
 
 
44941
 
 
44942
#line 44943 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38341
44943
} // closed Puma
38342
44944
class WinIfExists;
38343
44945
class WinImportHandler;
38358
44960
class CCExprResolve;
38359
44961
class CExprResolve;
38360
44962
namespace Puma {
38361
 
class CT_OrderList : public CT_List {  friend class ::WinIfExists;
 
44963
 
 
44964
#line 58 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
44965
class CT_OrderList : public CT_List {
 
44966
#line 44967 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
44967
  friend class ::WinIfExists;
38362
44968
  friend class ::WinImportHandler;
38363
44969
  friend class ::WinMacros;
38364
44970
  friend class ::CMatchSyntax;
38377
44983
  friend class ::CCExprResolve;
38378
44984
  friend class ::CExprResolve;
38379
44985
 
 
44986
#line 58 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
44987
 
38380
44988
public:
38381
44989
  CT_OrderList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
38382
44990
  static const char *NodeId ();
38383
44991
  const char *NodeName () const { return NodeId (); }
38384
44992
};
38385
44993
 
 
44994
 
 
44995
#line 44996 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38386
44996
} // closed Puma
38387
44997
class WinIfExists;
38388
44998
class WinImportHandler;
38403
45013
class CCExprResolve;
38404
45014
class CExprResolve;
38405
45015
namespace Puma {
38406
 
class CT_OrderDecl : public CTree {  friend class ::WinIfExists;
 
45016
 
 
45017
#line 65 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45018
class CT_OrderDecl : public CTree {
 
45019
#line 45020 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45020
  friend class ::WinIfExists;
38407
45021
  friend class ::WinImportHandler;
38408
45022
  friend class ::WinMacros;
38409
45023
  friend class ::CMatchSyntax;
38422
45036
  friend class ::CCExprResolve;
38423
45037
  friend class ::CExprResolve;
38424
45038
 
 
45039
#line 65 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45040
 
38425
45041
  CTree *_order;
38426
45042
  CTree *_order_list;
38427
45043
  CTree *_semi_colon;
38447
45063
  CT_OrderList *OrderList () const { return (CT_OrderList*)_order_list; }
38448
45064
};
38449
45065
 
 
45066
 
 
45067
#line 45068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38450
45068
} // closed Puma
38451
45069
class WinIfExists;
38452
45070
class WinImportHandler;
38467
45085
class CCExprResolve;
38468
45086
class CExprResolve;
38469
45087
namespace Puma {
38470
 
class CT_PointcutDecl : public CT_Decl {  friend class ::WinIfExists;
 
45088
 
 
45089
#line 91 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45090
class CT_PointcutDecl : public CT_Decl {
 
45091
#line 45092 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45092
  friend class ::WinIfExists;
38471
45093
  friend class ::WinImportHandler;
38472
45094
  friend class ::WinMacros;
38473
45095
  friend class ::CMatchSyntax;
38486
45108
  friend class ::CCExprResolve;
38487
45109
  friend class ::CExprResolve;
38488
45110
 
 
45111
#line 91 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45112
 
38489
45113
  CTree *_pointcut;    // CT_Token
38490
45114
  CTree *_decl;
38491
45115
 
38508
45132
  CTree *Decl () const { return _decl; }
38509
45133
};
38510
45134
 
 
45135
 
 
45136
#line 45137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38511
45137
} // closed Puma
38512
45138
class WinIfExists;
38513
45139
class WinImportHandler;
38528
45154
class CCExprResolve;
38529
45155
class CExprResolve;
38530
45156
namespace Puma {
38531
 
class CT_Intro : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
45157
 
 
45158
#line 114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45159
class CT_Intro : public CT_List, public CSemScope {
 
45160
#line 45161 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45161
  friend class ::WinIfExists;
38532
45162
  friend class ::WinImportHandler;
38533
45163
  friend class ::WinMacros;
38534
45164
  friend class ::CMatchSyntax;
38547
45177
  friend class ::CCExprResolve;
38548
45178
  friend class ::CExprResolve;
38549
45179
 
 
45180
#line 114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45181
 
38550
45182
  // indices of aspect or slice names in introduction
38551
45183
  Array<int> _name_indices;    // start index
38552
45184
  Array<int> _name_to_indices; // end index
38582
45214
  bool NameQual (int i) const { return _name_qual.lookup (i); }
38583
45215
};
38584
45216
 
 
45217
 
 
45218
#line 45219 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38585
45219
} // closed Puma
38586
45220
class WinIfExists;
38587
45221
class WinImportHandler;
38602
45236
class CCExprResolve;
38603
45237
class CExprResolve;
38604
45238
namespace Puma {
38605
 
class CT_ClassSliceDecl : public CTree, public CSemObject {  friend class ::WinIfExists;
 
45239
 
 
45240
#line 150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45241
class CT_ClassSliceDecl : public CTree, public CSemObject {
 
45242
#line 45243 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45243
  friend class ::WinIfExists;
38606
45244
  friend class ::WinImportHandler;
38607
45245
  friend class ::WinMacros;
38608
45246
  friend class ::CMatchSyntax;
38621
45259
  friend class ::CCExprResolve;
38622
45260
  friend class ::CExprResolve;
38623
45261
 
 
45262
#line 150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45263
 
38624
45264
  CTree *sons[6]; // SLICE? <key>? <name>? <baseclasses>? <members> ;
38625
45265
public:
38626
45266
  CT_ClassSliceDecl (CTree *sl, CTree *k, CTree *n, CTree *b, CTree *m, CTree *se) {
38639
45279
  CT_Intro *members () const { return (CT_Intro*)sons[4]; }
38640
45280
};
38641
45281
 
 
45282
 
 
45283
#line 45284 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38642
45284
} // closed Puma
38643
45285
class WinIfExists;
38644
45286
class WinImportHandler;
38659
45301
class CCExprResolve;
38660
45302
class CExprResolve;
38661
45303
namespace Puma {
38662
 
class CT_SliceRef : public CTree {  friend class ::WinIfExists;
 
45304
 
 
45305
#line 169 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45306
class CT_SliceRef : public CTree {
 
45307
#line 45308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45308
  friend class ::WinIfExists;
38663
45309
  friend class ::WinImportHandler;
38664
45310
  friend class ::WinMacros;
38665
45311
  friend class ::CMatchSyntax;
38678
45324
  friend class ::CCExprResolve;
38679
45325
  friend class ::CExprResolve;
38680
45326
 
 
45327
#line 169 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACTree.h"
 
45328
 
38681
45329
  CTree *sons[3];
38682
45330
public:
38683
45331
  CT_SliceRef (CTree *sl, CTree *n, CTree *se) {
38697
45345
} // namespace Puma
38698
45346
 
38699
45347
#endif /* __ACTree_h__ */
 
45348
 
 
45349
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACClassDatabase.h"
38700
45350
// This file is part of PUMA.
38701
45351
// Copyright (C) 1999-2003  The PUMA developer team.
38702
45352
//                                                                
38719
45369
#define __ACClassDatabase_h__
38720
45370
 
38721
45371
// #include "Puma/CClassDatabase.h"
 
45372
 
 
45373
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACClassDatabase.h"
38722
45374
using std::ostream;
38723
45375
using std::endl;
38724
45376
 
38740
45392
/** \class ACClassDatabase ACClassDatabase.h Puma/infos/acinfos/ACClassDatabase.h
38741
45393
 *  An ACClassDatabase object is an AspectC++ specific database of all  
38742
45394
 *  aspect, slice, and pointcut info objects. */
 
45395
 
 
45396
#line 45397 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38743
45397
} // closed Puma
38744
45398
class WinIfExists;
38745
45399
class WinImportHandler;
38760
45414
class CCExprResolve;
38761
45415
class CExprResolve;
38762
45416
namespace Puma {
38763
 
class ACClassDatabase {  friend class ::WinIfExists;
 
45417
 
 
45418
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACClassDatabase.h"
 
45419
class ACClassDatabase {
 
45420
#line 45421 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45421
  friend class ::WinIfExists;
38764
45422
  friend class ::WinImportHandler;
38765
45423
  friend class ::WinMacros;
38766
45424
  friend class ::CMatchSyntax;
38779
45437
  friend class ::CCExprResolve;
38780
45438
  friend class ::CExprResolve;
38781
45439
 
 
45440
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACClassDatabase.h"
 
45441
 
38782
45442
  Array<ACAspectInfo*>   _aspect;   // index of aspects
38783
45443
  Array<ACPointcutInfo*> _pointcut; // index of pointcuts
38784
45444
  Array<ACSliceInfo*>    _slice;    // index of slices
38856
45516
} // namespace Puma
38857
45517
 
38858
45518
#endif /* __ACClassDatabase_h__ */
 
45519
 
 
45520
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAspectInfo.h"
38859
45521
// This file is part of PUMA.
38860
45522
// Copyright (C) 1999-2003  The PUMA developer team.
38861
45523
//                                                                
38880
45542
#include <set>
38881
45543
using std::set;
38882
45544
 
 
45545
 
 
45546
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassInfo.h"
38883
45547
// This file is part of PUMA.
38884
45548
// Copyright (C) 1999-2003  The PUMA developer team.
38885
45549
//                                                                
38904
45568
// class/struct info 
38905
45569
// knows its base and derived classes
38906
45570
 
 
45571
 
 
45572
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecord.h"
38907
45573
// This file is part of PUMA.
38908
45574
// Copyright (C) 1999-2003  The PUMA developer team.
38909
45575
//                                                                
38927
45593
 
38928
45594
// base class of class and union infos
38929
45595
 
 
45596
 
 
45597
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecord.h"
38930
45598
namespace Puma {
38931
45599
 
38932
45600
 
38933
45601
class CTemplateInfo;
38934
45602
 
 
45603
 
 
45604
#line 45605 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
38935
45605
} // closed Puma
38936
45606
class WinIfExists;
38937
45607
class WinImportHandler;
38952
45622
class CCExprResolve;
38953
45623
class CExprResolve;
38954
45624
namespace Puma {
38955
 
class CRecord : public CStructure {  friend class ::WinIfExists;
 
45625
 
 
45626
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecord.h"
 
45627
class CRecord : public CStructure {
 
45628
#line 45629 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45629
  friend class ::WinIfExists;
38956
45630
  friend class ::WinImportHandler;
38957
45631
  friend class ::WinMacros;
38958
45632
  friend class ::CMatchSyntax;
38971
45645
  friend class ::CCExprResolve;
38972
45646
  friend class ::CExprResolve;
38973
45647
 
 
45648
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecord.h"
 
45649
 
38974
45650
//  // classes/unions using this as/in an attribute.
38975
45651
//  Array<CObjectInfo*> _Referer;     
38976
45652
//  // classes/unions/enums used by this class/union as/in an attribute.
39081
45757
} // namespace Puma
39082
45758
 
39083
45759
#endif /* __CRecord_h__ */
 
45760
 
 
45761
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBaseClassInfo.h"
39084
45762
// This file is part of PUMA.
39085
45763
// Copyright (C) 1999-2003  The PUMA developer team.
39086
45764
//                                                                
39104
45782
 
39105
45783
// base class info (used by CClassInfo)
39106
45784
 
 
45785
 
 
45786
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeRequest.h"
39107
45787
// This file is part of PUMA.
39108
45788
// Copyright (C) 1999-2003  The PUMA developer team.
39109
45789
//                                                                
39128
45808
// provide a possibility to store the scope in which 
39129
45809
// an entity was declared (if it's not a scope itself)
39130
45810
 
 
45811
 
 
45812
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeRequest.h"
39131
45813
namespace Puma {
39132
45814
 
39133
45815
 
39134
45816
class CScopeInfo;
39135
45817
 
 
45818
 
 
45819
#line 45820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
39136
45820
} // closed Puma
39137
45821
class WinIfExists;
39138
45822
class WinImportHandler;
39153
45837
class CCExprResolve;
39154
45838
class CExprResolve;
39155
45839
namespace Puma {
39156
 
class CScopeRequest : public CObjectInfo {  friend class ::WinIfExists;
 
45840
 
 
45841
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeRequest.h"
 
45842
class CScopeRequest : public CObjectInfo {
 
45843
#line 45844 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45844
  friend class ::WinIfExists;
39157
45845
  friend class ::WinImportHandler;
39158
45846
  friend class ::WinMacros;
39159
45847
  friend class ::CMatchSyntax;
39172
45860
  friend class ::CCExprResolve;
39173
45861
  friend class ::CExprResolve;
39174
45862
 
 
45863
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScopeRequest.h"
 
45864
 
39175
45865
  CScopeInfo *_Scope;
39176
45866
 
39177
45867
protected:
39200
45890
} // namespace Puma
39201
45891
 
39202
45892
#endif /* __CScopeRequest_h__ */
 
45893
 
 
45894
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBaseClassInfo.h"
39203
45895
namespace Puma {
39204
45896
 
39205
45897
class CClassInfo;
39211
45903
 
39212
45904
/** \class CBaseClassInfo CBaseClassInfo.h Puma/infos/CBaseClassInfo.h
39213
45905
 *  A CBaseClassInfo object represents a base class of a class. */
 
45906
 
 
45907
#line 45908 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
39214
45908
} // closed Puma
39215
45909
class WinIfExists;
39216
45910
class WinImportHandler;
39231
45925
class CCExprResolve;
39232
45926
class CExprResolve;
39233
45927
namespace Puma {
39234
 
class CBaseClassInfo : public CScopeRequest {  friend class ::WinIfExists;
 
45928
 
 
45929
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBaseClassInfo.h"
 
45930
class CBaseClassInfo : public CScopeRequest {
 
45931
#line 45932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
45932
  friend class ::WinIfExists;
39235
45933
  friend class ::WinImportHandler;
39236
45934
  friend class ::WinMacros;
39237
45935
  friend class ::CMatchSyntax;
39250
45948
  friend class ::CCExprResolve;
39251
45949
  friend class ::CExprResolve;
39252
45950
 
 
45951
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBaseClassInfo.h"
 
45952
 
39253
45953
  /** the info object of the base class */
39254
45954
  CClassInfo        *_Class;
39255
45955
  /** the info object of the pseudo instance if the base class is a pseudo i. */
39290
45990
} // namespace Puma
39291
45991
 
39292
45992
#endif /* __CBaseClassInfo_h__ */
 
45993
 
 
45994
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassInfo.h"
39293
45995
namespace Puma {
39294
45996
 
39295
45997
/** \file 
39302
46004
 *  mainly manages the list of base classes and the list of derived
39303
46005
 *  classes. Note that a 'union', although syntactically very similar,
39304
46006
 *  is not represented by a CClassInfo object. */
 
46007
 
 
46008
#line 46009 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
39305
46009
} // closed Puma
39306
46010
class WinIfExists;
39307
46011
class WinImportHandler;
39322
46026
class CCExprResolve;
39323
46027
class CExprResolve;
39324
46028
namespace Puma {
39325
 
class CClassInfo : public CRecord {  friend class ::WinIfExists;
 
46029
 
 
46030
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassInfo.h"
 
46031
class CClassInfo : public CRecord {
 
46032
#line 46033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
46033
  friend class ::WinIfExists;
39326
46034
  friend class ::WinImportHandler;
39327
46035
  friend class ::WinMacros;
39328
46036
  friend class ::CMatchSyntax;
39341
46049
  friend class ::CCExprResolve;
39342
46050
  friend class ::CExprResolve;
39343
46051
 
 
46052
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassInfo.h"
 
46053
 
39344
46054
  Array<CBaseClassInfo*> _BaseClasses;
39345
46055
  Array<CClassInfo*> _Derived;
39346
46056
  // true if class has dependent base classes
39488
46198
} // namespace Puma
39489
46199
 
39490
46200
#endif /* __CClassInfo_h__ */
 
46201
 
 
46202
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroductionInfo.h"
39491
46203
// This file is part of PUMA.
39492
46204
// Copyright (C) 1999-2003  The PUMA developer team.
39493
46205
//                                                                
39509
46221
#ifndef __ACIntroductionInfo_h__
39510
46222
#define __ACIntroductionInfo_h__
39511
46223
 
 
46224
 
 
46225
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroductionInfo.h"
39512
46226
namespace Puma {
39513
46227
 
39514
46228
 
39522
46236
/** \class ACIntroductionInfo ACIntroductionInfo.h Puma/infos/acinfos/ACIntroductionInfo.h
39523
46237
 *  An ACIntroductionInfo object represents an AspectC++ introduction 
39524
46238
 *  'advice' declaration. */
 
46239
 
 
46240
#line 46241 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
39525
46241
} // closed Puma
39526
46242
class WinIfExists;
39527
46243
class WinImportHandler;
39542
46258
class CCExprResolve;
39543
46259
class CExprResolve;
39544
46260
namespace Puma {
39545
 
class ACIntroductionInfo {  friend class ::WinIfExists;
 
46261
 
 
46262
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroductionInfo.h"
 
46263
class ACIntroductionInfo {
 
46264
#line 46265 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
46265
  friend class ::WinIfExists;
39546
46266
  friend class ::WinImportHandler;
39547
46267
  friend class ::WinMacros;
39548
46268
  friend class ::CMatchSyntax;
39561
46281
  friend class ::CCExprResolve;
39562
46282
  friend class ::CExprResolve;
39563
46283
 
 
46284
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroductionInfo.h"
 
46285
 
39564
46286
  CT_AdviceDecl *_def_node;
39565
46287
  CProtection::Type _prot;
39566
46288
  ACAspectInfo *_aspect;
39591
46313
} // namespace Puma
39592
46314
 
39593
46315
#endif /* __ACIntroductionInfo_h__ */
 
46316
 
 
46317
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAspectInfo.h"
39594
46318
namespace Puma {
39595
46319
 
39596
46320
 
39607
46331
 *  An aspect declaration is syntactically equal to a C++ class 
39608
46332
 *  declaration and also parsed like a C++ class. Additionally it
39609
46333
 *  contains pointcut and advice declarations. */
 
46334
 
 
46335
#line 46336 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
39610
46336
} // closed Puma
39611
46337
class WinIfExists;
39612
46338
class WinImportHandler;
39627
46353
class CCExprResolve;
39628
46354
class CExprResolve;
39629
46355
namespace Puma {
39630
 
class ACAspectInfo {  friend class ::WinIfExists;
 
46356
 
 
46357
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAspectInfo.h"
 
46358
class ACAspectInfo {
 
46359
#line 46360 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
46360
  friend class ::WinIfExists;
39631
46361
  friend class ::WinImportHandler;
39632
46362
  friend class ::WinMacros;
39633
46363
  friend class ::CMatchSyntax;
39646
46376
  friend class ::CCExprResolve;
39647
46377
  friend class ::CExprResolve;
39648
46378
 
 
46379
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAspectInfo.h"
 
46380
 
39649
46381
  CClassInfo *_class;
39650
46382
  Array<ACPointcutInfo*> _pointcuts;
39651
46383
  int _intro_count;
39754
46486
} // namespace Puma
39755
46487
 
39756
46488
#endif /* __ACAspectInfo_h__ */
 
46489
 
 
46490
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAdviceInfo.h"
39757
46491
// This file is part of PUMA.
39758
46492
// Copyright (C) 1999-2003  The PUMA developer team.
39759
46493
//                                                                
39775
46509
#ifndef __ACAdviceInfo_h__
39776
46510
#define __ACAdviceInfo_h__
39777
46511
 
 
46512
 
 
46513
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFunctionInfo.h"
39778
46514
// This file is part of PUMA.
39779
46515
// Copyright (C) 1999-2003  The PUMA developer team.
39780
46516
//                                                                
39798
46534
 
39799
46535
// function info (standard functions and methods)
39800
46536
 
 
46537
 
 
46538
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFunctionInfo.h"
39801
46539
namespace Puma {
39802
46540
 
39803
46541
 
39813
46551
 
39814
46552
/** \class CFunctionInfo CFunctionInfo.h Puma/infos/CFunctionInfo.h
39815
46553
 *  A CFunctionInfo object represents a function declaration. */
 
46554
 
 
46555
#line 46556 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
39816
46556
} // closed Puma
39817
46557
class WinIfExists;
39818
46558
class WinImportHandler;
39833
46573
class CCExprResolve;
39834
46574
class CExprResolve;
39835
46575
namespace Puma {
39836
 
class CFunctionInfo : public CStructure {  friend class ::WinIfExists;
 
46576
 
 
46577
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFunctionInfo.h"
 
46578
class CFunctionInfo : public CStructure {
 
46579
#line 46580 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
46580
  friend class ::WinIfExists;
39837
46581
  friend class ::WinImportHandler;
39838
46582
  friend class ::WinMacros;
39839
46583
  friend class ::CMatchSyntax;
39852
46596
  friend class ::CCExprResolve;
39853
46597
  friend class ::CExprResolve;
39854
46598
 
 
46599
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFunctionInfo.h"
 
46600
 
39855
46601
  Array<CArgumentInfo*> _Arguments;
39856
46602
  Array<CLabelInfo*> _Labels;
39857
46603
 
40115
46861
} // namespace Puma
40116
46862
 
40117
46863
#endif /* __CFunctionInfo_h__ */
 
46864
 
 
46865
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAdviceInfo.h"
40118
46866
using namespace std;
40119
46867
 
40120
46868
namespace Puma {
40129
46877
/** \class ACAdviceInfo ACAdviceInfo.h Puma/infos/acinfos/ACAdviceInfo.h
40130
46878
 *  An ACAdviceInfo object represents an AspectC++ 'advice' declaration. 
40131
46879
 *  An advice is part of an aspect declaration. */
 
46880
 
 
46881
#line 46882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
40132
46882
} // closed Puma
40133
46883
class WinIfExists;
40134
46884
class WinImportHandler;
40149
46899
class CCExprResolve;
40150
46900
class CExprResolve;
40151
46901
namespace Puma {
40152
 
class ACAdviceInfo {  friend class ::WinIfExists;
 
46902
 
 
46903
#line 40 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAdviceInfo.h"
 
46904
class ACAdviceInfo {
 
46905
#line 46906 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
46906
  friend class ::WinIfExists;
40153
46907
  friend class ::WinImportHandler;
40154
46908
  friend class ::WinMacros;
40155
46909
  friend class ::CMatchSyntax;
40168
46922
  friend class ::CCExprResolve;
40169
46923
  friend class ::CExprResolve;
40170
46924
 
 
46925
#line 40 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACAdviceInfo.h"
 
46926
 
40171
46927
public:
40172
46928
  /** The three advice types: before, around, and after advice. */
40173
46929
  enum advice_type { BEFORE, AROUND, AFTER };
40251
47007
} // namespace Puma
40252
47008
 
40253
47009
#endif /* __ACAdviceInfo_h__ */
 
47010
 
 
47011
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACPointcutInfo.h"
40254
47012
// This file is part of PUMA.
40255
47013
// Copyright (C) 1999-2003  The PUMA developer team.
40256
47014
//                                                                
40272
47030
#ifndef __ACPointCutInfo_h__
40273
47031
#define __ACPointCutInfo_h__
40274
47032
 
 
47033
 
 
47034
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACPointcutInfo.h"
40275
47035
namespace Puma {
40276
47036
 
40277
47037
 
40286
47046
 *  An ACPointcutInfo object represents an AspectC++ 'pointcut' declaration. 
40287
47047
 *  A pointcut declaration is syntactically equal to a function 
40288
47048
 *  declaration and also parsed like a function. */
 
47049
 
 
47050
#line 47051 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
40289
47051
} // closed Puma
40290
47052
class WinIfExists;
40291
47053
class WinImportHandler;
40306
47068
class CCExprResolve;
40307
47069
class CExprResolve;
40308
47070
namespace Puma {
40309
 
class ACPointcutInfo {  friend class ::WinIfExists;
 
47071
 
 
47072
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACPointcutInfo.h"
 
47073
class ACPointcutInfo {
 
47074
#line 47075 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47075
  friend class ::WinIfExists;
40310
47076
  friend class ::WinImportHandler;
40311
47077
  friend class ::WinMacros;
40312
47078
  friend class ::CMatchSyntax;
40325
47091
  friend class ::CCExprResolve;
40326
47092
  friend class ::CExprResolve;
40327
47093
 
 
47094
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACPointcutInfo.h"
 
47095
 
40328
47096
  CFunctionInfo   *_function;
40329
47097
  ACAspectInfo    *_aspect;
40330
47098
  CT_PointcutDecl *_def_node;
40361
47129
} // namespace Puma
40362
47130
 
40363
47131
#endif /* __PointCutInfo_h__ */
 
47132
 
 
47133
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACSliceInfo.h"
40364
47134
// This file is part of PUMA.
40365
47135
// Copyright (C) 1999-2003  The PUMA developer team.
40366
47136
//                                                                
40382
47152
#ifndef __ACSliceInfo_h__
40383
47153
#define __ACSliceInfo_h__
40384
47154
 
 
47155
 
 
47156
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACSliceInfo.h"
40385
47157
namespace Puma {
40386
47158
 
40387
47159
 
40398
47170
 *  A slice represents a fragment of a C/C++ language element. For
40399
47171
 *  example a 'class slice' is a fragment (possibly incomplete) part
40400
47172
 *  of a class. */
 
47173
 
 
47174
#line 47175 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
40401
47175
} // closed Puma
40402
47176
class WinIfExists;
40403
47177
class WinImportHandler;
40418
47192
class CCExprResolve;
40419
47193
class CExprResolve;
40420
47194
namespace Puma {
40421
 
class ACSliceInfo {  friend class ::WinIfExists;
 
47195
 
 
47196
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACSliceInfo.h"
 
47197
class ACSliceInfo {
 
47198
#line 47199 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47199
  friend class ::WinIfExists;
40422
47200
  friend class ::WinImportHandler;
40423
47201
  friend class ::WinMacros;
40424
47202
  friend class ::CMatchSyntax;
40437
47215
  friend class ::CCExprResolve;
40438
47216
  friend class ::CExprResolve;
40439
47217
 
 
47218
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACSliceInfo.h"
 
47219
 
40440
47220
  CObjectInfo       *_object;
40441
47221
  CT_ClassSliceDecl *_def_node;
40442
47222
  Array<CT_Intro*>  _members; // non-inline slice members
40491
47271
 
40492
47272
#endif /* __ACSliceInfo_h__ */
40493
47273
 
 
47274
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
47275
 
 
47276
#line 47277 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47277
 
40494
47278
#ifndef __ac_fwd_ExtGnu__
40495
47279
#define __ac_fwd_ExtGnu__
40496
47280
class ExtGnu;
40530
47314
}
40531
47315
#endif
40532
47316
 
40533
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
40534
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
47317
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
47318
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
40535
47319
#endif
40536
47320
 
40537
47321
#ifndef __ac_fwd_CMatchSyntax__
40593
47377
}
40594
47378
#endif
40595
47379
 
40596
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
40597
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
 
47380
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
 
47381
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
40598
47382
#endif
 
47383
 
 
47384
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
40599
47385
// This file is part of PUMA.
40600
47386
// Copyright (C) 1999-2003  The PUMA developer team.
40601
47387
//                                                                
40617
47403
#ifndef __Syntax_h__
40618
47404
#define __Syntax_h__
40619
47405
 
 
47406
 
 
47407
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Builder.h"
40620
47408
// This file is part of PUMA.
40621
47409
// Copyright (C) 1999-2003  The PUMA developer team.
40622
47410
//                                                                
40638
47426
#ifndef __Builder_h__
40639
47427
#define __Builder_h__
40640
47428
 
 
47429
 
 
47430
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorCollector.h"
40641
47431
// This file is part of PUMA.
40642
47432
// Copyright (C) 1999-2003  The PUMA developer team.
40643
47433
//                                                                
40659
47449
#ifndef __error_collector_h__
40660
47450
#define __error_collector_h__
40661
47451
 
 
47452
 
 
47453
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorCollector.h"
40662
47454
using namespace std;
40663
47455
 
40664
47456
namespace Puma {
40665
47457
 
40666
47458
 
 
47459
 
 
47460
#line 47461 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
40667
47461
} // closed Puma
40668
47462
class WinIfExists;
40669
47463
class WinImportHandler;
40684
47478
class CCExprResolve;
40685
47479
class CExprResolve;
40686
47480
namespace Puma {
40687
 
class ErrorCollector : public ErrorSink {  friend class ::WinIfExists;
40688
 
  friend class ::WinImportHandler;
40689
 
  friend class ::WinMacros;
40690
 
  friend class ::CMatchSyntax;
40691
 
  friend class ::ExtGnu;
40692
 
  friend class ::ExtAC;
40693
 
  friend class ::ExtACBuilderCoupling;
40694
 
  friend class ::ExtACSyntaxCoupling;
40695
 
  friend class ::ExtACTree;
40696
 
  friend class ::ExtACKeywords;
40697
 
  friend class ::WinAsm;
40698
 
  friend class ::WinDeclSpecs;
40699
 
  friend class ::WinMemberExplSpec;
40700
 
  friend class ::WinTypeKeywords;
40701
 
  friend class ::PragmaOnceUnitState;
40702
 
  friend class ::PragmaOnce;
40703
 
  friend class ::CCExprResolve;
40704
 
  friend class ::CExprResolve;
40705
 
 
40706
 
  class Msg {  friend class ::WinIfExists;
40707
 
  friend class ::WinImportHandler;
40708
 
  friend class ::WinMacros;
40709
 
  friend class ::CMatchSyntax;
40710
 
  friend class ::ExtGnu;
40711
 
  friend class ::ExtAC;
40712
 
  friend class ::ExtACBuilderCoupling;
40713
 
  friend class ::ExtACSyntaxCoupling;
40714
 
  friend class ::ExtACTree;
40715
 
  friend class ::ExtACKeywords;
40716
 
  friend class ::WinAsm;
40717
 
  friend class ::WinDeclSpecs;
40718
 
  friend class ::WinMemberExplSpec;
40719
 
  friend class ::WinTypeKeywords;
40720
 
  friend class ::PragmaOnceUnitState;
40721
 
  friend class ::PragmaOnce;
40722
 
  friend class ::CCExprResolve;
40723
 
  friend class ::CExprResolve;
 
47481
 
 
47482
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorCollector.h"
 
47483
class ErrorCollector : public ErrorSink {
 
47484
#line 47485 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47485
  friend class ::WinIfExists;
 
47486
  friend class ::WinImportHandler;
 
47487
  friend class ::WinMacros;
 
47488
  friend class ::CMatchSyntax;
 
47489
  friend class ::ExtGnu;
 
47490
  friend class ::ExtAC;
 
47491
  friend class ::ExtACBuilderCoupling;
 
47492
  friend class ::ExtACSyntaxCoupling;
 
47493
  friend class ::ExtACTree;
 
47494
  friend class ::ExtACKeywords;
 
47495
  friend class ::WinAsm;
 
47496
  friend class ::WinDeclSpecs;
 
47497
  friend class ::WinMemberExplSpec;
 
47498
  friend class ::WinTypeKeywords;
 
47499
  friend class ::PragmaOnceUnitState;
 
47500
  friend class ::PragmaOnce;
 
47501
  friend class ::CCExprResolve;
 
47502
  friend class ::CExprResolve;
 
47503
 
 
47504
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorCollector.h"
 
47505
 
 
47506
  class Msg {
 
47507
#line 47508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47508
  friend class ::WinIfExists;
 
47509
  friend class ::WinImportHandler;
 
47510
  friend class ::WinMacros;
 
47511
  friend class ::CMatchSyntax;
 
47512
  friend class ::ExtGnu;
 
47513
  friend class ::ExtAC;
 
47514
  friend class ::ExtACBuilderCoupling;
 
47515
  friend class ::ExtACSyntaxCoupling;
 
47516
  friend class ::ExtACTree;
 
47517
  friend class ::ExtACKeywords;
 
47518
  friend class ::WinAsm;
 
47519
  friend class ::WinDeclSpecs;
 
47520
  friend class ::WinMemberExplSpec;
 
47521
  friend class ::WinTypeKeywords;
 
47522
  friend class ::PragmaOnceUnitState;
 
47523
  friend class ::PragmaOnce;
 
47524
  friend class ::CCExprResolve;
 
47525
  friend class ::CExprResolve;
 
47526
 
 
47527
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ErrorCollector.h"
40724
47528
 
40725
47529
    ErrorSeverity _sev;
40726
47530
    Location _loc;
40774
47578
} // namespace Puma
40775
47579
 
40776
47580
#endif /* __error_collector_h__ */
 
47581
 
 
47582
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PtrStack.h"
40777
47583
// This file is part of PUMA.
40778
47584
// Copyright (C) 1999-2003  The PUMA developer team.
40779
47585
//                                                                
40797
47603
 
40798
47604
// Stepped pointer stack.
40799
47605
 
 
47606
 
 
47607
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Stack.h"
40800
47608
// This file is part of PUMA.
40801
47609
// Copyright (C) 1999-2003  The PUMA developer team.
40802
47610
//                                                                
40818
47626
#ifndef __stack_h__
40819
47627
#define __stack_h__
40820
47628
 
 
47629
 
 
47630
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Stack.h"
40821
47631
namespace Puma {
40822
47632
 
 
47633
 
 
47634
#line 47635 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
40823
47635
} // closed Puma
40824
47636
class WinIfExists;
40825
47637
class WinImportHandler;
40840
47652
class CCExprResolve;
40841
47653
class CExprResolve;
40842
47654
namespace Puma {
 
47655
 
 
47656
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Stack.h"
40843
47657
template <class Item>
40844
 
class Stack : private Array<Item> {  friend class ::WinIfExists;
 
47658
class Stack : private Array<Item> {
 
47659
#line 47660 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47660
  friend class ::WinIfExists;
40845
47661
  friend class ::WinImportHandler;
40846
47662
  friend class ::WinMacros;
40847
47663
  friend class ::CMatchSyntax;
40860
47676
  friend class ::CCExprResolve;
40861
47677
  friend class ::CExprResolve;
40862
47678
 
 
47679
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Stack.h"
 
47680
 
40863
47681
public:
40864
47682
  Stack (long is = 8192, long incr = 8192) :
40865
47683
    Array<Item> (is, incr) {}
40874
47692
} // namespace Puma
40875
47693
 
40876
47694
#endif /* __stack_h__ */
 
47695
 
 
47696
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCStack.h"
40877
47697
// This file is part of PUMA.
40878
47698
// Copyright (C) 1999-2003  The PUMA developer team.
40879
47699
//                                                                
40895
47715
#ifndef __bcstack_h__
40896
47716
#define __bcstack_h__
40897
47717
 
 
47718
 
 
47719
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCList.h"
40898
47720
// This file is part of PUMA.
40899
47721
// Copyright (C) 1999-2003  The PUMA developer team.
40900
47722
//                                                                
40918
47740
 
40919
47741
namespace Puma {
40920
47742
 
 
47743
 
 
47744
#line 47745 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
40921
47745
} // closed Puma
40922
47746
class WinIfExists;
40923
47747
class WinImportHandler;
40938
47762
class CCExprResolve;
40939
47763
class CExprResolve;
40940
47764
namespace Puma {
 
47765
 
 
47766
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCList.h"
40941
47767
template <class Item, int BUCKET_SIZE = 32>
40942
 
class BCList {  friend class ::WinIfExists;
 
47768
class BCList {
 
47769
#line 47770 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47770
  friend class ::WinIfExists;
40943
47771
  friend class ::WinImportHandler;
40944
47772
  friend class ::WinMacros;
40945
47773
  friend class ::CMatchSyntax;
40958
47786
  friend class ::CCExprResolve;
40959
47787
  friend class ::CExprResolve;
40960
47788
 
 
47789
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCList.h"
 
47790
 
40961
47791
 
40962
47792
protected:
40963
 
  struct Bucket {  friend class ::WinIfExists;
 
47793
  struct Bucket {
 
47794
#line 47795 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47795
  friend class ::WinIfExists;
40964
47796
  friend class ::WinImportHandler;
40965
47797
  friend class ::WinMacros;
40966
47798
  friend class ::CMatchSyntax;
40979
47811
  friend class ::CCExprResolve;
40980
47812
  friend class ::CExprResolve;
40981
47813
 
 
47814
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCList.h"
 
47815
 
40982
47816
    Bucket *_prev;
40983
47817
    Bucket *_next;
40984
47818
    Item *_write_pos;
41012
47846
  Bucket *_last_bucket; // pointer to the last bucket for insertion
41013
47847
 
41014
47848
public:  
41015
 
  class Iterator {  friend class ::WinIfExists;
 
47849
  class Iterator {
 
47850
#line 47851 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47851
  friend class ::WinIfExists;
41016
47852
  friend class ::WinImportHandler;
41017
47853
  friend class ::WinMacros;
41018
47854
  friend class ::CMatchSyntax;
41031
47867
  friend class ::CCExprResolve;
41032
47868
  friend class ::CExprResolve;
41033
47869
 
 
47870
#line 62 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCList.h"
 
47871
 
41034
47872
    friend class BCList<Item, BUCKET_SIZE>;
41035
47873
 
41036
47874
    Item *_item;
41127
47965
} // namespace Puma
41128
47966
 
41129
47967
#endif /* __bclist_h__ */
 
47968
 
 
47969
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCStack.h"
41130
47970
namespace Puma {
41131
47971
 
 
47972
 
 
47973
#line 47974 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41132
47974
} // closed Puma
41133
47975
class WinIfExists;
41134
47976
class WinImportHandler;
41149
47991
class CCExprResolve;
41150
47992
class CExprResolve;
41151
47993
namespace Puma {
 
47994
 
 
47995
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCStack.h"
41152
47996
template <class Item, int BUCKET_SIZE = 32>
41153
 
class BCStack : private BCList<Item, BUCKET_SIZE> {  friend class ::WinIfExists;
 
47997
class BCStack : private BCList<Item, BUCKET_SIZE> {
 
47998
#line 47999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
47999
  friend class ::WinIfExists;
41154
48000
  friend class ::WinImportHandler;
41155
48001
  friend class ::WinMacros;
41156
48002
  friend class ::CMatchSyntax;
41169
48015
  friend class ::CCExprResolve;
41170
48016
  friend class ::CExprResolve;
41171
48017
 
 
48018
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/BCStack.h"
 
48019
 
41172
48020
  typedef BCList<Item, BUCKET_SIZE> List;
41173
48021
public:
41174
48022
  typedef typename List::Iterator Iterator;
41198
48046
} // namespace Puma
41199
48047
 
41200
48048
#endif /* __bcstack_h__ */
 
48049
 
 
48050
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PtrStack.h"
41201
48051
namespace Puma {
41202
48052
 
41203
48053
 
 
48054
 
 
48055
#line 48056 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41204
48056
} // closed Puma
41205
48057
class WinIfExists;
41206
48058
class WinImportHandler;
41221
48073
class CCExprResolve;
41222
48074
class CExprResolve;
41223
48075
namespace Puma {
 
48076
 
 
48077
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PtrStack.h"
41224
48078
template <class T>
41225
48079
class PtrStack
41226
48080
#ifndef __puma
41227
48081
: private Array<T*>
41228
48082
#endif
41229
 
 {  friend class ::WinIfExists;
 
48083
 {
 
48084
#line 48085 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48085
  friend class ::WinIfExists;
41230
48086
  friend class ::WinImportHandler;
41231
48087
  friend class ::WinMacros;
41232
48088
  friend class ::CMatchSyntax;
41245
48101
  friend class ::CCExprResolve;
41246
48102
  friend class ::CExprResolve;
41247
48103
 
 
48104
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PtrStack.h"
 
48105
 
41248
48106
  BCStack<long, 8192> _Indices;   // start indices
41249
48107
  
41250
48108
public:
41330
48188
template <class T>
41331
48189
inline void PtrStack<T>::Pop () { 
41332
48190
  if (Length () > 0)
41333
 
    remove (Index ()); 
 
48191
    Array<T*>::remove (Index ()); 
41334
48192
}
41335
48193
 
41336
48194
template <class T>
41361
48219
inline void PtrStack<T>::Destroy () { 
41362
48220
  while (Length () > 0) {
41363
48221
    Delete ();
41364
 
    remove (Index ()); // Pop()
 
48222
    Array<T*>::remove (Index ()); // Pop()
41365
48223
  }
41366
48224
  Forget (); 
41367
48225
}
41368
48226
 
41369
48227
template <class T>
41370
48228
inline void PtrStack<T>::Remove () {
41371
 
  remove (Index ()); // Same as Pop()
 
48229
  Array<T*>::remove (Index ()); // Same as Pop()
41372
48230
}
41373
48231
  
41374
48232
template <class T>
41385
48243
 
41386
48244
#endif /* __PtrStack_h__ */
41387
48245
 
 
48246
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48247
 
 
48248
#line 48249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48249
 
41388
48250
#ifndef __ac_fwd_ExtACTree__
41389
48251
#define __ac_fwd_ExtACTree__
41390
48252
class ExtACTree;
41396
48258
}
41397
48259
#endif
41398
48260
 
41399
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
41400
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
48261
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
48262
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
41401
48263
#endif
41402
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
41403
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
48264
 
 
48265
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48266
 
 
48267
#line 48268 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48268
 
 
48269
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48270
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
48271
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
48272
 
 
48273
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
41404
48274
// This file is part of PUMA.
41405
48275
// Copyright (C) 1999-2003  The PUMA developer team.
41406
48276
//                                                                
41582
48452
/*                                                                           */
41583
48453
/*****************************************************************************/
41584
48454
 
 
48455
 
 
48456
#line 48457 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41585
48457
} // closed Puma
41586
48458
class WinIfExists;
41587
48459
class WinImportHandler;
41602
48474
class CCExprResolve;
41603
48475
class CExprResolve;
41604
48476
namespace Puma {
41605
 
class CTree {  friend class ::WinIfExists;
 
48477
 
 
48478
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48479
class CTree {
 
48480
#line 48481 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48481
  friend class ::WinIfExists;
41606
48482
  friend class ::WinImportHandler;
41607
48483
  friend class ::WinMacros;
41608
48484
  friend class ::CMatchSyntax;
41621
48497
  friend class ::CCExprResolve;
41622
48498
  friend class ::CExprResolve;
41623
48499
 
 
48500
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48501
 
41624
48502
public:
41625
48503
  /*DEBUG*/static int alloc;
41626
48504
  /*DEBUG*/static int release;
41656
48534
  virtual CT_Declarator *IsDeclarator () { return 0; }
41657
48535
   private:
41658
48536
  typedef CTree CCExprResolveCTree;
 
48537
 
 
48538
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
41659
48539
 public :
41660
48540
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
41661
48541
  typedef CTree CExprResolveCTree;
 
48542
 
 
48543
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
41662
48544
 public :
41663
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
41664
 
 
 
48545
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
48546
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48547
};
 
48548
 
 
48549
 
 
48550
#line 48551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41665
48551
} // closed Puma
41666
48552
class WinIfExists;
41667
48553
class WinImportHandler;
41682
48568
class CCExprResolve;
41683
48569
class CExprResolve;
41684
48570
namespace Puma {
41685
 
class CT_Error : public CTree {  friend class ::WinIfExists;
 
48571
 
 
48572
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48573
class CT_Error : public CTree {
 
48574
#line 48575 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48575
  friend class ::WinIfExists;
41686
48576
  friend class ::WinImportHandler;
41687
48577
  friend class ::WinMacros;
41688
48578
  friend class ::CMatchSyntax;
41701
48591
  friend class ::CCExprResolve;
41702
48592
  friend class ::CExprResolve;
41703
48593
 
 
48594
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48595
 
41704
48596
public:
41705
48597
  static const char *NodeId ();
41706
48598
  const char *NodeName () const { return NodeId (); }
41707
48599
  int Sons () const { return 0; }
41708
48600
};
41709
48601
 
 
48602
 
 
48603
#line 48604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41710
48604
} // closed Puma
41711
48605
class WinIfExists;
41712
48606
class WinImportHandler;
41727
48621
class CCExprResolve;
41728
48622
class CExprResolve;
41729
48623
namespace Puma {
41730
 
class CT_Token : public CTree {  friend class ::WinIfExists;
 
48624
 
 
48625
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48626
class CT_Token : public CTree {
 
48627
#line 48628 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48628
  friend class ::WinIfExists;
41731
48629
  friend class ::WinImportHandler;
41732
48630
  friend class ::WinMacros;
41733
48631
  friend class ::CMatchSyntax;
41746
48644
  friend class ::CCExprResolve;
41747
48645
  friend class ::CExprResolve;
41748
48646
 
 
48647
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48648
 
41749
48649
  Token *_token;
41750
48650
  unsigned long int _number;
41751
48651
  
41772
48672
/*                                                                           */
41773
48673
/*****************************************************************************/
41774
48674
 
 
48675
 
 
48676
#line 48677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41775
48677
} // closed Puma
41776
48678
class WinIfExists;
41777
48679
class WinImportHandler;
41792
48694
class CCExprResolve;
41793
48695
class CExprResolve;
41794
48696
namespace Puma {
41795
 
class CT_List : public CTree {  friend class ::WinIfExists;
 
48697
 
 
48698
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48699
class CT_List : public CTree {
 
48700
#line 48701 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48701
  friend class ::WinIfExists;
41796
48702
  friend class ::WinImportHandler;
41797
48703
  friend class ::WinMacros;
41798
48704
  friend class ::CMatchSyntax;
41811
48717
  friend class ::CCExprResolve;
41812
48718
  friend class ::CExprResolve;
41813
48719
 
 
48720
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48721
 
41814
48722
  Array<CTree*> _sons;
41815
48723
  int _properties;
41816
48724
 
41849
48757
   { if (idx < Sons ()) _sons.remove (idx); }
41850
48758
};
41851
48759
 
 
48760
 
 
48761
#line 48762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41852
48762
} // closed Puma
41853
48763
class WinIfExists;
41854
48764
class WinImportHandler;
41869
48779
class CCExprResolve;
41870
48780
class CExprResolve;
41871
48781
namespace Puma {
41872
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
48782
 
 
48783
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48784
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
48785
#line 48786 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48786
  friend class ::WinIfExists;
41873
48787
  friend class ::WinImportHandler;
41874
48788
  friend class ::WinMacros;
41875
48789
  friend class ::CMatchSyntax;
41888
48802
  friend class ::CCExprResolve;
41889
48803
  friend class ::CExprResolve;
41890
48804
 
 
48805
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48806
 
41891
48807
public:
41892
48808
  CT_ExprList () { AddProperties (SEPARATORS); }
41893
48809
  static const char *NodeId ();
41899
48815
  CSemObject *SemObject () const { return (CSemObject*)this; }
41900
48816
};
41901
48817
 
 
48818
 
 
48819
#line 48820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41902
48820
} // closed Puma
41903
48821
class WinIfExists;
41904
48822
class WinImportHandler;
41919
48837
class CCExprResolve;
41920
48838
class CExprResolve;
41921
48839
namespace Puma {
41922
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
 
48840
 
 
48841
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48842
class CT_DeclaratorList : public CT_List {
 
48843
#line 48844 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48844
  friend class ::WinIfExists;
41923
48845
  friend class ::WinImportHandler;
41924
48846
  friend class ::WinMacros;
41925
48847
  friend class ::CMatchSyntax;
41938
48860
  friend class ::CCExprResolve;
41939
48861
  friend class ::CExprResolve;
41940
48862
 
 
48863
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48864
 
41941
48865
public:
41942
48866
  static const char *NodeId ();
41943
48867
  const char *NodeName () const { return NodeId (); }
41944
48868
};
41945
48869
 
 
48870
 
 
48871
#line 48872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41946
48872
} // closed Puma
41947
48873
class WinIfExists;
41948
48874
class WinImportHandler;
41963
48889
class CCExprResolve;
41964
48890
class CExprResolve;
41965
48891
namespace Puma {
41966
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
 
48892
 
 
48893
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48894
class CT_EnumeratorList : public CT_List {
 
48895
#line 48896 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48896
  friend class ::WinIfExists;
41967
48897
  friend class ::WinImportHandler;
41968
48898
  friend class ::WinMacros;
41969
48899
  friend class ::CMatchSyntax;
41982
48912
  friend class ::CCExprResolve;
41983
48913
  friend class ::CExprResolve;
41984
48914
 
 
48915
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48916
 
41985
48917
public:
41986
48918
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
41987
48919
  static const char *NodeId ();
41988
48920
  const char *NodeName () const { return NodeId (); }
41989
48921
};
41990
48922
   
 
48923
 
 
48924
#line 48925 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
41991
48925
} // closed Puma
41992
48926
class WinIfExists;
41993
48927
class WinImportHandler;
42008
48942
class CCExprResolve;
42009
48943
class CExprResolve;
42010
48944
namespace Puma {
42011
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
 
48945
 
 
48946
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48947
class CT_DeclList : public CT_List {
 
48948
#line 48949 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
48949
  friend class ::WinIfExists;
42012
48950
  friend class ::WinImportHandler;
42013
48951
  friend class ::WinMacros;
42014
48952
  friend class ::CMatchSyntax;
42027
48965
  friend class ::CCExprResolve;
42028
48966
  friend class ::CExprResolve;
42029
48967
 
 
48968
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
48969
 
42030
48970
public:
42031
48971
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
42032
48972
  static const char *NodeId ();
42034
48974
  void Linkage (CT_LinkageSpec *l);
42035
48975
};
42036
48976
 
 
48977
 
 
48978
#line 48979 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42037
48979
} // closed Puma
42038
48980
class WinIfExists;
42039
48981
class WinImportHandler;
42054
48996
class CCExprResolve;
42055
48997
class CExprResolve;
42056
48998
namespace Puma {
42057
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
 
48999
 
 
49000
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49001
class CT_DeclSpecSeq : public CT_List {
 
49002
#line 49003 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49003
  friend class ::WinIfExists;
42058
49004
  friend class ::WinImportHandler;
42059
49005
  friend class ::WinMacros;
42060
49006
  friend class ::CMatchSyntax;
42073
49019
  friend class ::CCExprResolve;
42074
49020
  friend class ::CExprResolve;
42075
49021
 
 
49022
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49023
 
42076
49024
public:
42077
49025
  static const char *NodeId ();
42078
49026
  const char *NodeName () const { return NodeId (); }
42079
49027
};
42080
49028
 
 
49029
 
 
49030
#line 49031 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42081
49031
} // closed Puma
42082
49032
class WinIfExists;
42083
49033
class WinImportHandler;
42098
49048
class CCExprResolve;
42099
49049
class CExprResolve;
42100
49050
namespace Puma {
42101
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
49051
 
 
49052
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49053
class CT_CmpdStmt : public CT_List, public CSemScope {
 
49054
#line 49055 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49055
  friend class ::WinIfExists;
42102
49056
  friend class ::WinImportHandler;
42103
49057
  friend class ::WinMacros;
42104
49058
  friend class ::CMatchSyntax;
42117
49071
  friend class ::CCExprResolve;
42118
49072
  friend class ::CExprResolve;
42119
49073
 
 
49074
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49075
 
42120
49076
public:
42121
49077
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
42122
49078
  static const char *NodeId ();
42123
49079
  const char *NodeName () const { return NodeId (); }
42124
49080
};
42125
49081
 
 
49082
 
 
49083
#line 49084 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42126
49084
} // closed Puma
42127
49085
class WinIfExists;
42128
49086
class WinImportHandler;
42143
49101
class CCExprResolve;
42144
49102
class CExprResolve;
42145
49103
namespace Puma {
42146
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
 
49104
 
 
49105
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49106
class CT_HandlerSeq : public CT_List {
 
49107
#line 49108 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49108
  friend class ::WinIfExists;
42147
49109
  friend class ::WinImportHandler;
42148
49110
  friend class ::WinMacros;
42149
49111
  friend class ::CMatchSyntax;
42162
49124
  friend class ::CCExprResolve;
42163
49125
  friend class ::CExprResolve;
42164
49126
 
 
49127
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49128
 
42165
49129
public:
42166
49130
  static const char *NodeId ();
42167
49131
  const char *NodeName () const { return NodeId (); }
42168
49132
};
42169
49133
 
 
49134
 
 
49135
#line 49136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42170
49136
} // closed Puma
42171
49137
class WinIfExists;
42172
49138
class WinImportHandler;
42187
49153
class CCExprResolve;
42188
49154
class CExprResolve;
42189
49155
namespace Puma {
42190
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
49156
 
 
49157
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49158
class CT_TemplateParamList : public CT_List, public CSemScope {
 
49159
#line 49160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49160
  friend class ::WinIfExists;
42191
49161
  friend class ::WinImportHandler;
42192
49162
  friend class ::WinMacros;
42193
49163
  friend class ::CMatchSyntax;
42206
49176
  friend class ::CCExprResolve;
42207
49177
  friend class ::CExprResolve;
42208
49178
 
 
49179
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49180
 
42209
49181
public:
42210
49182
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
42211
49183
  static const char *NodeId ();
42212
49184
  const char *NodeName () const { return NodeId (); }
42213
49185
};
42214
49186
 
 
49187
 
 
49188
#line 49189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42215
49189
} // closed Puma
42216
49190
class WinIfExists;
42217
49191
class WinImportHandler;
42232
49206
class CCExprResolve;
42233
49207
class CExprResolve;
42234
49208
namespace Puma {
42235
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
 
49209
 
 
49210
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49211
class CT_TemplateArgList : public CT_List {
 
49212
#line 49213 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49213
  friend class ::WinIfExists;
42236
49214
  friend class ::WinImportHandler;
42237
49215
  friend class ::WinMacros;
42238
49216
  friend class ::CMatchSyntax;
42251
49229
  friend class ::CCExprResolve;
42252
49230
  friend class ::CExprResolve;
42253
49231
 
 
49232
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49233
 
42254
49234
public:
42255
49235
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
42256
49236
  static const char *NodeId ();
42263
49243
/*                                                                           */
42264
49244
/*****************************************************************************/
42265
49245
 
 
49246
 
 
49247
#line 49248 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42266
49248
} // closed Puma
42267
49249
class WinIfExists;
42268
49250
class WinImportHandler;
42283
49265
class CCExprResolve;
42284
49266
class CExprResolve;
42285
49267
namespace Puma {
42286
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
 
49268
 
 
49269
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49270
class CT_Expression : public CTree, public CSemValue {
 
49271
#line 49272 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49272
  friend class ::WinIfExists;
42287
49273
  friend class ::WinImportHandler;
42288
49274
  friend class ::WinMacros;
42289
49275
  friend class ::CMatchSyntax;
42302
49288
  friend class ::CCExprResolve;
42303
49289
  friend class ::CExprResolve;
42304
49290
 
 
49291
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49292
 
42305
49293
protected:
42306
49294
  CT_Expression () {}
42307
49295
 
42313
49301
  CSemValue *SemValue () const { return (CSemValue*)this; }
42314
49302
   private:
42315
49303
  typedef CT_Expression CCExprResolveExpr;
 
49304
 
 
49305
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42316
49306
 public :
42317
49307
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42318
49308
  typedef CT_Expression CExprResolveExpr;
 
49309
 
 
49310
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42319
49311
 public :
42320
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42321
 
 
 
49312
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49313
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49314
};
 
49315
 
 
49316
 
 
49317
#line 49318 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42322
49318
} // closed Puma
42323
49319
class WinIfExists;
42324
49320
class WinImportHandler;
42339
49335
class CCExprResolve;
42340
49336
class CExprResolve;
42341
49337
namespace Puma {
42342
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
49338
 
 
49339
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49340
class CT_String : public CT_List, public CSemValue {
 
49341
#line 49342 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49342
  friend class ::WinIfExists;
42343
49343
  friend class ::WinImportHandler;
42344
49344
  friend class ::WinMacros;
42345
49345
  friend class ::CMatchSyntax;
42358
49358
  friend class ::CCExprResolve;
42359
49359
  friend class ::CExprResolve;
42360
49360
 
 
49361
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49362
 
42361
49363
public:
42362
49364
  CT_String (int size) : CT_List (size, 1) {}
42363
49365
  static const char *NodeId ();
42368
49370
  CSemValue *SemValue () const { return (CSemValue*)this; }
42369
49371
   private:
42370
49372
  typedef CT_String CCExprResolveExpr;
 
49373
 
 
49374
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42371
49375
 public :
42372
49376
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42373
49377
  typedef CT_String CExprResolveExpr;
 
49378
 
 
49379
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42374
49380
 public :
42375
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42376
 
 
 
49381
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49382
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49383
};
 
49384
 
 
49385
 
 
49386
#line 49387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42377
49387
} // closed Puma
42378
49388
class WinIfExists;
42379
49389
class WinImportHandler;
42394
49404
class CCExprResolve;
42395
49405
class CExprResolve;
42396
49406
namespace Puma {
42397
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
 
49407
 
 
49408
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49409
class CT_WideString : public CT_String {
 
49410
#line 49411 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49411
  friend class ::WinIfExists;
42398
49412
  friend class ::WinImportHandler;
42399
49413
  friend class ::WinMacros;
42400
49414
  friend class ::CMatchSyntax;
42413
49427
  friend class ::CCExprResolve;
42414
49428
  friend class ::CExprResolve;
42415
49429
 
 
49430
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49431
 
42416
49432
public:
42417
49433
  CT_WideString (int size) : CT_String (size) {}
42418
49434
  static const char *NodeId ();
42419
49435
  const char *NodeName () const { return NodeId (); }
42420
49436
   private:
42421
49437
  typedef CT_WideString CCExprResolveExpr;
 
49438
 
 
49439
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42422
49440
 public :
42423
49441
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42424
49442
  typedef CT_WideString CExprResolveExpr;
 
49443
 
 
49444
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42425
49445
 public :
42426
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42427
 
 
 
49446
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49447
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49448
};
 
49449
 
 
49450
 
 
49451
#line 49452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42428
49452
} // closed Puma
42429
49453
class WinIfExists;
42430
49454
class WinImportHandler;
42445
49469
class CCExprResolve;
42446
49470
class CExprResolve;
42447
49471
namespace Puma {
42448
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
 
49472
 
 
49473
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49474
class CT_Integer : public CT_Expression {
 
49475
#line 49476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49476
  friend class ::WinIfExists;
42449
49477
  friend class ::WinImportHandler;
42450
49478
  friend class ::WinMacros;
42451
49479
  friend class ::CMatchSyntax;
42464
49492
  friend class ::CCExprResolve;
42465
49493
  friend class ::CExprResolve;
42466
49494
 
 
49495
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49496
 
42467
49497
  CTree *_value;  // CT_Token
42468
49498
 
42469
49499
public:
42476
49506
   { if (old_son == _value) _value = new_son; }
42477
49507
   private:
42478
49508
  typedef CT_Integer CCExprResolveExpr;
 
49509
 
 
49510
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42479
49511
 public :
42480
49512
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42481
49513
  typedef CT_Integer CExprResolveExpr;
 
49514
 
 
49515
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42482
49516
 public :
42483
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42484
 
 
 
49517
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49518
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49519
};
 
49520
 
 
49521
 
 
49522
#line 49523 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42485
49523
} // closed Puma
42486
49524
class WinIfExists;
42487
49525
class WinImportHandler;
42502
49540
class CCExprResolve;
42503
49541
class CExprResolve;
42504
49542
namespace Puma {
42505
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
 
49543
 
 
49544
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49545
class CT_Character : public CT_Expression {
 
49546
#line 49547 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49547
  friend class ::WinIfExists;
42506
49548
  friend class ::WinImportHandler;
42507
49549
  friend class ::WinMacros;
42508
49550
  friend class ::CMatchSyntax;
42521
49563
  friend class ::CCExprResolve;
42522
49564
  friend class ::CExprResolve;
42523
49565
 
 
49566
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49567
 
42524
49568
  CTree *_value;  // CT_Token
42525
49569
 
42526
49570
public:
42533
49577
   { if (old_son == _value) _value = new_son; }
42534
49578
   private:
42535
49579
  typedef CT_Character CCExprResolveExpr;
 
49580
 
 
49581
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42536
49582
 public :
42537
49583
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42538
49584
  typedef CT_Character CExprResolveExpr;
 
49585
 
 
49586
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42539
49587
 public :
42540
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42541
 
 
 
49588
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49589
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49590
};
 
49591
 
 
49592
 
 
49593
#line 49594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42542
49594
} // closed Puma
42543
49595
class WinIfExists;
42544
49596
class WinImportHandler;
42559
49611
class CCExprResolve;
42560
49612
class CExprResolve;
42561
49613
namespace Puma {
42562
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
 
49614
 
 
49615
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49616
class CT_WideCharacter : public CT_Character {
 
49617
#line 49618 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49618
  friend class ::WinIfExists;
42563
49619
  friend class ::WinImportHandler;
42564
49620
  friend class ::WinMacros;
42565
49621
  friend class ::CMatchSyntax;
42578
49634
  friend class ::CCExprResolve;
42579
49635
  friend class ::CExprResolve;
42580
49636
 
 
49637
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49638
 
42581
49639
  CTree *_value;  // CT_Token
42582
49640
 
42583
49641
public:
42588
49646
   { if (old_son == _value) _value = new_son; }
42589
49647
   private:
42590
49648
  typedef CT_WideCharacter CCExprResolveExpr;
 
49649
 
 
49650
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42591
49651
 public :
42592
49652
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42593
49653
  typedef CT_WideCharacter CExprResolveExpr;
 
49654
 
 
49655
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42594
49656
 public :
42595
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42596
 
 
 
49657
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49658
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49659
};
 
49660
 
 
49661
 
 
49662
#line 49663 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42597
49663
} // closed Puma
42598
49664
class WinIfExists;
42599
49665
class WinImportHandler;
42614
49680
class CCExprResolve;
42615
49681
class CExprResolve;
42616
49682
namespace Puma {
42617
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
 
49683
 
 
49684
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49685
class CT_Float : public CT_Expression {
 
49686
#line 49687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49687
  friend class ::WinIfExists;
42618
49688
  friend class ::WinImportHandler;
42619
49689
  friend class ::WinMacros;
42620
49690
  friend class ::CMatchSyntax;
42633
49703
  friend class ::CCExprResolve;
42634
49704
  friend class ::CExprResolve;
42635
49705
 
 
49706
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49707
 
42636
49708
  CTree *_value;  // CT_Token
42637
49709
 
42638
49710
public:
42645
49717
   { if (old_son == _value) _value = new_son; }
42646
49718
   private:
42647
49719
  typedef CT_Float CCExprResolveExpr;
 
49720
 
 
49721
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42648
49722
 public :
42649
49723
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42650
49724
  typedef CT_Float CExprResolveExpr;
 
49725
 
 
49726
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42651
49727
 public :
42652
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42653
 
 
 
49728
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49729
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49730
};
 
49731
 
 
49732
 
 
49733
#line 49734 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42654
49734
} // closed Puma
42655
49735
class WinIfExists;
42656
49736
class WinImportHandler;
42671
49751
class CCExprResolve;
42672
49752
class CExprResolve;
42673
49753
namespace Puma {
42674
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
 
49754
 
 
49755
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49756
class CT_Bool : public CT_Expression {
 
49757
#line 49758 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49758
  friend class ::WinIfExists;
42675
49759
  friend class ::WinImportHandler;
42676
49760
  friend class ::WinMacros;
42677
49761
  friend class ::CMatchSyntax;
42690
49774
  friend class ::CCExprResolve;
42691
49775
  friend class ::CExprResolve;
42692
49776
 
 
49777
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49778
 
42693
49779
  CTree *_value;  // CT_Token
42694
49780
 
42695
49781
public:
42702
49788
   { if (old_son == _value) _value = new_son; }
42703
49789
   private:
42704
49790
  typedef CT_Bool CCExprResolveExpr;
 
49791
 
 
49792
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42705
49793
 public :
42706
49794
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42707
49795
  typedef CT_Bool CExprResolveExpr;
 
49796
 
 
49797
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42708
49798
 public :
42709
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42710
 
 
 
49799
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49800
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49801
};
 
49802
 
 
49803
 
 
49804
#line 49805 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42711
49805
} // closed Puma
42712
49806
class WinIfExists;
42713
49807
class WinImportHandler;
42728
49822
class CCExprResolve;
42729
49823
class CExprResolve;
42730
49824
namespace Puma {
42731
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
 
49825
 
 
49826
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49827
class CT_BracedExpr : public CT_Expression {
 
49828
#line 49829 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49829
  friend class ::WinIfExists;
42732
49830
  friend class ::WinImportHandler;
42733
49831
  friend class ::WinMacros;
42734
49832
  friend class ::CMatchSyntax;
42747
49845
  friend class ::CCExprResolve;
42748
49846
  friend class ::CExprResolve;
42749
49847
 
 
49848
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49849
 
42750
49850
  CTree *sons[3]; // open, expr, close
42751
49851
 
42752
49852
public:
42766
49866
  }
42767
49867
   private:
42768
49868
  typedef CT_BracedExpr CCExprResolveExpr;
 
49869
 
 
49870
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42769
49871
 public :
42770
49872
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42771
49873
  typedef CT_BracedExpr CExprResolveExpr;
 
49874
 
 
49875
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42772
49876
 public :
42773
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42774
 
 
 
49877
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49878
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49879
};
 
49880
 
 
49881
 
 
49882
#line 49883 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42775
49883
} // closed Puma
42776
49884
class WinIfExists;
42777
49885
class WinImportHandler;
42792
49900
class CCExprResolve;
42793
49901
class CExprResolve;
42794
49902
namespace Puma {
 
49903
 
 
49904
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
42795
49905
class CT_SimpleName : public CT_List, public Printable, 
42796
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
49906
                      public CSemValue, public CSemObject {
 
49907
#line 49908 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49908
  friend class ::WinIfExists;
42797
49909
  friend class ::WinImportHandler;
42798
49910
  friend class ::WinMacros;
42799
49911
  friend class ::CMatchSyntax;
42812
49924
  friend class ::CCExprResolve;
42813
49925
  friend class ::CExprResolve;
42814
49926
 
 
49927
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49928
 
42815
49929
protected:
42816
49930
  CT_SimpleName (int size) : CT_List (size, 1) {}
42817
49931
  CT_SimpleName (int size, int properties) : 
42836
49950
  virtual CT_SimpleName *IsSimpleName () { return this; }  
42837
49951
   private:
42838
49952
  typedef CT_SimpleName CCExprResolveExpr;
 
49953
 
 
49954
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42839
49955
 public :
42840
49956
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42841
49957
  typedef CT_SimpleName CExprResolveExpr;
 
49958
 
 
49959
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42842
49960
 public :
42843
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42844
 
 
 
49961
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
49962
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49963
};
 
49964
 
 
49965
 
 
49966
#line 49967 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42845
49967
} // closed Puma
42846
49968
class WinIfExists;
42847
49969
class WinImportHandler;
42862
49984
class CCExprResolve;
42863
49985
class CExprResolve;
42864
49986
namespace Puma {
42865
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
 
49987
 
 
49988
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
49989
class CT_SpecialName : public CT_SimpleName {
 
49990
#line 49991 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
49991
  friend class ::WinIfExists;
42866
49992
  friend class ::WinImportHandler;
42867
49993
  friend class ::WinMacros;
42868
49994
  friend class ::CMatchSyntax;
42881
50007
  friend class ::CCExprResolve;
42882
50008
  friend class ::CExprResolve;
42883
50009
 
 
50010
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50011
 
42884
50012
  char *_name;
42885
50013
  
42886
50014
protected:
42900
50028
  void  operator delete (void *);
42901
50029
   private:
42902
50030
  typedef CT_SpecialName CCExprResolveExpr;
 
50031
 
 
50032
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42903
50033
 public :
42904
50034
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42905
50035
  typedef CT_SpecialName CExprResolveExpr;
 
50036
 
 
50037
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42906
50038
 public :
42907
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42908
 
 
 
50039
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50040
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50041
};
 
50042
 
 
50043
 
 
50044
#line 50045 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42909
50045
} // closed Puma
42910
50046
class WinIfExists;
42911
50047
class WinImportHandler;
42926
50062
class CCExprResolve;
42927
50063
class CExprResolve;
42928
50064
namespace Puma {
42929
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
 
50065
 
 
50066
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50067
class CT_PrivateName : public CT_SpecialName {
 
50068
#line 50069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50069
  friend class ::WinIfExists;
42930
50070
  friend class ::WinImportHandler;
42931
50071
  friend class ::WinMacros;
42932
50072
  friend class ::CMatchSyntax;
42945
50085
  friend class ::CCExprResolve;
42946
50086
  friend class ::CExprResolve;
42947
50087
 
 
50088
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50089
 
42948
50090
public:
42949
50091
  CT_PrivateName (const char *n) { Name (n); }
42950
50092
  static const char *NodeId ();
42956
50098
  void  operator delete (void *);
42957
50099
   private:
42958
50100
  typedef CT_PrivateName CCExprResolveExpr;
 
50101
 
 
50102
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
42959
50103
 public :
42960
50104
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
42961
50105
  typedef CT_PrivateName CExprResolveExpr;
 
50106
 
 
50107
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
42962
50108
 public :
42963
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
42964
 
 
 
50109
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50110
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50111
};
 
50112
 
 
50113
 
 
50114
#line 50115 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
42965
50115
} // closed Puma
42966
50116
class WinIfExists;
42967
50117
class WinImportHandler;
42982
50132
class CCExprResolve;
42983
50133
class CExprResolve;
42984
50134
namespace Puma {
42985
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
 
50135
 
 
50136
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50137
class CT_DestructorName : public CT_SpecialName {
 
50138
#line 50139 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50139
  friend class ::WinIfExists;
42986
50140
  friend class ::WinImportHandler;
42987
50141
  friend class ::WinMacros;
42988
50142
  friend class ::CMatchSyntax;
43001
50155
  friend class ::CCExprResolve;
43002
50156
  friend class ::CExprResolve;
43003
50157
 
 
50158
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50159
 
43004
50160
public:
43005
50161
  CT_DestructorName (CTree *, CTree *);
43006
50162
  static const char *NodeId ();
43010
50166
  void  operator delete (void *);
43011
50167
   private:
43012
50168
  typedef CT_DestructorName CCExprResolveExpr;
 
50169
 
 
50170
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43013
50171
 public :
43014
50172
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43015
50173
  typedef CT_DestructorName CExprResolveExpr;
 
50174
 
 
50175
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43016
50176
 public :
43017
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43018
 
 
 
50177
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50178
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50179
};
 
50180
 
 
50181
 
 
50182
#line 50183 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43019
50183
} // closed Puma
43020
50184
class WinIfExists;
43021
50185
class WinImportHandler;
43036
50200
class CCExprResolve;
43037
50201
class CExprResolve;
43038
50202
namespace Puma {
43039
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
 
50203
 
 
50204
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50205
class CT_TemplateName : public CT_SpecialName {
 
50206
#line 50207 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50207
  friend class ::WinIfExists;
43040
50208
  friend class ::WinImportHandler;
43041
50209
  friend class ::WinMacros;
43042
50210
  friend class ::CMatchSyntax;
43055
50223
  friend class ::CCExprResolve;
43056
50224
  friend class ::CExprResolve;
43057
50225
 
 
50226
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50227
 
43058
50228
public:
43059
50229
  CT_TemplateName (CTree *n, CTree *a) 
43060
50230
   { AddSon (n); AddSon (a); }
43071
50241
  void  operator delete (void *);
43072
50242
   private:
43073
50243
  typedef CT_TemplateName CCExprResolveExpr;
 
50244
 
 
50245
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43074
50246
 public :
43075
50247
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43076
50248
  typedef CT_TemplateName CExprResolveExpr;
 
50249
 
 
50250
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43077
50251
 public :
43078
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43079
 
 
 
50252
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50253
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50254
};
 
50255
 
 
50256
 
 
50257
#line 50258 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43080
50258
} // closed Puma
43081
50259
class WinIfExists;
43082
50260
class WinImportHandler;
43097
50275
class CCExprResolve;
43098
50276
class CExprResolve;
43099
50277
namespace Puma {
43100
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
 
50278
 
 
50279
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50280
class CT_OperatorName : public CT_SpecialName {
 
50281
#line 50282 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50282
  friend class ::WinIfExists;
43101
50283
  friend class ::WinImportHandler;
43102
50284
  friend class ::WinMacros;
43103
50285
  friend class ::CMatchSyntax;
43116
50298
  friend class ::CCExprResolve;
43117
50299
  friend class ::CExprResolve;
43118
50300
 
 
50301
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50302
 
43119
50303
  int _oper;
43120
50304
 
43121
50305
public:
43137
50321
  void  operator delete (void *);
43138
50322
   private:
43139
50323
  typedef CT_OperatorName CCExprResolveExpr;
 
50324
 
 
50325
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43140
50326
 public :
43141
50327
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43142
50328
  typedef CT_OperatorName CExprResolveExpr;
 
50329
 
 
50330
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43143
50331
 public :
43144
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43145
 
 
 
50332
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50333
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50334
};
 
50335
 
 
50336
 
 
50337
#line 50338 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43146
50338
} // closed Puma
43147
50339
class WinIfExists;
43148
50340
class WinImportHandler;
43163
50355
class CCExprResolve;
43164
50356
class CExprResolve;
43165
50357
namespace Puma {
43166
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
 
50358
 
 
50359
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50360
class CT_ConversionName : public CT_SpecialName {
 
50361
#line 50362 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50362
  friend class ::WinIfExists;
43167
50363
  friend class ::WinImportHandler;
43168
50364
  friend class ::WinMacros;
43169
50365
  friend class ::CMatchSyntax;
43182
50378
  friend class ::CCExprResolve;
43183
50379
  friend class ::CExprResolve;
43184
50380
 
 
50381
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50382
 
43185
50383
public:
43186
50384
  CT_ConversionName (CTree *, CTree *);
43187
50385
  static const char *NodeId ();
43192
50390
  void  operator delete (void *);
43193
50391
   private:
43194
50392
  typedef CT_ConversionName CCExprResolveExpr;
 
50393
 
 
50394
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43195
50395
 public :
43196
50396
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43197
50397
  typedef CT_ConversionName CExprResolveExpr;
 
50398
 
 
50399
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43198
50400
 public :
43199
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43200
 
 
 
50401
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50402
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50403
};
 
50404
 
 
50405
 
 
50406
#line 50407 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43201
50407
} // closed Puma
43202
50408
class WinIfExists;
43203
50409
class WinImportHandler;
43218
50424
class CCExprResolve;
43219
50425
class CExprResolve;
43220
50426
namespace Puma {
43221
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
 
50427
 
 
50428
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50429
class CT_QualName : public CT_SimpleName {
 
50430
#line 50431 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50431
  friend class ::WinIfExists;
43222
50432
  friend class ::WinImportHandler;
43223
50433
  friend class ::WinMacros;
43224
50434
  friend class ::CMatchSyntax;
43237
50447
  friend class ::CCExprResolve;
43238
50448
  friend class ::CExprResolve;
43239
50449
 
 
50450
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50451
 
43240
50452
public:
43241
50453
  CT_QualName (int size = 3) : 
43242
50454
    CT_SimpleName (size, CT_List::SEPARATORS) {}
43254
50466
  void  operator delete (void *);
43255
50467
   private:
43256
50468
  typedef CT_QualName CCExprResolveExpr;
 
50469
 
 
50470
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43257
50471
 public :
43258
50472
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43259
50473
  typedef CT_QualName CExprResolveExpr;
 
50474
 
 
50475
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43260
50476
 public :
43261
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43262
 
 
 
50477
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50478
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50479
};
 
50480
 
 
50481
 
 
50482
#line 50483 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43263
50483
} // closed Puma
43264
50484
class WinIfExists;
43265
50485
class WinImportHandler;
43280
50500
class CCExprResolve;
43281
50501
class CExprResolve;
43282
50502
namespace Puma {
43283
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
 
50503
 
 
50504
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50505
class CT_RootQualName : public CT_QualName {
 
50506
#line 50507 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50507
  friend class ::WinIfExists;
43284
50508
  friend class ::WinImportHandler;
43285
50509
  friend class ::WinMacros;
43286
50510
  friend class ::CMatchSyntax;
43299
50523
  friend class ::CCExprResolve;
43300
50524
  friend class ::CExprResolve;
43301
50525
 
 
50526
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50527
 
43302
50528
public:
43303
50529
  CT_RootQualName (int size = 2) : 
43304
50530
    CT_QualName (size) { AddProperties (INTRO); }
43309
50535
  void  operator delete (void *);
43310
50536
   private:
43311
50537
  typedef CT_RootQualName CCExprResolveExpr;
 
50538
 
 
50539
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43312
50540
 public :
43313
50541
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43314
50542
  typedef CT_RootQualName CExprResolveExpr;
 
50543
 
 
50544
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43315
50545
 public :
43316
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43317
 
 
 
50546
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50547
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50548
};
 
50549
 
 
50550
 
 
50551
#line 50552 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43318
50552
} // closed Puma
43319
50553
class WinIfExists;
43320
50554
class WinImportHandler;
43335
50569
class CCExprResolve;
43336
50570
class CExprResolve;
43337
50571
namespace Puma {
43338
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
50572
 
 
50573
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50574
class CT_BinaryExpr : public CT_Expression {
 
50575
#line 50576 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50576
  friend class ::WinIfExists;
43339
50577
  friend class ::WinImportHandler;
43340
50578
  friend class ::WinMacros;
43341
50579
  friend class ::CMatchSyntax;
43354
50592
  friend class ::CCExprResolve;
43355
50593
  friend class ::CExprResolve;
43356
50594
 
 
50595
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50596
 
43357
50597
  CTree *sons[3]; // expr, oper, expr
43358
50598
 
43359
50599
public:
43369
50609
  }
43370
50610
   private:
43371
50611
  typedef CT_BinaryExpr CCExprResolveExpr;
 
50612
 
 
50613
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43372
50614
 public :
43373
50615
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43374
50616
  typedef CT_BinaryExpr CExprResolveExpr;
 
50617
 
 
50618
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43375
50619
 public :
43376
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43377
 
 
 
50620
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50621
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50622
};
 
50623
 
 
50624
 
 
50625
#line 50626 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43378
50626
} // closed Puma
43379
50627
class WinIfExists;
43380
50628
class WinImportHandler;
43395
50643
class CCExprResolve;
43396
50644
class CExprResolve;
43397
50645
namespace Puma {
43398
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
 
50646
 
 
50647
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50648
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
50649
#line 50650 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50650
  friend class ::WinIfExists;
43399
50651
  friend class ::WinImportHandler;
43400
50652
  friend class ::WinMacros;
43401
50653
  friend class ::CMatchSyntax;
43414
50666
  friend class ::CCExprResolve;
43415
50667
  friend class ::CExprResolve;
43416
50668
 
 
50669
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50670
 
43417
50671
public:
43418
50672
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
43419
50673
    CT_BinaryExpr (e, o, i) {}
43422
50676
  CSemObject *SemObject () const { return (CSemObject*)this; }
43423
50677
   private:
43424
50678
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
50679
 
 
50680
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43425
50681
 public :
43426
50682
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43427
50683
  typedef CT_MembPtrExpr CExprResolveExpr;
 
50684
 
 
50685
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43428
50686
 public :
43429
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43430
 
 
 
50687
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50688
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50689
};
 
50690
 
 
50691
 
 
50692
#line 50693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43431
50693
} // closed Puma
43432
50694
class WinIfExists;
43433
50695
class WinImportHandler;
43448
50710
class CCExprResolve;
43449
50711
class CExprResolve;
43450
50712
namespace Puma {
43451
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
 
50713
 
 
50714
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50715
class CT_MembRefExpr : public CT_MembPtrExpr {
 
50716
#line 50717 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50717
  friend class ::WinIfExists;
43452
50718
  friend class ::WinImportHandler;
43453
50719
  friend class ::WinMacros;
43454
50720
  friend class ::CMatchSyntax;
43467
50733
  friend class ::CCExprResolve;
43468
50734
  friend class ::CExprResolve;
43469
50735
 
 
50736
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50737
 
43470
50738
public:
43471
50739
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
43472
50740
    CT_MembPtrExpr (e, o, i) {}
43474
50742
  const char *NodeName () const { return NodeId (); }
43475
50743
   private:
43476
50744
  typedef CT_MembRefExpr CCExprResolveExpr;
 
50745
 
 
50746
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43477
50747
 public :
43478
50748
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43479
50749
  typedef CT_MembRefExpr CExprResolveExpr;
 
50750
 
 
50751
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43480
50752
 public :
43481
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43482
 
 
 
50753
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50754
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50755
};
 
50756
 
 
50757
 
 
50758
#line 50759 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43483
50759
} // closed Puma
43484
50760
class WinIfExists;
43485
50761
class WinImportHandler;
43500
50776
class CCExprResolve;
43501
50777
class CExprResolve;
43502
50778
namespace Puma {
43503
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
50779
 
 
50780
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50781
class CT_UnaryExpr : public CT_Expression {
 
50782
#line 50783 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50783
  friend class ::WinIfExists;
43504
50784
  friend class ::WinImportHandler;
43505
50785
  friend class ::WinMacros;
43506
50786
  friend class ::CMatchSyntax;
43519
50799
  friend class ::CCExprResolve;
43520
50800
  friend class ::CExprResolve;
43521
50801
 
 
50802
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50803
 
43522
50804
  CTree *sons[2]; // oper, expr
43523
50805
 
43524
50806
public:
43533
50815
  CTree *Expr () const { return sons[1]; }
43534
50816
   private:
43535
50817
  typedef CT_UnaryExpr CCExprResolveExpr;
 
50818
 
 
50819
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43536
50820
 public :
43537
50821
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43538
50822
  typedef CT_UnaryExpr CExprResolveExpr;
 
50823
 
 
50824
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43539
50825
 public :
43540
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43541
 
 
 
50826
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50827
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50828
};
 
50829
 
 
50830
 
 
50831
#line 50832 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43542
50832
} // closed Puma
43543
50833
class WinIfExists;
43544
50834
class WinImportHandler;
43559
50849
class CCExprResolve;
43560
50850
class CExprResolve;
43561
50851
namespace Puma {
43562
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
50852
 
 
50853
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50854
class CT_PostfixExpr : public CT_UnaryExpr {
 
50855
#line 50856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50856
  friend class ::WinIfExists;
43563
50857
  friend class ::WinImportHandler;
43564
50858
  friend class ::WinMacros;
43565
50859
  friend class ::CMatchSyntax;
43578
50872
  friend class ::CCExprResolve;
43579
50873
  friend class ::CExprResolve;
43580
50874
 
 
50875
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50876
 
43581
50877
public:
43582
50878
  CT_PostfixExpr (CTree *e, CTree *o) :
43583
50879
    CT_UnaryExpr (e, o) {}
43585
50881
  const char *NodeName () const { return NodeId (); }
43586
50882
   private:
43587
50883
  typedef CT_PostfixExpr CCExprResolveExpr;
 
50884
 
 
50885
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43588
50886
 public :
43589
50887
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43590
50888
  typedef CT_PostfixExpr CExprResolveExpr;
 
50889
 
 
50890
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43591
50891
 public :
43592
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43593
 
 
 
50892
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50893
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50894
};
 
50895
 
 
50896
 
 
50897
#line 50898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43594
50898
} // closed Puma
43595
50899
class WinIfExists;
43596
50900
class WinImportHandler;
43611
50915
class CCExprResolve;
43612
50916
class CExprResolve;
43613
50917
namespace Puma {
43614
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
50918
 
 
50919
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50920
class CT_AddrExpr : public CT_UnaryExpr {
 
50921
#line 50922 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50922
  friend class ::WinIfExists;
43615
50923
  friend class ::WinImportHandler;
43616
50924
  friend class ::WinMacros;
43617
50925
  friend class ::CMatchSyntax;
43630
50938
  friend class ::CCExprResolve;
43631
50939
  friend class ::CExprResolve;
43632
50940
 
 
50941
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50942
 
43633
50943
public:
43634
50944
  CT_AddrExpr (CTree *o, CTree *e) :
43635
50945
    CT_UnaryExpr (o, e) {}
43637
50947
  const char *NodeName () const { return NodeId (); }
43638
50948
   private:
43639
50949
  typedef CT_AddrExpr CCExprResolveExpr;
 
50950
 
 
50951
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43640
50952
 public :
43641
50953
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43642
50954
  typedef CT_AddrExpr CExprResolveExpr;
 
50955
 
 
50956
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43643
50957
 public :
43644
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43645
 
 
 
50958
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
50959
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50960
};
 
50961
 
 
50962
 
 
50963
#line 50964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43646
50964
} // closed Puma
43647
50965
class WinIfExists;
43648
50966
class WinImportHandler;
43663
50981
class CCExprResolve;
43664
50982
class CExprResolve;
43665
50983
namespace Puma {
43666
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
50984
 
 
50985
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
50986
class CT_DerefExpr : public CT_UnaryExpr {
 
50987
#line 50988 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
50988
  friend class ::WinIfExists;
43667
50989
  friend class ::WinImportHandler;
43668
50990
  friend class ::WinMacros;
43669
50991
  friend class ::CMatchSyntax;
43682
51004
  friend class ::CCExprResolve;
43683
51005
  friend class ::CExprResolve;
43684
51006
 
 
51007
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51008
 
43685
51009
public:
43686
51010
  CT_DerefExpr (CTree *o, CTree *e) :
43687
51011
    CT_UnaryExpr (o, e) {}
43689
51013
  const char *NodeName () const { return NodeId (); }
43690
51014
   private:
43691
51015
  typedef CT_DerefExpr CCExprResolveExpr;
 
51016
 
 
51017
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43692
51018
 public :
43693
51019
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43694
51020
  typedef CT_DerefExpr CExprResolveExpr;
 
51021
 
 
51022
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43695
51023
 public :
43696
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43697
 
 
 
51024
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51025
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51026
};
 
51027
 
 
51028
 
 
51029
#line 51030 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43698
51030
} // closed Puma
43699
51031
class WinIfExists;
43700
51032
class WinImportHandler;
43715
51047
class CCExprResolve;
43716
51048
class CExprResolve;
43717
51049
namespace Puma {
43718
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
51050
 
 
51051
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51052
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
51053
#line 51054 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51054
  friend class ::WinIfExists;
43719
51055
  friend class ::WinImportHandler;
43720
51056
  friend class ::WinMacros;
43721
51057
  friend class ::CMatchSyntax;
43734
51070
  friend class ::CCExprResolve;
43735
51071
  friend class ::CExprResolve;
43736
51072
 
 
51073
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51074
 
43737
51075
  CTree *sons[2]; // oper, expr
43738
51076
 
43739
51077
public:
43750
51088
  CSemObject *SemObject () const { return (CSemObject*)this; }
43751
51089
   private:
43752
51090
  typedef CT_DeleteExpr CCExprResolveExpr;
 
51091
 
 
51092
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43753
51093
 public :
43754
51094
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43755
51095
  typedef CT_DeleteExpr CExprResolveExpr;
 
51096
 
 
51097
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43756
51098
 public :
43757
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43758
 
 
 
51099
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51100
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51101
};
 
51102
 
 
51103
 
 
51104
#line 51105 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43759
51105
} // closed Puma
43760
51106
class WinIfExists;
43761
51107
class WinImportHandler;
43776
51122
class CCExprResolve;
43777
51123
class CExprResolve;
43778
51124
namespace Puma {
43779
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
51125
 
 
51126
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51127
class CT_NewExpr : public CT_Expression, public CSemObject {
 
51128
#line 51129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51129
  friend class ::WinIfExists;
43780
51130
  friend class ::WinImportHandler;
43781
51131
  friend class ::WinMacros;
43782
51132
  friend class ::CMatchSyntax;
43795
51145
  friend class ::CCExprResolve;
43796
51146
  friend class ::CExprResolve;
43797
51147
 
 
51148
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51149
 
43798
51150
  CTree *sons[6]; // oper, placement, open, type, close, init
43799
51151
 
43800
51152
public:
43815
51167
  CSemObject *SemObject () const { return (CSemObject*)this; }
43816
51168
   private:
43817
51169
  typedef CT_NewExpr CCExprResolveExpr;
 
51170
 
 
51171
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43818
51172
 public :
43819
51173
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43820
51174
  typedef CT_NewExpr CExprResolveExpr;
 
51175
 
 
51176
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43821
51177
 public :
43822
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43823
 
 
 
51178
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51179
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51180
};
 
51181
 
 
51182
 
 
51183
#line 51184 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43824
51184
} // closed Puma
43825
51185
class WinIfExists;
43826
51186
class WinImportHandler;
43841
51201
class CCExprResolve;
43842
51202
class CExprResolve;
43843
51203
namespace Puma {
43844
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
 
51204
 
 
51205
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51206
class CT_IfThenExpr : public CT_Expression {
 
51207
#line 51208 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51208
  friend class ::WinIfExists;
43845
51209
  friend class ::WinImportHandler;
43846
51210
  friend class ::WinMacros;
43847
51211
  friend class ::CMatchSyntax;
43860
51224
  friend class ::CCExprResolve;
43861
51225
  friend class ::CExprResolve;
43862
51226
 
 
51227
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51228
 
43863
51229
  CTree *sons[5]; // cond, oper, left, colon, right
43864
51230
 
43865
51231
public:
43881
51247
  }
43882
51248
   private:
43883
51249
  typedef CT_IfThenExpr CCExprResolveExpr;
 
51250
 
 
51251
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43884
51252
 public :
43885
51253
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43886
51254
  typedef CT_IfThenExpr CExprResolveExpr;
 
51255
 
 
51256
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43887
51257
 public :
43888
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43889
 
 
 
51258
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51259
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51260
};
 
51261
 
 
51262
 
 
51263
#line 51264 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43890
51264
} // closed Puma
43891
51265
class WinIfExists;
43892
51266
class WinImportHandler;
43907
51281
class CCExprResolve;
43908
51282
class CExprResolve;
43909
51283
namespace Puma {
43910
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
51284
 
 
51285
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51286
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
51287
#line 51288 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51288
  friend class ::WinIfExists;
43911
51289
  friend class ::WinImportHandler;
43912
51290
  friend class ::WinMacros;
43913
51291
  friend class ::CMatchSyntax;
43926
51304
  friend class ::CCExprResolve;
43927
51305
  friend class ::CExprResolve;
43928
51306
 
 
51307
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51308
 
43929
51309
  CTree *sons[4]; // open, type, close, init
43930
51310
 
43931
51311
public:
43944
51324
  CSemObject *SemObject () const { return (CSemObject*)this; }
43945
51325
   private:
43946
51326
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
51327
 
 
51328
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
43947
51329
 public :
43948
51330
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
43949
51331
  typedef CT_CmpdLiteral CExprResolveExpr;
 
51332
 
 
51333
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
43950
51334
 public :
43951
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
43952
 
 
 
51335
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51336
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51337
};
 
51338
 
 
51339
 
 
51340
#line 51341 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
43953
51341
} // closed Puma
43954
51342
class WinIfExists;
43955
51343
class WinImportHandler;
43970
51358
class CCExprResolve;
43971
51359
class CExprResolve;
43972
51360
namespace Puma {
43973
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
51361
 
 
51362
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51363
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
51364
#line 51365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51365
  friend class ::WinIfExists;
43974
51366
  friend class ::WinImportHandler;
43975
51367
  friend class ::WinMacros;
43976
51368
  friend class ::CMatchSyntax;
43989
51381
  friend class ::CCExprResolve;
43990
51382
  friend class ::CExprResolve;
43991
51383
 
 
51384
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51385
 
43992
51386
  CTree *sons[2]; // type, init
43993
51387
 
43994
51388
public:
44005
51399
  CSemObject *SemObject () const { return (CSemObject*)this; }
44006
51400
   private:
44007
51401
  typedef CT_ConstructExpr CCExprResolveExpr;
 
51402
 
 
51403
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44008
51404
 public :
44009
51405
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44010
51406
  typedef CT_ConstructExpr CExprResolveExpr;
 
51407
 
 
51408
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44011
51409
 public :
44012
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44013
 
 
 
51410
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51411
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51412
};
 
51413
 
 
51414
 
 
51415
#line 51416 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44014
51416
} // closed Puma
44015
51417
class WinIfExists;
44016
51418
class WinImportHandler;
44031
51433
class CCExprResolve;
44032
51434
class CExprResolve;
44033
51435
namespace Puma {
44034
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
 
51436
 
 
51437
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51438
class CT_ThrowExpr : public CT_Expression {
 
51439
#line 51440 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51440
  friend class ::WinIfExists;
44035
51441
  friend class ::WinImportHandler;
44036
51442
  friend class ::WinMacros;
44037
51443
  friend class ::CMatchSyntax;
44050
51456
  friend class ::CCExprResolve;
44051
51457
  friend class ::CExprResolve;
44052
51458
 
 
51459
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51460
 
44053
51461
  CTree *sons[2]; // throw, expr
44054
51462
 
44055
51463
public:
44064
51472
  CTree *Expr () const { return sons[1]; }
44065
51473
   private:
44066
51474
  typedef CT_ThrowExpr CCExprResolveExpr;
 
51475
 
 
51476
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44067
51477
 public :
44068
51478
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44069
51479
  typedef CT_ThrowExpr CExprResolveExpr;
 
51480
 
 
51481
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44070
51482
 public :
44071
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44072
 
 
 
51483
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51484
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51485
};
 
51486
 
 
51487
 
 
51488
#line 51489 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44073
51489
} // closed Puma
44074
51490
class WinIfExists;
44075
51491
class WinImportHandler;
44090
51506
class CCExprResolve;
44091
51507
class CExprResolve;
44092
51508
namespace Puma {
44093
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
 
51509
 
 
51510
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51511
class CT_IndexExpr : public CT_Expression {
 
51512
#line 51513 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51513
  friend class ::WinIfExists;
44094
51514
  friend class ::WinImportHandler;
44095
51515
  friend class ::WinMacros;
44096
51516
  friend class ::CMatchSyntax;
44109
51529
  friend class ::CCExprResolve;
44110
51530
  friend class ::CExprResolve;
44111
51531
 
 
51532
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51533
 
44112
51534
  CTree *sons[4]; // expr, open, index, close
44113
51535
 
44114
51536
public:
44124
51546
  }
44125
51547
   private:
44126
51548
  typedef CT_IndexExpr CCExprResolveExpr;
 
51549
 
 
51550
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44127
51551
 public :
44128
51552
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44129
51553
  typedef CT_IndexExpr CExprResolveExpr;
 
51554
 
 
51555
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44130
51556
 public :
44131
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44132
 
 
 
51557
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51558
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51559
};
 
51560
 
 
51561
 
 
51562
#line 51563 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44133
51563
} // closed Puma
44134
51564
class WinIfExists;
44135
51565
class WinImportHandler;
44150
51580
class CCExprResolve;
44151
51581
class CExprResolve;
44152
51582
namespace Puma {
44153
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
51583
 
 
51584
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51585
class CT_CallExpr : public CT_Expression, public CSemObject {
 
51586
#line 51587 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51587
  friend class ::WinIfExists;
44154
51588
  friend class ::WinImportHandler;
44155
51589
  friend class ::WinMacros;
44156
51590
  friend class ::CMatchSyntax;
44169
51603
  friend class ::CCExprResolve;
44170
51604
  friend class ::CExprResolve;
44171
51605
 
 
51606
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51607
 
44172
51608
  CTree *sons[2]; // expr, args
44173
51609
 
44174
51610
public:
44186
51622
  CSemObject *SemObject () const { return (CSemObject*)this; }
44187
51623
   private:
44188
51624
  typedef CT_CallExpr CCExprResolveExpr;
 
51625
 
 
51626
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44189
51627
 public :
44190
51628
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44191
51629
  typedef CT_CallExpr CExprResolveExpr;
 
51630
 
 
51631
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44192
51632
 public :
44193
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44194
 
 
 
51633
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51634
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51635
};
 
51636
 
 
51637
 
 
51638
#line 51639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44195
51639
} // closed Puma
44196
51640
class WinIfExists;
44197
51641
class WinImportHandler;
44212
51656
class CCExprResolve;
44213
51657
class CExprResolve;
44214
51658
namespace Puma {
44215
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
 
51659
 
 
51660
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51661
class CT_CastExpr : public CT_Expression {
 
51662
#line 51663 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51663
  friend class ::WinIfExists;
44216
51664
  friend class ::WinImportHandler;
44217
51665
  friend class ::WinMacros;
44218
51666
  friend class ::CMatchSyntax;
44231
51679
  friend class ::CCExprResolve;
44232
51680
  friend class ::CExprResolve;
44233
51681
 
 
51682
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51683
 
44234
51684
  CTree *sons[4]; // open, type, close, expr
44235
51685
 
44236
51686
public:
44248
51698
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
44249
51699
   private:
44250
51700
  typedef CT_CastExpr CCExprResolveExpr;
 
51701
 
 
51702
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44251
51703
 public :
44252
51704
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44253
51705
  typedef CT_CastExpr CExprResolveExpr;
 
51706
 
 
51707
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44254
51708
 public :
44255
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44256
 
 
 
51709
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51710
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51711
};
 
51712
 
 
51713
 
 
51714
#line 51715 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44257
51715
} // closed Puma
44258
51716
class WinIfExists;
44259
51717
class WinImportHandler;
44274
51732
class CCExprResolve;
44275
51733
class CExprResolve;
44276
51734
namespace Puma {
44277
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
 
51735
 
 
51736
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51737
class CT_StaticCast : public CT_Expression {
 
51738
#line 51739 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51739
  friend class ::WinIfExists;
44278
51740
  friend class ::WinImportHandler;
44279
51741
  friend class ::WinMacros;
44280
51742
  friend class ::CMatchSyntax;
44293
51755
  friend class ::CCExprResolve;
44294
51756
  friend class ::CExprResolve;
44295
51757
 
 
51758
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51759
 
44296
51760
  CTree *sons[5]; // cast, open, type, close, expr
44297
51761
 
44298
51762
public:
44310
51774
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
44311
51775
   private:
44312
51776
  typedef CT_StaticCast CCExprResolveExpr;
 
51777
 
 
51778
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44313
51779
 public :
44314
51780
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44315
51781
  typedef CT_StaticCast CExprResolveExpr;
 
51782
 
 
51783
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44316
51784
 public :
44317
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44318
 
 
 
51785
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51786
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51787
};
 
51788
 
 
51789
 
 
51790
#line 51791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44319
51791
} // closed Puma
44320
51792
class WinIfExists;
44321
51793
class WinImportHandler;
44336
51808
class CCExprResolve;
44337
51809
class CExprResolve;
44338
51810
namespace Puma {
44339
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
 
51811
 
 
51812
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51813
class CT_ConstCast : public CT_StaticCast {
 
51814
#line 51815 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51815
  friend class ::WinIfExists;
44340
51816
  friend class ::WinImportHandler;
44341
51817
  friend class ::WinMacros;
44342
51818
  friend class ::CMatchSyntax;
44355
51831
  friend class ::CCExprResolve;
44356
51832
  friend class ::CExprResolve;
44357
51833
 
 
51834
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51835
 
44358
51836
public:
44359
51837
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
44360
51838
    CT_StaticCast (cst, o, t, c, e) {}
44362
51840
  const char *NodeName () const { return NodeId (); }
44363
51841
   private:
44364
51842
  typedef CT_ConstCast CCExprResolveExpr;
 
51843
 
 
51844
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44365
51845
 public :
44366
51846
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44367
51847
  typedef CT_ConstCast CExprResolveExpr;
 
51848
 
 
51849
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44368
51850
 public :
44369
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44370
 
 
 
51851
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51852
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51853
};
 
51854
 
 
51855
 
 
51856
#line 51857 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44371
51857
} // closed Puma
44372
51858
class WinIfExists;
44373
51859
class WinImportHandler;
44388
51874
class CCExprResolve;
44389
51875
class CExprResolve;
44390
51876
namespace Puma {
44391
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
 
51877
 
 
51878
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51879
class CT_ReintCast : public CT_StaticCast {
 
51880
#line 51881 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51881
  friend class ::WinIfExists;
44392
51882
  friend class ::WinImportHandler;
44393
51883
  friend class ::WinMacros;
44394
51884
  friend class ::CMatchSyntax;
44407
51897
  friend class ::CCExprResolve;
44408
51898
  friend class ::CExprResolve;
44409
51899
 
 
51900
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51901
 
44410
51902
public:
44411
51903
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
44412
51904
    CT_StaticCast (cst, o, t, c, e) {}
44414
51906
  const char *NodeName () const { return NodeId (); }
44415
51907
   private:
44416
51908
  typedef CT_ReintCast CCExprResolveExpr;
 
51909
 
 
51910
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44417
51911
 public :
44418
51912
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44419
51913
  typedef CT_ReintCast CExprResolveExpr;
 
51914
 
 
51915
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44420
51916
 public :
44421
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44422
 
 
 
51917
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51918
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51919
};
 
51920
 
 
51921
 
 
51922
#line 51923 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44423
51923
} // closed Puma
44424
51924
class WinIfExists;
44425
51925
class WinImportHandler;
44440
51940
class CCExprResolve;
44441
51941
class CExprResolve;
44442
51942
namespace Puma {
44443
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
 
51943
 
 
51944
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51945
class CT_DynamicCast : public CT_StaticCast {
 
51946
#line 51947 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
51947
  friend class ::WinIfExists;
44444
51948
  friend class ::WinImportHandler;
44445
51949
  friend class ::WinMacros;
44446
51950
  friend class ::CMatchSyntax;
44459
51963
  friend class ::CCExprResolve;
44460
51964
  friend class ::CExprResolve;
44461
51965
 
 
51966
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51967
 
44462
51968
public:
44463
51969
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
44464
51970
    CT_StaticCast (cst, o, t, c, e) {}
44466
51972
  const char *NodeName () const { return NodeId (); }
44467
51973
   private:
44468
51974
  typedef CT_DynamicCast CCExprResolveExpr;
 
51975
 
 
51976
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44469
51977
 public :
44470
51978
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44471
51979
  typedef CT_DynamicCast CExprResolveExpr;
 
51980
 
 
51981
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44472
51982
 public :
44473
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44474
 
 
 
51983
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
51984
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
51985
};
 
51986
 
 
51987
 
 
51988
#line 51989 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44475
51989
} // closed Puma
44476
51990
class WinIfExists;
44477
51991
class WinImportHandler;
44492
52006
class CCExprResolve;
44493
52007
class CExprResolve;
44494
52008
namespace Puma {
44495
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
 
52009
 
 
52010
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52011
class CT_ImplicitCast : public CT_Expression {
 
52012
#line 52013 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52013
  friend class ::WinIfExists;
44496
52014
  friend class ::WinImportHandler;
44497
52015
  friend class ::WinMacros;
44498
52016
  friend class ::CMatchSyntax;
44511
52029
  friend class ::CCExprResolve;
44512
52030
  friend class ::CExprResolve;
44513
52031
 
 
52032
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52033
 
44514
52034
  CTree *_expr; // casted expression
44515
52035
 
44516
52036
public:
44524
52044
   { if (old_son == _expr) _expr = new_son; }
44525
52045
   private:
44526
52046
  typedef CT_ImplicitCast CCExprResolveExpr;
 
52047
 
 
52048
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44527
52049
 public :
44528
52050
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44529
52051
  typedef CT_ImplicitCast CExprResolveExpr;
 
52052
 
 
52053
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44530
52054
 public :
44531
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44532
 
 
 
52055
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
52056
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52057
};
 
52058
 
 
52059
 
 
52060
#line 52061 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44533
52061
} // closed Puma
44534
52062
class WinIfExists;
44535
52063
class WinImportHandler;
44550
52078
class CCExprResolve;
44551
52079
class CExprResolve;
44552
52080
namespace Puma {
44553
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
 
52081
 
 
52082
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52083
class CT_TypeidExpr : public CT_Expression {
 
52084
#line 52085 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52085
  friend class ::WinIfExists;
44554
52086
  friend class ::WinImportHandler;
44555
52087
  friend class ::WinMacros;
44556
52088
  friend class ::CMatchSyntax;
44569
52101
  friend class ::CCExprResolve;
44570
52102
  friend class ::CExprResolve;
44571
52103
 
 
52104
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52105
 
44572
52106
  CTree *sons[4]; // typeid, open, type_id/expr, close
44573
52107
 
44574
52108
public:
44585
52119
  CTree *Arg () const { return sons[2]; }
44586
52120
   private:
44587
52121
  typedef CT_TypeidExpr CCExprResolveExpr;
 
52122
 
 
52123
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44588
52124
 public :
44589
52125
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44590
52126
  typedef CT_TypeidExpr CExprResolveExpr;
 
52127
 
 
52128
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44591
52129
 public :
44592
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44593
 
 
 
52130
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
52131
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52132
};
 
52133
 
 
52134
 
 
52135
#line 52136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44594
52136
} // closed Puma
44595
52137
class WinIfExists;
44596
52138
class WinImportHandler;
44611
52153
class CCExprResolve;
44612
52154
class CExprResolve;
44613
52155
namespace Puma {
44614
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
 
52156
 
 
52157
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52158
class CT_SizeofExpr : public CT_Expression {
 
52159
#line 52160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52160
  friend class ::WinIfExists;
44615
52161
  friend class ::WinImportHandler;
44616
52162
  friend class ::WinMacros;
44617
52163
  friend class ::CMatchSyntax;
44630
52176
  friend class ::CCExprResolve;
44631
52177
  friend class ::CExprResolve;
44632
52178
 
 
52179
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52180
 
44633
52181
  CTree *sons[5]; // key, open, type, close, expr
44634
52182
 
44635
52183
public:
44650
52198
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
44651
52199
   private:
44652
52200
  typedef CT_SizeofExpr CCExprResolveExpr;
 
52201
 
 
52202
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44653
52203
 public :
44654
52204
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44655
52205
  typedef CT_SizeofExpr CExprResolveExpr;
 
52206
 
 
52207
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44656
52208
 public :
44657
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44658
 
 
 
52209
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
52210
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52211
};
 
52212
 
 
52213
 
 
52214
#line 52215 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44659
52215
} // closed Puma
44660
52216
class WinIfExists;
44661
52217
class WinImportHandler;
44676
52232
class CCExprResolve;
44677
52233
class CExprResolve;
44678
52234
namespace Puma {
44679
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
 
52235
 
 
52236
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52237
class CT_IndexDesignator : public CT_Expression {
 
52238
#line 52239 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52239
  friend class ::WinIfExists;
44680
52240
  friend class ::WinImportHandler;
44681
52241
  friend class ::WinMacros;
44682
52242
  friend class ::CMatchSyntax;
44695
52255
  friend class ::CCExprResolve;
44696
52256
  friend class ::CExprResolve;
44697
52257
 
 
52258
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52259
 
44698
52260
  CTree *sons[3]; // open, index, close
44699
52261
 
44700
52262
public:
44710
52272
  }
44711
52273
   private:
44712
52274
  typedef CT_IndexDesignator CCExprResolveExpr;
 
52275
 
 
52276
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44713
52277
 public :
44714
52278
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44715
52279
  typedef CT_IndexDesignator CExprResolveExpr;
 
52280
 
 
52281
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44716
52282
 public :
44717
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44718
 
 
 
52283
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
52284
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52285
};
 
52286
 
 
52287
 
 
52288
#line 52289 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44719
52289
} // closed Puma
44720
52290
class WinIfExists;
44721
52291
class WinImportHandler;
44736
52306
class CCExprResolve;
44737
52307
class CExprResolve;
44738
52308
namespace Puma {
44739
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
 
52309
 
 
52310
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52311
class CT_MembDesignator : public CT_Expression {
 
52312
#line 52313 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52313
  friend class ::WinIfExists;
44740
52314
  friend class ::WinImportHandler;
44741
52315
  friend class ::WinMacros;
44742
52316
  friend class ::CMatchSyntax;
44755
52329
  friend class ::CCExprResolve;
44756
52330
  friend class ::CExprResolve;
44757
52331
 
 
52332
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52333
 
44758
52334
  CTree *sons[2]; // dot, member
44759
52335
 
44760
52336
public:
44768
52344
  }
44769
52345
   private:
44770
52346
  typedef CT_MembDesignator CCExprResolveExpr;
 
52347
 
 
52348
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
44771
52349
 public :
44772
52350
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
44773
52351
  typedef CT_MembDesignator CExprResolveExpr;
 
52352
 
 
52353
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
44774
52354
 public :
44775
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
44776
 
 
 
52355
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
52356
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52357
};
 
52358
 
 
52359
 
 
52360
#line 52361 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44777
52361
} // closed Puma
44778
52362
class WinIfExists;
44779
52363
class WinImportHandler;
44794
52378
class CCExprResolve;
44795
52379
class CExprResolve;
44796
52380
namespace Puma {
44797
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
52381
 
 
52382
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52383
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
52384
#line 52385 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52385
  friend class ::WinIfExists;
44798
52386
  friend class ::WinImportHandler;
44799
52387
  friend class ::WinMacros;
44800
52388
  friend class ::CMatchSyntax;
44813
52401
  friend class ::CCExprResolve;
44814
52402
  friend class ::CExprResolve;
44815
52403
 
 
52404
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52405
 
44816
52406
public:
44817
52407
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
44818
52408
  static const char *NodeId ();
44829
52419
/*                                                                           */
44830
52420
/*****************************************************************************/
44831
52421
 
 
52422
 
 
52423
#line 52424 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44832
52424
} // closed Puma
44833
52425
class WinIfExists;
44834
52426
class WinImportHandler;
44849
52441
class CCExprResolve;
44850
52442
class CExprResolve;
44851
52443
namespace Puma {
44852
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
 
52444
 
 
52445
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52446
class CT_DeclSpec : public CTree {
 
52447
#line 52448 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52448
  friend class ::WinIfExists;
44853
52449
  friend class ::WinImportHandler;
44854
52450
  friend class ::WinMacros;
44855
52451
  friend class ::CMatchSyntax;
44868
52464
  friend class ::CCExprResolve;
44869
52465
  friend class ::CExprResolve;
44870
52466
 
 
52467
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52468
 
44871
52469
protected:
44872
52470
  CT_DeclSpec () {}
44873
52471
};
44874
52472
 
 
52473
 
 
52474
#line 52475 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44875
52475
} // closed Puma
44876
52476
class WinIfExists;
44877
52477
class WinImportHandler;
44892
52492
class CCExprResolve;
44893
52493
class CExprResolve;
44894
52494
namespace Puma {
44895
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
52495
 
 
52496
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52497
class CT_PrimDeclSpec : public CT_DeclSpec {
 
52498
#line 52499 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52499
  friend class ::WinIfExists;
44896
52500
  friend class ::WinImportHandler;
44897
52501
  friend class ::WinMacros;
44898
52502
  friend class ::CMatchSyntax;
44911
52515
  friend class ::CCExprResolve;
44912
52516
  friend class ::CExprResolve;
44913
52517
 
 
52518
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52519
 
44914
52520
public:
44915
52521
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
44916
52522
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
44943
52549
  static const int NumTypes = PDS_NUM;
44944
52550
};
44945
52551
 
 
52552
 
 
52553
#line 52554 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
44946
52554
} // closed Puma
44947
52555
class WinIfExists;
44948
52556
class WinImportHandler;
44963
52571
class CCExprResolve;
44964
52572
class CExprResolve;
44965
52573
namespace Puma {
44966
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
52574
 
 
52575
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52576
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
52577
#line 52578 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52578
  friend class ::WinIfExists;
44967
52579
  friend class ::WinImportHandler;
44968
52580
  friend class ::WinMacros;
44969
52581
  friend class ::CMatchSyntax;
44982
52594
  friend class ::CCExprResolve;
44983
52595
  friend class ::CExprResolve;
44984
52596
 
 
52597
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52598
 
44985
52599
  CTree *sons[2]; // declspecs, declarator
44986
52600
 
44987
52601
public:
44997
52611
  CSemObject *SemObject () const { return (CSemObject*)this; }
44998
52612
};
44999
52613
      
 
52614
 
 
52615
#line 52616 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45000
52616
} // closed Puma
45001
52617
class WinIfExists;
45002
52618
class WinImportHandler;
45017
52633
class CCExprResolve;
45018
52634
class CExprResolve;
45019
52635
namespace Puma {
45020
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
52636
 
 
52637
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52638
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
52639
#line 52640 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52640
  friend class ::WinIfExists;
45021
52641
  friend class ::WinImportHandler;
45022
52642
  friend class ::WinMacros;
45023
52643
  friend class ::CMatchSyntax;
45036
52656
  friend class ::CCExprResolve;
45037
52657
  friend class ::CExprResolve;
45038
52658
 
 
52659
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52660
 
45039
52661
  CTree *sons[2]; // key, name
45040
52662
  
45041
52663
public:
45051
52673
  }
45052
52674
};
45053
52675
 
 
52676
 
 
52677
#line 52678 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45054
52678
} // closed Puma
45055
52679
class WinIfExists;
45056
52680
class WinImportHandler;
45071
52695
class CCExprResolve;
45072
52696
class CExprResolve;
45073
52697
namespace Puma {
45074
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
52698
 
 
52699
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52700
class CT_UnionSpec : public CT_ClassSpec {
 
52701
#line 52702 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52702
  friend class ::WinIfExists;
45075
52703
  friend class ::WinImportHandler;
45076
52704
  friend class ::WinMacros;
45077
52705
  friend class ::CMatchSyntax;
45090
52718
  friend class ::CCExprResolve;
45091
52719
  friend class ::CExprResolve;
45092
52720
 
 
52721
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52722
 
45093
52723
public:
45094
52724
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
45095
52725
  static const char *NodeId ();
45096
52726
  const char *NodeName () const { return NodeId (); }
45097
52727
};
45098
52728
 
 
52729
 
 
52730
#line 52731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45099
52731
} // closed Puma
45100
52732
class WinIfExists;
45101
52733
class WinImportHandler;
45116
52748
class CCExprResolve;
45117
52749
class CExprResolve;
45118
52750
namespace Puma {
45119
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
52751
 
 
52752
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52753
class CT_EnumSpec : public CT_ClassSpec {
 
52754
#line 52755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52755
  friend class ::WinIfExists;
45120
52756
  friend class ::WinImportHandler;
45121
52757
  friend class ::WinMacros;
45122
52758
  friend class ::CMatchSyntax;
45135
52771
  friend class ::CCExprResolve;
45136
52772
  friend class ::CExprResolve;
45137
52773
 
 
52774
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52775
 
45138
52776
public:
45139
52777
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
45140
52778
  static const char *NodeId ();
45141
52779
  const char *NodeName () const { return NodeId (); }
45142
52780
};
45143
52781
 
 
52782
 
 
52783
#line 52784 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45144
52784
} // closed Puma
45145
52785
class WinIfExists;
45146
52786
class WinImportHandler;
45161
52801
class CCExprResolve;
45162
52802
class CExprResolve;
45163
52803
namespace Puma {
45164
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
52804
 
 
52805
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52806
class CT_ExceptionSpec : public CT_DeclSpec {
 
52807
#line 52808 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52808
  friend class ::WinIfExists;
45165
52809
  friend class ::WinImportHandler;
45166
52810
  friend class ::WinMacros;
45167
52811
  friend class ::CMatchSyntax;
45180
52824
  friend class ::CCExprResolve;
45181
52825
  friend class ::CExprResolve;
45182
52826
 
 
52827
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52828
 
45183
52829
  CTree *sons[2]; // throw, type_id_list
45184
52830
  
45185
52831
public:
45200
52846
/*                                                                           */
45201
52847
/*****************************************************************************/
45202
52848
 
 
52849
 
 
52850
#line 52851 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45203
52851
} // closed Puma
45204
52852
class WinIfExists;
45205
52853
class WinImportHandler;
45220
52868
class CCExprResolve;
45221
52869
class CExprResolve;
45222
52870
namespace Puma {
45223
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
 
52871
 
 
52872
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52873
class CT_Decl : public CTree {
 
52874
#line 52875 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52875
  friend class ::WinIfExists;
45224
52876
  friend class ::WinImportHandler;
45225
52877
  friend class ::WinMacros;
45226
52878
  friend class ::CMatchSyntax;
45238
52890
  friend class ::PragmaOnce;
45239
52891
  friend class ::CCExprResolve;
45240
52892
  friend class ::CExprResolve;
 
52893
 
 
52894
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
45241
52895
 
45242
52896
  CT_LinkageSpec *_linkage;
45243
52897
protected:
45247
52901
  CT_LinkageSpec *Linkage () const { return _linkage; }
45248
52902
};
45249
52903
 
 
52904
 
 
52905
#line 52906 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45250
52906
} // closed Puma
45251
52907
class WinIfExists;
45252
52908
class WinImportHandler;
45267
52923
class CCExprResolve;
45268
52924
class CExprResolve;
45269
52925
namespace Puma {
45270
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
52926
 
 
52927
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52928
class CT_Program : public CT_DeclList, public CSemScope {
 
52929
#line 52930 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52930
  friend class ::WinIfExists;
45271
52931
  friend class ::WinImportHandler;
45272
52932
  friend class ::WinMacros;
45273
52933
  friend class ::CMatchSyntax;
45286
52946
  friend class ::CCExprResolve;
45287
52947
  friend class ::CExprResolve;
45288
52948
 
 
52949
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52950
 
45289
52951
public:
45290
52952
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
45291
52953
  static const char *NodeId ();
45292
52954
  const char *NodeName () const { return NodeId (); }
45293
52955
};
45294
52956
   
 
52957
 
 
52958
#line 52959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45295
52959
} // closed Puma
45296
52960
class WinIfExists;
45297
52961
class WinImportHandler;
45312
52976
class CCExprResolve;
45313
52977
class CExprResolve;
45314
52978
namespace Puma {
45315
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
 
52979
 
 
52980
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
52981
class CT_ObjDecl : public CT_Decl {
 
52982
#line 52983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
52983
  friend class ::WinIfExists;
45316
52984
  friend class ::WinImportHandler;
45317
52985
  friend class ::WinMacros;
45318
52986
  friend class ::CMatchSyntax;
45331
52999
  friend class ::CCExprResolve;
45332
53000
  friend class ::CExprResolve;
45333
53001
 
 
53002
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53003
 
45334
53004
  CTree *sons[3]; // declspecs, declarators, colon
45335
53005
 
45336
53006
public:
45348
53018
  }
45349
53019
};
45350
53020
 
 
53021
 
 
53022
#line 53023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45351
53023
} // closed Puma
45352
53024
class WinIfExists;
45353
53025
class WinImportHandler;
45368
53040
class CCExprResolve;
45369
53041
class CExprResolve;
45370
53042
namespace Puma {
45371
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
53043
 
 
53044
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53045
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
53046
#line 53047 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53047
  friend class ::WinIfExists;
45372
53048
  friend class ::WinImportHandler;
45373
53049
  friend class ::WinMacros;
45374
53050
  friend class ::CMatchSyntax;
45387
53063
  friend class ::CCExprResolve;
45388
53064
  friend class ::CExprResolve;
45389
53065
 
 
53066
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53067
 
45390
53068
  CTree *sons[3]; // export, param_list, decl
45391
53069
 
45392
53070
public:
45407
53085
  CTree *Declaration () const { return sons[2]; }
45408
53086
};
45409
53087
 
 
53088
 
 
53089
#line 53090 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45410
53090
} // closed Puma
45411
53091
class WinIfExists;
45412
53092
class WinImportHandler;
45427
53107
class CCExprResolve;
45428
53108
class CExprResolve;
45429
53109
namespace Puma {
45430
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
53110
 
 
53111
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53112
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
53113
#line 53114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53114
  friend class ::WinIfExists;
45431
53115
  friend class ::WinImportHandler;
45432
53116
  friend class ::WinMacros;
45433
53117
  friend class ::CMatchSyntax;
45446
53130
  friend class ::CCExprResolve;
45447
53131
  friend class ::CExprResolve;
45448
53132
 
 
53133
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53134
 
45449
53135
protected:
45450
53136
  CT_TemplateParamDecl () {}
45451
53137
  
45454
53140
  CSemObject *SemObject () const { return (CSemObject*)this; }
45455
53141
};
45456
53142
 
 
53143
 
 
53144
#line 53145 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45457
53145
} // closed Puma
45458
53146
class WinIfExists;
45459
53147
class WinImportHandler;
45474
53162
class CCExprResolve;
45475
53163
class CExprResolve;
45476
53164
namespace Puma {
45477
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
53165
 
 
53166
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53167
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
53168
#line 53169 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53169
  friend class ::WinIfExists;
45478
53170
  friend class ::WinImportHandler;
45479
53171
  friend class ::WinMacros;
45480
53172
  friend class ::CMatchSyntax;
45493
53185
  friend class ::CCExprResolve;
45494
53186
  friend class ::CExprResolve;
45495
53187
 
 
53188
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53189
 
45496
53190
  CTree *sons[3]; // declspecs, declarator, init
45497
53191
 
45498
53192
public:
45513
53207
  }
45514
53208
};
45515
53209
 
 
53210
 
 
53211
#line 53212 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45516
53212
} // closed Puma
45517
53213
class WinIfExists;
45518
53214
class WinImportHandler;
45533
53229
class CCExprResolve;
45534
53230
class CExprResolve;
45535
53231
namespace Puma {
45536
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
53232
 
 
53233
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53234
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
53235
#line 53236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53236
  friend class ::WinIfExists;
45537
53237
  friend class ::WinImportHandler;
45538
53238
  friend class ::WinMacros;
45539
53239
  friend class ::CMatchSyntax;
45552
53252
  friend class ::CCExprResolve;
45553
53253
  friend class ::CExprResolve;
45554
53254
 
 
53255
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53256
 
45555
53257
  CTree *sons[4]; // params, key, id, init
45556
53258
 
45557
53259
public:
45573
53275
  }
45574
53276
};
45575
53277
 
 
53278
 
 
53279
#line 53280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45576
53280
} // closed Puma
45577
53281
class WinIfExists;
45578
53282
class WinImportHandler;
45593
53297
class CCExprResolve;
45594
53298
class CExprResolve;
45595
53299
namespace Puma {
45596
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
53300
 
 
53301
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53302
class CT_EnumDef : public CT_Decl, public CSemObject {
 
53303
#line 53304 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53304
  friend class ::WinIfExists;
45597
53305
  friend class ::WinImportHandler;
45598
53306
  friend class ::WinMacros;
45599
53307
  friend class ::CMatchSyntax;
45612
53320
  friend class ::CCExprResolve;
45613
53321
  friend class ::CExprResolve;
45614
53322
 
 
53323
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53324
 
45615
53325
  CTree *sons[3]; // key, name, enumerators
45616
53326
 
45617
53327
public:
45631
53341
  CSemObject *SemObject () const { return (CSemObject*)this; }
45632
53342
};
45633
53343
 
 
53344
 
 
53345
#line 53346 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45634
53346
} // closed Puma
45635
53347
class WinIfExists;
45636
53348
class WinImportHandler;
45651
53363
class CCExprResolve;
45652
53364
class CExprResolve;
45653
53365
namespace Puma {
45654
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
53366
 
 
53367
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53368
class CT_Enumerator : public CT_Decl, public CSemObject {
 
53369
#line 53370 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53370
  friend class ::WinIfExists;
45655
53371
  friend class ::WinImportHandler;
45656
53372
  friend class ::WinMacros;
45657
53373
  friend class ::CMatchSyntax;
45670
53386
  friend class ::CCExprResolve;
45671
53387
  friend class ::CExprResolve;
45672
53388
 
 
53389
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53390
 
45673
53391
  CTree *sons[2]; // name, init
45674
53392
 
45675
53393
public:
45687
53405
  CSemObject *SemObject () const { return (CSemObject*)this; }
45688
53406
};
45689
53407
 
 
53408
 
 
53409
#line 53410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45690
53410
} // closed Puma
45691
53411
class WinIfExists;
45692
53412
class WinImportHandler;
45707
53427
class CCExprResolve;
45708
53428
class CExprResolve;
45709
53429
namespace Puma {
45710
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
53430
 
 
53431
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53432
class CT_FctDef : public CT_Decl, public CSemObject {
 
53433
#line 53434 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53434
  friend class ::WinIfExists;
45711
53435
  friend class ::WinImportHandler;
45712
53436
  friend class ::WinMacros;
45713
53437
  friend class ::CMatchSyntax;
45726
53450
  friend class ::CCExprResolve;
45727
53451
  friend class ::CExprResolve;
45728
53452
 
 
53453
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53454
 
45729
53455
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
45730
53456
 
45731
53457
public:
45756
53482
  }
45757
53483
};
45758
53484
 
 
53485
 
 
53486
#line 53487 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45759
53487
} // closed Puma
45760
53488
class WinIfExists;
45761
53489
class WinImportHandler;
45776
53504
class CCExprResolve;
45777
53505
class CExprResolve;
45778
53506
namespace Puma {
45779
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
 
53507
 
 
53508
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53509
class CT_AsmDef : public CT_Decl {
 
53510
#line 53511 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53511
  friend class ::WinIfExists;
45780
53512
  friend class ::WinImportHandler;
45781
53513
  friend class ::WinMacros;
45782
53514
  friend class ::CMatchSyntax;
45795
53527
  friend class ::CCExprResolve;
45796
53528
  friend class ::CExprResolve;
45797
53529
 
 
53530
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53531
 
45798
53532
  CTree *sons[5]; // asm, open, str, close, semi_colon
45799
53533
 
45800
53534
public:
45811
53545
  }
45812
53546
};
45813
53547
 
 
53548
 
 
53549
#line 53550 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45814
53550
} // closed Puma
45815
53551
class WinIfExists;
45816
53552
class WinImportHandler;
45831
53567
class CCExprResolve;
45832
53568
class CExprResolve;
45833
53569
namespace Puma {
45834
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
53570
 
 
53571
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53572
class CT_Handler : public CT_Decl, public CSemScope {
 
53573
#line 53574 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53574
  friend class ::WinIfExists;
45835
53575
  friend class ::WinImportHandler;
45836
53576
  friend class ::WinMacros;
45837
53577
  friend class ::CMatchSyntax;
45850
53590
  friend class ::CCExprResolve;
45851
53591
  friend class ::CExprResolve;
45852
53592
 
 
53593
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53594
 
45853
53595
  CTree *sons[3]; // catch, exception_decl, stmt
45854
53596
 
45855
53597
public:
45867
53609
  }
45868
53610
};
45869
53611
 
 
53612
 
 
53613
#line 53614 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45870
53614
} // closed Puma
45871
53615
class WinIfExists;
45872
53616
class WinImportHandler;
45887
53631
class CCExprResolve;
45888
53632
class CExprResolve;
45889
53633
namespace Puma {
45890
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
 
53634
 
 
53635
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53636
class CT_LinkageSpec : public CT_Decl {
 
53637
#line 53638 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53638
  friend class ::WinIfExists;
45891
53639
  friend class ::WinImportHandler;
45892
53640
  friend class ::WinMacros;
45893
53641
  friend class ::CMatchSyntax;
45906
53654
  friend class ::CCExprResolve;
45907
53655
  friend class ::CExprResolve;
45908
53656
 
 
53657
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53658
 
45909
53659
  CTree *sons[5]; // extern, str, open, decls, close
45910
53660
 
45911
53661
public:
45930
53680
  }
45931
53681
};
45932
53682
 
 
53683
 
 
53684
#line 53685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45933
53685
} // closed Puma
45934
53686
class WinIfExists;
45935
53687
class WinImportHandler;
45950
53702
class CCExprResolve;
45951
53703
class CExprResolve;
45952
53704
namespace Puma {
45953
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
53705
 
 
53706
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53707
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
53708
#line 53709 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53709
  friend class ::WinIfExists;
45954
53710
  friend class ::WinImportHandler;
45955
53711
  friend class ::WinMacros;
45956
53712
  friend class ::CMatchSyntax;
45969
53725
  friend class ::CCExprResolve;
45970
53726
  friend class ::CExprResolve;
45971
53727
 
 
53728
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53729
 
45972
53730
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
45973
53731
 
45974
53732
public:
45993
53751
  }
45994
53752
};
45995
53753
 
 
53754
 
 
53755
#line 53756 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
45996
53756
} // closed Puma
45997
53757
class WinIfExists;
45998
53758
class WinImportHandler;
46013
53773
class CCExprResolve;
46014
53774
class CExprResolve;
46015
53775
namespace Puma {
46016
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
53776
 
 
53777
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53778
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
53779
#line 53780 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53780
  friend class ::WinIfExists;
46017
53781
  friend class ::WinImportHandler;
46018
53782
  friend class ::WinMacros;
46019
53783
  friend class ::CMatchSyntax;
46032
53796
  friend class ::CCExprResolve;
46033
53797
  friend class ::CExprResolve;
46034
53798
 
 
53799
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53800
 
46035
53801
public:
46036
53802
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
46037
53803
   CT_DeclList (size, 2) { AddProperties (props); }
46039
53805
  const char *NodeName () const { return NodeId (); }
46040
53806
};
46041
53807
 
 
53808
 
 
53809
#line 53810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46042
53810
} // closed Puma
46043
53811
class WinIfExists;
46044
53812
class WinImportHandler;
46059
53827
class CCExprResolve;
46060
53828
class CExprResolve;
46061
53829
namespace Puma {
46062
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
53830
 
 
53831
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53832
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
53833
#line 53834 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53834
  friend class ::WinIfExists;
46063
53835
  friend class ::WinImportHandler;
46064
53836
  friend class ::WinMacros;
46065
53837
  friend class ::CMatchSyntax;
46078
53850
  friend class ::CCExprResolve;
46079
53851
  friend class ::CExprResolve;
46080
53852
 
 
53853
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53854
 
46081
53855
public:
46082
53856
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
46083
53857
  static const char *NodeId ();
46084
53858
  const char *NodeName () const { return NodeId (); }
46085
53859
};
46086
53860
 
 
53861
 
 
53862
#line 53863 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46087
53863
} // closed Puma
46088
53864
class WinIfExists;
46089
53865
class WinImportHandler;
46104
53880
class CCExprResolve;
46105
53881
class CExprResolve;
46106
53882
namespace Puma {
46107
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
 
53883
 
 
53884
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53885
class CT_ArgNameList : public CT_ArgDeclList {
 
53886
#line 53887 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53887
  friend class ::WinIfExists;
46108
53888
  friend class ::WinImportHandler;
46109
53889
  friend class ::WinMacros;
46110
53890
  friend class ::CMatchSyntax;
46123
53903
  friend class ::CCExprResolve;
46124
53904
  friend class ::CExprResolve;
46125
53905
 
 
53906
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53907
 
46126
53908
public:
46127
53909
  CT_ArgNameList () : CT_ArgDeclList () {}
46128
53910
  static const char *NodeId ();
46129
53911
  const char *NodeName () const { return NodeId (); }
46130
53912
};
46131
53913
 
 
53914
 
 
53915
#line 53916 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46132
53916
} // closed Puma
46133
53917
class WinIfExists;
46134
53918
class WinImportHandler;
46149
53933
class CCExprResolve;
46150
53934
class CExprResolve;
46151
53935
namespace Puma {
46152
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
53936
 
 
53937
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53938
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
53939
#line 53940 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
53940
  friend class ::WinIfExists;
46153
53941
  friend class ::WinImportHandler;
46154
53942
  friend class ::WinMacros;
46155
53943
  friend class ::CMatchSyntax;
46168
53956
  friend class ::CCExprResolve;
46169
53957
  friend class ::CExprResolve;
46170
53958
 
 
53959
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
53960
 
46171
53961
  CTree *sons[3]; // ns, name, members
46172
53962
 
46173
53963
public:
46190
53980
  }
46191
53981
};
46192
53982
 
 
53983
 
 
53984
#line 53985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46193
53985
} // closed Puma
46194
53986
class WinIfExists;
46195
53987
class WinImportHandler;
46210
54002
class CCExprResolve;
46211
54003
class CExprResolve;
46212
54004
namespace Puma {
46213
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
54005
 
 
54006
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54007
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
54008
#line 54009 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54009
  friend class ::WinIfExists;
46214
54010
  friend class ::WinImportHandler;
46215
54011
  friend class ::WinMacros;
46216
54012
  friend class ::CMatchSyntax;
46229
54025
  friend class ::CCExprResolve;
46230
54026
  friend class ::CExprResolve;
46231
54027
 
 
54028
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54029
 
46232
54030
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
46233
54031
 
46234
54032
public:
46247
54045
  }
46248
54046
};
46249
54047
 
 
54048
 
 
54049
#line 54050 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46250
54050
} // closed Puma
46251
54051
class WinIfExists;
46252
54052
class WinImportHandler;
46267
54067
class CCExprResolve;
46268
54068
class CExprResolve;
46269
54069
namespace Puma {
46270
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
 
54070
 
 
54071
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54072
class CT_UsingDirective : public CT_Decl {
 
54073
#line 54074 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54074
  friend class ::WinIfExists;
46271
54075
  friend class ::WinImportHandler;
46272
54076
  friend class ::WinMacros;
46273
54077
  friend class ::CMatchSyntax;
46286
54090
  friend class ::CCExprResolve;
46287
54091
  friend class ::CExprResolve;
46288
54092
 
 
54093
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54094
 
46289
54095
  CTree *sons[4]; // using, ns, name, semi_colon
46290
54096
 
46291
54097
public:
46308
54114
/*                                                                           */
46309
54115
/*****************************************************************************/
46310
54116
 
 
54117
 
 
54118
#line 54119 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46311
54119
} // closed Puma
46312
54120
class WinIfExists;
46313
54121
class WinImportHandler;
46328
54136
class CCExprResolve;
46329
54137
class CExprResolve;
46330
54138
namespace Puma {
46331
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
 
54139
 
 
54140
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54141
class CT_Declarator : public CTree {
 
54142
#line 54143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54143
  friend class ::WinIfExists;
46332
54144
  friend class ::WinImportHandler;
46333
54145
  friend class ::WinMacros;
46334
54146
  friend class ::CMatchSyntax;
46347
54159
  friend class ::CCExprResolve;
46348
54160
  friend class ::CExprResolve;
46349
54161
 
 
54162
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54163
 
46350
54164
protected:
46351
54165
  CT_Declarator () {}
46352
54166
 
46359
54173
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
46360
54174
};
46361
54175
 
 
54176
 
 
54177
#line 54178 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46362
54178
} // closed Puma
46363
54179
class WinIfExists;
46364
54180
class WinImportHandler;
46379
54195
class CCExprResolve;
46380
54196
class CExprResolve;
46381
54197
namespace Puma {
46382
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
54198
 
 
54199
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54200
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
54201
#line 54202 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54202
  friend class ::WinIfExists;
46383
54203
  friend class ::WinImportHandler;
46384
54204
  friend class ::WinMacros;
46385
54205
  friend class ::CMatchSyntax;
46398
54218
  friend class ::CCExprResolve;
46399
54219
  friend class ::CExprResolve;
46400
54220
 
 
54221
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54222
 
46401
54223
  CTree *sons[2]; // declarator, init
46402
54224
  CTree *obj_decl;
46403
54225
 
46420
54242
  }
46421
54243
};
46422
54244
 
 
54245
 
 
54246
#line 54247 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46423
54247
} // closed Puma
46424
54248
class WinIfExists;
46425
54249
class WinImportHandler;
46440
54264
class CCExprResolve;
46441
54265
class CExprResolve;
46442
54266
namespace Puma {
46443
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
54267
 
 
54268
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54269
class CT_BracedDeclarator : public CT_Declarator {
 
54270
#line 54271 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54271
  friend class ::WinIfExists;
46444
54272
  friend class ::WinImportHandler;
46445
54273
  friend class ::WinMacros;
46446
54274
  friend class ::CMatchSyntax;
46459
54287
  friend class ::CCExprResolve;
46460
54288
  friend class ::CExprResolve;
46461
54289
 
 
54290
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54291
 
46462
54292
  CTree *sons[4]; // open, win_specs, declarator, close
46463
54293
 
46464
54294
public:
46478
54308
  }
46479
54309
};
46480
54310
 
 
54311
 
 
54312
#line 54313 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46481
54313
} // closed Puma
46482
54314
class WinIfExists;
46483
54315
class WinImportHandler;
46498
54330
class CCExprResolve;
46499
54331
class CExprResolve;
46500
54332
namespace Puma {
46501
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
 
54333
 
 
54334
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54335
class CT_ArrayDelimiter : public CTree {
 
54336
#line 54337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54337
  friend class ::WinIfExists;
46502
54338
  friend class ::WinImportHandler;
46503
54339
  friend class ::WinMacros;
46504
54340
  friend class ::CMatchSyntax;
46517
54353
  friend class ::CCExprResolve;
46518
54354
  friend class ::CExprResolve;
46519
54355
 
 
54356
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54357
 
46520
54358
  CTree *sons[4]; // star, static, quals, expr
46521
54359
  bool pos0;
46522
54360
 
46537
54375
  }
46538
54376
};
46539
54377
 
 
54378
 
 
54379
#line 54380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46540
54380
} // closed Puma
46541
54381
class WinIfExists;
46542
54382
class WinImportHandler;
46557
54397
class CCExprResolve;
46558
54398
class CExprResolve;
46559
54399
namespace Puma {
46560
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
 
54400
 
 
54401
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54402
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
54403
#line 54404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54404
  friend class ::WinIfExists;
46561
54405
  friend class ::WinImportHandler;
46562
54406
  friend class ::WinMacros;
46563
54407
  friend class ::CMatchSyntax;
46576
54420
  friend class ::CCExprResolve;
46577
54421
  friend class ::CExprResolve;
46578
54422
 
 
54423
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54424
 
46579
54425
  CTree *sons[4]; // declarator, open, delim, close
46580
54426
 
46581
54427
public:
46597
54443
  CSemValue *SemValue () const { return (CSemValue*)this; }
46598
54444
};
46599
54445
 
 
54446
 
 
54447
#line 54448 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46600
54448
} // closed Puma
46601
54449
class WinIfExists;
46602
54450
class WinImportHandler;
46617
54465
class CCExprResolve;
46618
54466
class CExprResolve;
46619
54467
namespace Puma {
46620
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
54468
 
 
54469
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54470
class CT_FctDeclarator : public CT_Declarator {
 
54471
#line 54472 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54472
  friend class ::WinIfExists;
46621
54473
  friend class ::WinImportHandler;
46622
54474
  friend class ::WinMacros;
46623
54475
  friend class ::CMatchSyntax;
46636
54488
  friend class ::CCExprResolve;
46637
54489
  friend class ::CExprResolve;
46638
54490
 
 
54491
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54492
 
46639
54493
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
46640
54494
 
46641
54495
public:
46655
54509
  }
46656
54510
};
46657
54511
 
 
54512
 
 
54513
#line 54514 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46658
54514
} // closed Puma
46659
54515
class WinIfExists;
46660
54516
class WinImportHandler;
46675
54531
class CCExprResolve;
46676
54532
class CExprResolve;
46677
54533
namespace Puma {
46678
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
54534
 
 
54535
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54536
class CT_RefDeclarator : public CT_Declarator {
 
54537
#line 54538 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54538
  friend class ::WinIfExists;
46679
54539
  friend class ::WinImportHandler;
46680
54540
  friend class ::WinMacros;
46681
54541
  friend class ::CMatchSyntax;
46694
54554
  friend class ::CCExprResolve;
46695
54555
  friend class ::CExprResolve;
46696
54556
 
 
54557
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54558
 
46697
54559
  CTree *sons[2]; // ref, declarator
46698
54560
 
46699
54561
public:
46708
54570
  }
46709
54571
};
46710
54572
 
 
54573
 
 
54574
#line 54575 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46711
54575
} // closed Puma
46712
54576
class WinIfExists;
46713
54577
class WinImportHandler;
46728
54592
class CCExprResolve;
46729
54593
class CExprResolve;
46730
54594
namespace Puma {
46731
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
54595
 
 
54596
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54597
class CT_PtrDeclarator : public CT_Declarator {
 
54598
#line 54599 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54599
  friend class ::WinIfExists;
46732
54600
  friend class ::WinImportHandler;
46733
54601
  friend class ::WinMacros;
46734
54602
  friend class ::CMatchSyntax;
46747
54615
  friend class ::CCExprResolve;
46748
54616
  friend class ::CExprResolve;
46749
54617
 
 
54618
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54619
 
46750
54620
  CTree *sons[3]; // ptr, cv_quals, declarator
46751
54621
 
46752
54622
public:
46764
54634
  }
46765
54635
};
46766
54636
 
 
54637
 
 
54638
#line 54639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46767
54639
} // closed Puma
46768
54640
class WinIfExists;
46769
54641
class WinImportHandler;
46784
54656
class CCExprResolve;
46785
54657
class CExprResolve;
46786
54658
namespace Puma {
46787
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
54659
 
 
54660
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54661
class CT_MembPtrDeclarator : public CT_Declarator {
 
54662
#line 54663 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54663
  friend class ::WinIfExists;
46788
54664
  friend class ::WinImportHandler;
46789
54665
  friend class ::WinMacros;
46790
54666
  friend class ::CMatchSyntax;
46803
54679
  friend class ::CCExprResolve;
46804
54680
  friend class ::CExprResolve;
46805
54681
 
 
54682
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54683
 
46806
54684
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
46807
54685
 
46808
54686
public:
46821
54699
  }
46822
54700
};
46823
54701
 
 
54702
 
 
54703
#line 54704 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46824
54704
} // closed Puma
46825
54705
class WinIfExists;
46826
54706
class WinImportHandler;
46841
54721
class CCExprResolve;
46842
54722
class CExprResolve;
46843
54723
namespace Puma {
46844
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
54724
 
 
54725
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54726
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
54727
#line 54728 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54728
  friend class ::WinIfExists;
46845
54729
  friend class ::WinImportHandler;
46846
54730
  friend class ::WinMacros;
46847
54731
  friend class ::CMatchSyntax;
46860
54744
  friend class ::CCExprResolve;
46861
54745
  friend class ::CExprResolve;
46862
54746
 
 
54747
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54748
 
46863
54749
  CTree *sons[3]; // declarator, colon, expr
46864
54750
 
46865
54751
public:
46885
54771
/*                                                                           */
46886
54772
/*****************************************************************************/
46887
54773
 
 
54774
 
 
54775
#line 54776 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46888
54776
} // closed Puma
46889
54777
class WinIfExists;
46890
54778
class WinImportHandler;
46905
54793
class CCExprResolve;
46906
54794
class CExprResolve;
46907
54795
namespace Puma {
46908
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
 
54796
 
 
54797
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54798
class CT_Statement : public CTree {
 
54799
#line 54800 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54800
  friend class ::WinIfExists;
46909
54801
  friend class ::WinImportHandler;
46910
54802
  friend class ::WinMacros;
46911
54803
  friend class ::CMatchSyntax;
46923
54815
  friend class ::PragmaOnce;
46924
54816
  friend class ::CCExprResolve;
46925
54817
  friend class ::CExprResolve;
 
54818
 
 
54819
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
46926
54820
 
46927
54821
protected:
46928
54822
  CT_Statement () {}
46929
54823
};
46930
54824
 
 
54825
 
 
54826
#line 54827 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46931
54827
} // closed Puma
46932
54828
class WinIfExists;
46933
54829
class WinImportHandler;
46948
54844
class CCExprResolve;
46949
54845
class CExprResolve;
46950
54846
namespace Puma {
46951
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
 
54847
 
 
54848
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54849
class CT_LabelStmt : public CT_Statement {
 
54850
#line 54851 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54851
  friend class ::WinIfExists;
46952
54852
  friend class ::WinImportHandler;
46953
54853
  friend class ::WinMacros;
46954
54854
  friend class ::CMatchSyntax;
46967
54867
  friend class ::CCExprResolve;
46968
54868
  friend class ::CExprResolve;
46969
54869
 
 
54870
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54871
 
46970
54872
  CTree *sons[3]; // id, colon, stmt
46971
54873
 
46972
54874
public:
46984
54886
  }
46985
54887
};
46986
54888
 
 
54889
 
 
54890
#line 54891 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
46987
54891
} // closed Puma
46988
54892
class WinIfExists;
46989
54893
class WinImportHandler;
47004
54908
class CCExprResolve;
47005
54909
class CExprResolve;
47006
54910
namespace Puma {
47007
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
 
54911
 
 
54912
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54913
class CT_DefaultStmt : public CT_Statement {
 
54914
#line 54915 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54915
  friend class ::WinIfExists;
47008
54916
  friend class ::WinImportHandler;
47009
54917
  friend class ::WinMacros;
47010
54918
  friend class ::CMatchSyntax;
47023
54931
  friend class ::CCExprResolve;
47024
54932
  friend class ::CExprResolve;
47025
54933
 
 
54934
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54935
 
47026
54936
  CTree *sons[3]; // keyword, colon, stmt
47027
54937
 
47028
54938
public:
47039
54949
  }
47040
54950
};
47041
54951
 
 
54952
 
 
54953
#line 54954 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47042
54954
} // closed Puma
47043
54955
class WinIfExists;
47044
54956
class WinImportHandler;
47059
54971
class CCExprResolve;
47060
54972
class CExprResolve;
47061
54973
namespace Puma {
47062
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
 
54974
 
 
54975
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54976
class CT_TryStmt : public CT_Statement {
 
54977
#line 54978 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
54978
  friend class ::WinIfExists;
47063
54979
  friend class ::WinImportHandler;
47064
54980
  friend class ::WinMacros;
47065
54981
  friend class ::CMatchSyntax;
47078
54994
  friend class ::CCExprResolve;
47079
54995
  friend class ::CExprResolve;
47080
54996
 
 
54997
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
54998
 
47081
54999
  CTree *sons[3]; // try, stmt, handlers
47082
55000
 
47083
55001
public:
47095
55013
  }
47096
55014
};
47097
55015
 
 
55016
 
 
55017
#line 55018 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47098
55018
} // closed Puma
47099
55019
class WinIfExists;
47100
55020
class WinImportHandler;
47115
55035
class CCExprResolve;
47116
55036
class CExprResolve;
47117
55037
namespace Puma {
47118
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
 
55038
 
 
55039
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55040
class CT_CaseStmt : public CT_Statement {
 
55041
#line 55042 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55042
  friend class ::WinIfExists;
47119
55043
  friend class ::WinImportHandler;
47120
55044
  friend class ::WinMacros;
47121
55045
  friend class ::CMatchSyntax;
47134
55058
  friend class ::CCExprResolve;
47135
55059
  friend class ::CExprResolve;
47136
55060
 
 
55061
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55062
 
47137
55063
  CTree *sons[4]; // keyword, expr, colon, stmt
47138
55064
 
47139
55065
public:
47151
55077
  }
47152
55078
};
47153
55079
 
 
55080
 
 
55081
#line 55082 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47154
55082
} // closed Puma
47155
55083
class WinIfExists;
47156
55084
class WinImportHandler;
47171
55099
class CCExprResolve;
47172
55100
class CExprResolve;
47173
55101
namespace Puma {
47174
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
 
55102
 
 
55103
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55104
class CT_ExprStmt : public CT_Statement {
 
55105
#line 55106 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55106
  friend class ::WinIfExists;
47175
55107
  friend class ::WinImportHandler;
47176
55108
  friend class ::WinMacros;
47177
55109
  friend class ::CMatchSyntax;
47190
55122
  friend class ::CCExprResolve;
47191
55123
  friend class ::CExprResolve;
47192
55124
 
 
55125
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55126
 
47193
55127
  CTree *sons[2]; // expr, semi_colon
47194
55128
 
47195
55129
public:
47204
55138
  }
47205
55139
};
47206
55140
 
 
55141
 
 
55142
#line 55143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47207
55143
} // closed Puma
47208
55144
class WinIfExists;
47209
55145
class WinImportHandler;
47224
55160
class CCExprResolve;
47225
55161
class CExprResolve;
47226
55162
namespace Puma {
47227
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
 
55163
 
 
55164
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55165
class CT_DeclStmt : public CT_Statement {
 
55166
#line 55167 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55167
  friend class ::WinIfExists;
47228
55168
  friend class ::WinImportHandler;
47229
55169
  friend class ::WinMacros;
47230
55170
  friend class ::CMatchSyntax;
47243
55183
  friend class ::CCExprResolve;
47244
55184
  friend class ::CExprResolve;
47245
55185
 
 
55186
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55187
 
47246
55188
  CTree *_decl;
47247
55189
 
47248
55190
public:
47255
55197
   { if (old_son == _decl) _decl = new_son; }
47256
55198
};
47257
55199
 
 
55200
 
 
55201
#line 55202 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47258
55202
} // closed Puma
47259
55203
class WinIfExists;
47260
55204
class WinImportHandler;
47275
55219
class CCExprResolve;
47276
55220
class CExprResolve;
47277
55221
namespace Puma {
47278
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
55222
 
 
55223
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55224
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
55225
#line 55226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55226
  friend class ::WinIfExists;
47279
55227
  friend class ::WinImportHandler;
47280
55228
  friend class ::WinMacros;
47281
55229
  friend class ::CMatchSyntax;
47294
55242
  friend class ::CCExprResolve;
47295
55243
  friend class ::CExprResolve;
47296
55244
 
 
55245
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55246
 
47297
55247
  CTree *sons[5]; // keyword, open, cond, close, stmt
47298
55248
 
47299
55249
public:
47311
55261
  }
47312
55262
};
47313
55263
 
 
55264
 
 
55265
#line 55266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47314
55266
} // closed Puma
47315
55267
class WinIfExists;
47316
55268
class WinImportHandler;
47331
55283
class CCExprResolve;
47332
55284
class CExprResolve;
47333
55285
namespace Puma {
47334
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
55286
 
 
55287
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55288
class CT_IfStmt : public CT_Statement, public CSemScope {
 
55289
#line 55290 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55290
  friend class ::WinIfExists;
47335
55291
  friend class ::WinImportHandler;
47336
55292
  friend class ::WinMacros;
47337
55293
  friend class ::CMatchSyntax;
47350
55306
  friend class ::CCExprResolve;
47351
55307
  friend class ::CExprResolve;
47352
55308
 
 
55309
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55310
 
47353
55311
  CTree *sons[5]; // keyword, open, cond, close, stmt
47354
55312
 
47355
55313
public:
47367
55325
  }
47368
55326
};
47369
55327
 
 
55328
 
 
55329
#line 55330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47370
55330
} // closed Puma
47371
55331
class WinIfExists;
47372
55332
class WinImportHandler;
47387
55347
class CCExprResolve;
47388
55348
class CExprResolve;
47389
55349
namespace Puma {
47390
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
55350
 
 
55351
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55352
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
55353
#line 55354 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55354
  friend class ::WinIfExists;
47391
55355
  friend class ::WinImportHandler;
47392
55356
  friend class ::WinMacros;
47393
55357
  friend class ::CMatchSyntax;
47406
55370
  friend class ::CCExprResolve;
47407
55371
  friend class ::CExprResolve;
47408
55372
 
 
55373
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55374
 
47409
55375
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
47410
55376
 
47411
55377
public:
47426
55392
  }
47427
55393
};
47428
55394
 
 
55395
 
 
55396
#line 55397 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47429
55397
} // closed Puma
47430
55398
class WinIfExists;
47431
55399
class WinImportHandler;
47446
55414
class CCExprResolve;
47447
55415
class CExprResolve;
47448
55416
namespace Puma {
47449
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
 
55417
 
 
55418
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55419
class CT_BreakStmt : public CT_Statement {
 
55420
#line 55421 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55421
  friend class ::WinIfExists;
47450
55422
  friend class ::WinImportHandler;
47451
55423
  friend class ::WinMacros;
47452
55424
  friend class ::CMatchSyntax;
47465
55437
  friend class ::CCExprResolve;
47466
55438
  friend class ::CExprResolve;
47467
55439
 
 
55440
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55441
 
47468
55442
  CTree *sons[2]; // key, semi_colon
47469
55443
 
47470
55444
public:
47478
55452
  }
47479
55453
};
47480
55454
 
 
55455
 
 
55456
#line 55457 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47481
55457
} // closed Puma
47482
55458
class WinIfExists;
47483
55459
class WinImportHandler;
47498
55474
class CCExprResolve;
47499
55475
class CExprResolve;
47500
55476
namespace Puma {
47501
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
 
55477
 
 
55478
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55479
class CT_ContinueStmt : public CT_Statement {
 
55480
#line 55481 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55481
  friend class ::WinIfExists;
47502
55482
  friend class ::WinImportHandler;
47503
55483
  friend class ::WinMacros;
47504
55484
  friend class ::CMatchSyntax;
47517
55497
  friend class ::CCExprResolve;
47518
55498
  friend class ::CExprResolve;
47519
55499
 
 
55500
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55501
 
47520
55502
  CTree *sons[2]; // key, semi_colon
47521
55503
 
47522
55504
public:
47530
55512
  }
47531
55513
};
47532
55514
 
 
55515
 
 
55516
#line 55517 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47533
55517
} // closed Puma
47534
55518
class WinIfExists;
47535
55519
class WinImportHandler;
47550
55534
class CCExprResolve;
47551
55535
class CExprResolve;
47552
55536
namespace Puma {
47553
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
 
55537
 
 
55538
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55539
class CT_GotoStmt : public CT_Statement {
 
55540
#line 55541 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55541
  friend class ::WinIfExists;
47554
55542
  friend class ::WinImportHandler;
47555
55543
  friend class ::WinMacros;
47556
55544
  friend class ::CMatchSyntax;
47569
55557
  friend class ::CCExprResolve;
47570
55558
  friend class ::CExprResolve;
47571
55559
 
 
55560
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55561
 
47572
55562
  CTree *sons[3]; // key, label, semi_colon
47573
55563
 
47574
55564
public:
47585
55575
  }
47586
55576
};
47587
55577
 
 
55578
 
 
55579
#line 55580 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47588
55580
} // closed Puma
47589
55581
class WinIfExists;
47590
55582
class WinImportHandler;
47605
55597
class CCExprResolve;
47606
55598
class CExprResolve;
47607
55599
namespace Puma {
47608
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
 
55600
 
 
55601
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55602
class CT_ReturnStmt : public CT_Statement {
 
55603
#line 55604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55604
  friend class ::WinIfExists;
47609
55605
  friend class ::WinImportHandler;
47610
55606
  friend class ::WinMacros;
47611
55607
  friend class ::CMatchSyntax;
47624
55620
  friend class ::CCExprResolve;
47625
55621
  friend class ::CExprResolve;
47626
55622
 
 
55623
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55624
 
47627
55625
  CTree *sons[3]; // key, expr, semi_colon
47628
55626
 
47629
55627
public:
47640
55638
  }
47641
55639
};
47642
55640
 
 
55641
 
 
55642
#line 55643 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47643
55643
} // closed Puma
47644
55644
class WinIfExists;
47645
55645
class WinImportHandler;
47660
55660
class CCExprResolve;
47661
55661
class CExprResolve;
47662
55662
namespace Puma {
47663
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
55663
 
 
55664
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55665
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
55666
#line 55667 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55667
  friend class ::WinIfExists;
47664
55668
  friend class ::WinImportHandler;
47665
55669
  friend class ::WinMacros;
47666
55670
  friend class ::CMatchSyntax;
47679
55683
  friend class ::CCExprResolve;
47680
55684
  friend class ::CExprResolve;
47681
55685
 
 
55686
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55687
 
47682
55688
  CTree *sons[5]; // key, open, cond, close, stmt
47683
55689
 
47684
55690
public:
47696
55702
  }
47697
55703
};
47698
55704
 
 
55705
 
 
55706
#line 55707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47699
55707
} // closed Puma
47700
55708
class WinIfExists;
47701
55709
class WinImportHandler;
47716
55724
class CCExprResolve;
47717
55725
class CExprResolve;
47718
55726
namespace Puma {
47719
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
 
55727
 
 
55728
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55729
class CT_DoStmt : public CT_Statement {
 
55730
#line 55731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55731
  friend class ::WinIfExists;
47720
55732
  friend class ::WinImportHandler;
47721
55733
  friend class ::WinMacros;
47722
55734
  friend class ::CMatchSyntax;
47735
55747
  friend class ::CCExprResolve;
47736
55748
  friend class ::CExprResolve;
47737
55749
 
 
55750
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55751
 
47738
55752
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
47739
55753
 
47740
55754
public:
47754
55768
  }
47755
55769
};
47756
55770
 
 
55771
 
 
55772
#line 55773 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47757
55773
} // closed Puma
47758
55774
class WinIfExists;
47759
55775
class WinImportHandler;
47774
55790
class CCExprResolve;
47775
55791
class CExprResolve;
47776
55792
namespace Puma {
47777
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
55793
 
 
55794
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55795
class CT_ForStmt : public CT_Statement, public CSemScope {
 
55796
#line 55797 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55797
  friend class ::WinIfExists;
47778
55798
  friend class ::WinImportHandler;
47779
55799
  friend class ::WinMacros;
47780
55800
  friend class ::CMatchSyntax;
47793
55813
  friend class ::CCExprResolve;
47794
55814
  friend class ::CExprResolve;
47795
55815
 
 
55816
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55817
 
47796
55818
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
47797
55819
 
47798
55820
public:
47814
55836
  }
47815
55837
};
47816
55838
 
 
55839
 
 
55840
#line 55841 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47817
55841
} // closed Puma
47818
55842
class WinIfExists;
47819
55843
class WinImportHandler;
47834
55858
class CCExprResolve;
47835
55859
class CExprResolve;
47836
55860
namespace Puma {
47837
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
55861
 
 
55862
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55863
class CT_Condition : public CT_Decl, public CSemObject {
 
55864
#line 55865 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55865
  friend class ::WinIfExists;
47838
55866
  friend class ::WinImportHandler;
47839
55867
  friend class ::WinMacros;
47840
55868
  friend class ::CMatchSyntax;
47853
55881
  friend class ::CCExprResolve;
47854
55882
  friend class ::CExprResolve;
47855
55883
 
 
55884
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55885
 
47856
55886
  CTree *sons[3]; // declspecs, declarator, init
47857
55887
 
47858
55888
public:
47879
55909
/*                                                                           */
47880
55910
/*****************************************************************************/
47881
55911
 
 
55912
 
 
55913
#line 55914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
47882
55914
} // closed Puma
47883
55915
class WinIfExists;
47884
55916
class WinImportHandler;
47899
55931
class CCExprResolve;
47900
55932
class CExprResolve;
47901
55933
namespace Puma {
47902
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
55934
 
 
55935
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55936
class CT_ClassDef : public CT_Decl, public CSemObject {
 
55937
#line 55938 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55938
  friend class ::WinIfExists;
47903
55939
  friend class ::WinImportHandler;
47904
55940
  friend class ::WinMacros;
47905
55941
  friend class ::CMatchSyntax;
47918
55954
  friend class ::CCExprResolve;
47919
55955
  friend class ::CExprResolve;
47920
55956
 
 
55957
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55958
 
47921
55959
   
 
55960
#line 55961 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55961
 
47922
55962
  struct __ac_wrapper_sons {
47923
55963
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
47924
55964
    operator A& () { return _data; }
47931
55971
    operator const void* () const { return _data; }
47932
55972
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
47933
55973
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
47934
 
  } sons; // key, name, bases, members
 
55974
  } sons
 
55975
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55976
 
 
55977
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
55978
; // key, name, bases, members
47935
55979
  CTree *obj_decl;
47936
55980
 
47937
55981
public:
47938
55982
  
 
55983
#line 55984 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
55984
 
47939
55985
 
47940
55986
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
47941
55987
  typedef void Result;
47971
56017
 
47972
56018
};
47973
56019
 
47974
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
 
56020
 
 
56021
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56022
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
56023
#line 56024 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56024
{
47975
56025
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
47976
56026
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
47977
56027
this->__exec_old_C1(arg0, arg1, arg2);
47978
56028
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
47979
56029
 
47980
56030
}
47981
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
 
56031
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
56032
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56033
{
47982
56034
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
47983
56035
  }
47984
56036
  static const char *NodeId ();
47998
56050
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
47999
56051
  }
48000
56052
   private:
 
56053
 
 
56054
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
48001
56055
 CTree * _intro_members ;
48002
56056
public :
48003
56057
CTree * IntroMembers ( ) const { return _intro_members ; }
48004
56058
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
56059
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56060
 
 
56061
#line 56062 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56062
 
48005
56063
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
48006
56064
  typedef void Result;
48007
56065
  typedef ::Puma::CT_ClassDef That;
48029
56087
};
48030
56088
 
48031
56089
 
 
56090
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56091
 
 
56092
#line 56093 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56093
 
48032
56094
public:
48033
56095
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
48034
56096
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
48037
56099
 
48038
56100
}
48039
56101
 
 
56102
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56103
 
 
56104
#line 56105 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56105
 
48040
56106
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
48041
56107
  typedef void Result;
48042
56108
  typedef ::Puma::CT_ClassDef That;
48060
56126
};
48061
56127
 
48062
56128
 
 
56129
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56130
 
 
56131
#line 56132 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56132
 
48063
56133
public:
48064
56134
inline ~CT_ClassDef () {
48065
56135
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
48067
56137
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
48068
56138
 
48069
56139
}
 
56140
 
 
56141
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
48070
56142
};
48071
56143
      
 
56144
 
 
56145
#line 56146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48072
56146
} // closed Puma
48073
56147
class WinIfExists;
48074
56148
class WinImportHandler;
48089
56163
class CCExprResolve;
48090
56164
class CExprResolve;
48091
56165
namespace Puma {
48092
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
 
56166
 
 
56167
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56168
class CT_UnionDef : public CT_ClassDef {
 
56169
#line 56170 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56170
  friend class ::WinIfExists;
48093
56171
  friend class ::WinImportHandler;
48094
56172
  friend class ::WinMacros;
48095
56173
  friend class ::CMatchSyntax;
48108
56186
  friend class ::CCExprResolve;
48109
56187
  friend class ::CExprResolve;
48110
56188
 
 
56189
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56190
 
48111
56191
public:
48112
56192
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
48113
56193
  static const char *NodeId ();
48114
56194
  const char *NodeName () const { return NodeId (); }
48115
56195
};
48116
56196
      
 
56197
 
 
56198
#line 56199 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48117
56199
} // closed Puma
48118
56200
class WinIfExists;
48119
56201
class WinImportHandler;
48134
56216
class CCExprResolve;
48135
56217
class CExprResolve;
48136
56218
namespace Puma {
48137
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
56219
 
 
56220
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56221
class CT_MembList : public CT_DeclList, public CSemScope {
 
56222
#line 56223 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56223
  friend class ::WinIfExists;
48138
56224
  friend class ::WinImportHandler;
48139
56225
  friend class ::WinMacros;
48140
56226
  friend class ::CMatchSyntax;
48153
56239
  friend class ::CCExprResolve;
48154
56240
  friend class ::CExprResolve;
48155
56241
 
 
56242
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56243
 
48156
56244
public:
48157
56245
  CT_MembList (int size = 10, int incr = 10) : 
48158
56246
    CT_DeclList (size, incr) {}
48160
56248
  const char *NodeName () const { return NodeId (); }
48161
56249
};
48162
56250
 
 
56251
 
 
56252
#line 56253 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48163
56253
} // closed Puma
48164
56254
class WinIfExists;
48165
56255
class WinImportHandler;
48180
56270
class CCExprResolve;
48181
56271
class CExprResolve;
48182
56272
namespace Puma {
48183
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
56273
 
 
56274
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56275
class CT_MembInitList : public CT_List, public CSemScope {
 
56276
#line 56277 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56277
  friend class ::WinIfExists;
48184
56278
  friend class ::WinImportHandler;
48185
56279
  friend class ::WinMacros;
48186
56280
  friend class ::CMatchSyntax;
48199
56293
  friend class ::CCExprResolve;
48200
56294
  friend class ::CExprResolve;
48201
56295
 
 
56296
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56297
 
48202
56298
public:
48203
56299
  CT_MembInitList (int size = 2) : 
48204
56300
    CT_List (size, 2, CT_List::OPEN) {}
48206
56302
  const char *NodeName () const { return NodeId (); }
48207
56303
};
48208
56304
 
 
56305
 
 
56306
#line 56307 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48209
56307
} // closed Puma
48210
56308
class WinIfExists;
48211
56309
class WinImportHandler;
48226
56324
class CCExprResolve;
48227
56325
class CExprResolve;
48228
56326
namespace Puma {
48229
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
56327
 
 
56328
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56329
class CT_MembInit : public CT_Expression, public CSemObject {
 
56330
#line 56331 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56331
  friend class ::WinIfExists;
48230
56332
  friend class ::WinImportHandler;
48231
56333
  friend class ::WinMacros;
48232
56334
  friend class ::CMatchSyntax;
48245
56347
  friend class ::CCExprResolve;
48246
56348
  friend class ::CExprResolve;
48247
56349
 
 
56350
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56351
 
48248
56352
  CTree *sons[2]; // name, init
48249
56353
 
48250
56354
public:
48261
56365
  CSemObject *SemObject () const { return (CSemObject*)this; }
48262
56366
   private:
48263
56367
  typedef CT_MembInit CCExprResolveExpr;
 
56368
 
 
56369
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
48264
56370
 public :
48265
56371
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
48266
56372
  typedef CT_MembInit CExprResolveExpr;
 
56373
 
 
56374
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
48267
56375
 public :
48268
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
48269
 
 
 
56376
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
56377
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56378
};
 
56379
 
 
56380
 
 
56381
#line 56382 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48270
56382
} // closed Puma
48271
56383
class WinIfExists;
48272
56384
class WinImportHandler;
48287
56399
class CCExprResolve;
48288
56400
class CExprResolve;
48289
56401
namespace Puma {
48290
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
 
56402
 
 
56403
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56404
class CT_BaseSpecList : public CT_List {
 
56405
#line 56406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56406
  friend class ::WinIfExists;
48291
56407
  friend class ::WinImportHandler;
48292
56408
  friend class ::WinMacros;
48293
56409
  friend class ::CMatchSyntax;
48306
56422
  friend class ::CCExprResolve;
48307
56423
  friend class ::CExprResolve;
48308
56424
 
 
56425
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56426
 
48309
56427
public:
48310
56428
  CT_BaseSpecList (int size = 2) : 
48311
56429
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
48313
56431
  const char *NodeName () const { return NodeId (); }
48314
56432
};
48315
56433
 
 
56434
 
 
56435
#line 56436 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48316
56436
} // closed Puma
48317
56437
class WinIfExists;
48318
56438
class WinImportHandler;
48333
56453
class CCExprResolve;
48334
56454
class CExprResolve;
48335
56455
namespace Puma {
48336
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
 
56456
 
 
56457
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56458
class CT_AccessSpec : public CTree {
 
56459
#line 56460 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56460
  friend class ::WinIfExists;
48337
56461
  friend class ::WinImportHandler;
48338
56462
  friend class ::WinMacros;
48339
56463
  friend class ::CMatchSyntax;
48352
56476
  friend class ::CCExprResolve;
48353
56477
  friend class ::CExprResolve;
48354
56478
 
 
56479
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56480
 
48355
56481
  CTree *sons[2]; // access, colon
48356
56482
 
48357
56483
public:
48366
56492
  }
48367
56493
};
48368
56494
 
 
56495
 
 
56496
#line 56497 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48369
56497
} // closed Puma
48370
56498
class WinIfExists;
48371
56499
class WinImportHandler;
48386
56514
class CCExprResolve;
48387
56515
class CExprResolve;
48388
56516
namespace Puma {
48389
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
 
56517
 
 
56518
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56519
class CT_BaseSpec : public CTree {
 
56520
#line 56521 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56521
  friend class ::WinIfExists;
48390
56522
  friend class ::WinImportHandler;
48391
56523
  friend class ::WinMacros;
48392
56524
  friend class ::CMatchSyntax;
48405
56537
  friend class ::CCExprResolve;
48406
56538
  friend class ::CExprResolve;
48407
56539
 
 
56540
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56541
 
48408
56542
  CTree *sons[3]; // virtual, access, name
48409
56543
 
48410
56544
public:
48424
56558
  }
48425
56559
};
48426
56560
 
 
56561
 
 
56562
#line 56563 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48427
56563
} // closed Puma
48428
56564
class WinIfExists;
48429
56565
class WinImportHandler;
48444
56580
class CCExprResolve;
48445
56581
class CExprResolve;
48446
56582
namespace Puma {
48447
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
 
56583
 
 
56584
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56585
class CT_AccessDecl : public CT_Decl {
 
56586
#line 56587 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56587
  friend class ::WinIfExists;
48448
56588
  friend class ::WinImportHandler;
48449
56589
  friend class ::WinMacros;
48450
56590
  friend class ::CMatchSyntax;
48463
56603
  friend class ::CCExprResolve;
48464
56604
  friend class ::CExprResolve;
48465
56605
 
 
56606
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56607
 
48466
56608
  CTree *sons[2]; // name, semi_colon
48467
56609
 
48468
56610
public:
48477
56619
  }
48478
56620
};
48479
56621
 
 
56622
 
 
56623
#line 56624 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48480
56624
} // closed Puma
48481
56625
class WinIfExists;
48482
56626
class WinImportHandler;
48497
56641
class CCExprResolve;
48498
56642
class CExprResolve;
48499
56643
namespace Puma {
48500
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
 
56644
 
 
56645
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56646
class CT_UsingDecl : public CT_AccessDecl {
 
56647
#line 56648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56648
  friend class ::WinIfExists;
48501
56649
  friend class ::WinImportHandler;
48502
56650
  friend class ::WinMacros;
48503
56651
  friend class ::CMatchSyntax;
48516
56664
  friend class ::CCExprResolve;
48517
56665
  friend class ::CExprResolve;
48518
56666
 
 
56667
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56668
 
48519
56669
  CTree *sons[2]; // using, typename
48520
56670
 
48521
56671
public:
48546
56696
/*                                                                           */
48547
56697
/*****************************************************************************/
48548
56698
 
 
56699
 
 
56700
#line 56701 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48549
56701
} // closed Puma
48550
56702
class WinIfExists;
48551
56703
class WinImportHandler;
48566
56718
class CCExprResolve;
48567
56719
class CExprResolve;
48568
56720
namespace Puma {
48569
 
class CT_Any : public CTree {  friend class ::WinIfExists;
 
56721
 
 
56722
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56723
class CT_Any : public CTree {
 
56724
#line 56725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56725
  friend class ::WinIfExists;
48570
56726
  friend class ::WinImportHandler;
48571
56727
  friend class ::WinMacros;
48572
56728
  friend class ::CMatchSyntax;
48585
56741
  friend class ::CCExprResolve;
48586
56742
  friend class ::CExprResolve;
48587
56743
 
 
56744
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56745
 
48588
56746
  CTree *sons[2]; // keyword, extension
48589
56747
 
48590
56748
public:
48600
56758
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
48601
56759
};
48602
56760
 
 
56761
 
 
56762
#line 56763 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48603
56763
} // closed Puma
48604
56764
class WinIfExists;
48605
56765
class WinImportHandler;
48620
56780
class CCExprResolve;
48621
56781
class CExprResolve;
48622
56782
namespace Puma {
48623
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
 
56783
 
 
56784
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56785
class CT_AnyList : public CT_Any {
 
56786
#line 56787 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56787
  friend class ::WinIfExists;
48624
56788
  friend class ::WinImportHandler;
48625
56789
  friend class ::WinMacros;
48626
56790
  friend class ::CMatchSyntax;
48639
56803
  friend class ::CCExprResolve;
48640
56804
  friend class ::CExprResolve;
48641
56805
 
 
56806
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56807
 
48642
56808
public:
48643
56809
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
48644
56810
  static const char *NodeId ();
48645
56811
  const char *NodeName () const { return NodeId (); }
48646
56812
};
48647
56813
 
 
56814
 
 
56815
#line 56816 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48648
56816
} // closed Puma
48649
56817
class WinIfExists;
48650
56818
class WinImportHandler;
48665
56833
class CCExprResolve;
48666
56834
class CExprResolve;
48667
56835
namespace Puma {
48668
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
 
56836
 
 
56837
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56838
class CT_AnyExtension : public CTree, public CSemValue {
 
56839
#line 56840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56840
  friend class ::WinIfExists;
48669
56841
  friend class ::WinImportHandler;
48670
56842
  friend class ::WinMacros;
48671
56843
  friend class ::CMatchSyntax;
48684
56856
  friend class ::CCExprResolve;
48685
56857
  friend class ::CExprResolve;
48686
56858
 
 
56859
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56860
 
48687
56861
  CTree *sons[5]; // open, string, comma, cond, close
48688
56862
 
48689
56863
public:
48706
56880
  CSemValue *SemValue () const { return (CSemValue*)this; }
48707
56881
};
48708
56882
 
 
56883
 
 
56884
#line 56885 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48709
56885
} // closed Puma
48710
56886
class WinIfExists;
48711
56887
class WinImportHandler;
48726
56902
class CCExprResolve;
48727
56903
class CExprResolve;
48728
56904
namespace Puma {
48729
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
 
56905
 
 
56906
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56907
class CT_AnyCondition : public CTree {
 
56908
#line 56909 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56909
  friend class ::WinIfExists;
48730
56910
  friend class ::WinImportHandler;
48731
56911
  friend class ::WinMacros;
48732
56912
  friend class ::CMatchSyntax;
48745
56925
  friend class ::CCExprResolve;
48746
56926
  friend class ::CExprResolve;
48747
56927
 
 
56928
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56929
 
48748
56930
  CTree *sons[3]; // arg1, arg2, arg3
48749
56931
 
48750
56932
public:
48764
56946
} // namespace Puma
48765
56947
 
48766
56948
#endif /* __CTree_h__ */
48767
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
56949
 
 
56950
#line 56951 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56951
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
56952
 
 
56953
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
56954
 
 
56955
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Builder.h"
48768
56956
namespace Puma {
48769
56957
 
48770
56958
 
48771
56959
class Token;
48772
56960
 
 
56961
 
 
56962
#line 56963 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48773
56963
} // closed Puma
48774
56964
class WinIfExists;
48775
56965
class WinImportHandler;
48790
56980
class CCExprResolve;
48791
56981
class CExprResolve;
48792
56982
namespace Puma {
48793
 
class Builder : public PtrStack<CTree> {  friend class ::WinIfExists;
 
56983
 
 
56984
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Builder.h"
 
56985
class Builder : public PtrStack<CTree> {
 
56986
#line 56987 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
56987
  friend class ::WinIfExists;
48794
56988
  friend class ::WinImportHandler;
48795
56989
  friend class ::WinMacros;
48796
56990
  friend class ::CMatchSyntax;
48809
57003
  friend class ::CCExprResolve;
48810
57004
  friend class ::CExprResolve;
48811
57005
 
 
57006
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Builder.h"
 
57007
 
48812
57008
protected:
48813
57009
  ErrorCollector ec;
48814
57010
  static unsigned long int token_counter;
48815
57011
  
48816
57012
public:
48817
57013
  // Container class to shift nodes from one level to another
48818
 
  class Container : public CT_List {  friend class ::WinIfExists;
 
57014
  class Container : public CT_List {
 
57015
#line 57016 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57016
  friend class ::WinIfExists;
48819
57017
  friend class ::WinImportHandler;
48820
57018
  friend class ::WinMacros;
48821
57019
  friend class ::CMatchSyntax;
48834
57032
  friend class ::CCExprResolve;
48835
57033
  friend class ::CExprResolve;
48836
57034
 
 
57035
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Builder.h"
 
57036
 
48837
57037
  public:
48838
57038
    static const char *NodeId ();
48839
57039
    const char *NodeName () const { return NodeId (); }
48901
57101
} // namespace Puma
48902
57102
 
48903
57103
#endif /* __Builder_h__ */
 
57104
 
 
57105
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
48904
57106
//#include "Puma/Semantic.h"
 
57107
 
 
57108
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/TokenProvider.h"
48905
57109
// This file is part of PUMA.
48906
57110
// Copyright (C) 1999-2003  The PUMA developer team.
48907
57111
//                                                                
48926
57130
// A TokenProvider reads tokens from a token source and supports unlimited
48927
57131
// look ahead.
48928
57132
 
 
57133
 
 
57134
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/TokenSource.h"
48929
57135
// This file is part of PUMA.
48930
57136
// Copyright (C) 1999-2003  The PUMA developer team.
48931
57137
//                                                                
48952
57158
 
48953
57159
class Token;
48954
57160
 
 
57161
 
 
57162
#line 57163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
48955
57163
} // closed Puma
48956
57164
class WinIfExists;
48957
57165
class WinImportHandler;
48972
57180
class CCExprResolve;
48973
57181
class CExprResolve;
48974
57182
namespace Puma {
48975
 
class PumaTokenSource {  friend class ::WinIfExists;
 
57183
 
 
57184
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/TokenSource.h"
 
57185
class PumaTokenSource {
 
57186
#line 57187 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57187
  friend class ::WinIfExists;
48976
57188
  friend class ::WinImportHandler;
48977
57189
  friend class ::WinMacros;
48978
57190
  friend class ::CMatchSyntax;
48991
57203
  friend class ::CCExprResolve;
48992
57204
  friend class ::CExprResolve;
48993
57205
 
 
57206
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/TokenSource.h"
 
57207
 
48994
57208
protected:
48995
57209
  PumaTokenSource () {}
48996
57210
 
49003
57217
} // namespace Puma
49004
57218
 
49005
57219
#endif /* __Token_Source__ */
 
57220
 
 
57221
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/TokenProvider.h"
49006
57222
namespace Puma {
49007
57223
 
 
57224
 
 
57225
#line 57226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
49008
57226
} // closed Puma
49009
57227
class WinIfExists;
49010
57228
class WinImportHandler;
49025
57243
class CCExprResolve;
49026
57244
class CExprResolve;
49027
57245
namespace Puma {
49028
 
class TokenProvider {  friend class ::WinIfExists;
 
57246
 
 
57247
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/TokenProvider.h"
 
57248
class TokenProvider {
 
57249
#line 57250 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57250
  friend class ::WinIfExists;
49029
57251
  friend class ::WinImportHandler;
49030
57252
  friend class ::WinMacros;
49031
57253
  friend class ::CMatchSyntax;
49044
57266
  friend class ::CCExprResolve;
49045
57267
  friend class ::CExprResolve;
49046
57268
 
 
57269
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/TokenProvider.h"
 
57270
 
49047
57271
  
49048
57272
  typedef BCList<Token*, 8192> TokenStore;
49049
57273
  
49085
57309
} // namespace Puma
49086
57310
 
49087
57311
#endif /* __TokenProvider__ */
 
57312
 
 
57313
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/TraceSyntax.ah"
49088
57314
// This file is part of PUMA.
49089
57315
// Copyright (C) 1999-2003  The PUMA developer team.
49090
57316
//                                                                
49229
57455
#endif
49230
57456
 
49231
57457
#endif /* __TraceSyntax_ah__ */
 
57458
 
 
57459
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
49232
57460
namespace Puma {
49233
57461
 
49234
57462
class Semantic;
49235
57463
class Config;
49236
57464
class CTree;
49237
57465
 
 
57466
 
 
57467
#line 57468 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
49238
57468
} // closed Puma
49239
57469
class WinIfExists;
49240
57470
class WinImportHandler;
49255
57485
class CCExprResolve;
49256
57486
class CExprResolve;
49257
57487
namespace Puma {
49258
 
class Syntax {  friend class ::WinIfExists;
 
57488
 
 
57489
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
57490
class Syntax {
 
57491
#line 57492 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57492
  friend class ::WinIfExists;
49259
57493
  friend class ::WinImportHandler;
49260
57494
  friend class ::WinMacros;
49261
57495
  friend class ::CMatchSyntax;
49274
57508
  friend class ::CCExprResolve;
49275
57509
  friend class ::CExprResolve;
49276
57510
 
 
57511
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
57512
 
49277
57513
  Token *_problem_token;
49278
57514
  bool _have_error;
49279
57515
 
49284
57520
  TokenProvider *token_provider;
49285
57521
 
49286
57522
public: 
49287
 
  struct State : public TokenProvider::State {  friend class ::WinIfExists;
 
57523
  struct State : public TokenProvider::State {
 
57524
#line 57525 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57525
  friend class ::WinIfExists;
49288
57526
  friend class ::WinImportHandler;
49289
57527
  friend class ::WinMacros;
49290
57528
  friend class ::CMatchSyntax;
49303
57541
  friend class ::CCExprResolve;
49304
57542
  friend class ::CExprResolve;
49305
57543
 
 
57544
#line 46 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
57545
 
49306
57546
    State () {}
49307
57547
    State (int) {}
49308
57548
    State (const TokenProvider::State &s) : TokenProvider::State (s) {}
49316
57556
  CTree *run (TokenProvider &);
49317
57557
  template <class T> CTree *run (TokenProvider &, CTree *(T::*)());
49318
57558
  
 
57559
#line 57560 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57560
 
49319
57561
 
49320
57562
struct TJP__ZN4Puma6Syntax9configureERN4PumaE6Config_0 {
49321
57563
  typedef void Result;
49364
57606
  };
49365
57607
};
49366
57608
 
49367
 
virtual void configure (Config & arg0) {
 
57609
 
 
57610
#line 59 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
57611
virtual void configure (Config & arg0) 
 
57612
#line 57613 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57613
{
49368
57614
  void *args__ZN4Puma6Syntax9configureERN4PumaE6Config[] = { (void*)&arg0 };
49369
57615
  TJP__ZN4Puma6Syntax9configureERN4PumaE6Config_0 tjp;
49370
57616
  tjp._args = args__ZN4Puma6Syntax9configureERN4PumaE6Config;
49373
57619
this->__exec_old_configure(arg0);
49374
57620
 
49375
57621
}
49376
 
inline void __exec_old_configure(::Puma::Config & ){}
 
57622
inline void __exec_old_configure(::Puma::Config & )
 
57623
#line 59 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
57624
{}
49377
57625
  TokenProvider *provider () const { return token_provider; }
49378
57626
  Token *problem () const;
49379
57627
  bool error () const;
49581
57829
} // namespace Puma
49582
57830
 
49583
57831
#endif /* __Syntax_h__ */
 
57832
 
 
57833
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CAttributeInfo.h"
49584
57834
// This file is part of PUMA.
49585
57835
// Copyright (C) 1999-2003  The PUMA developer team.
49586
57836
//                                                                
49604
57854
 
49605
57855
// data object info (variables, class data members)
49606
57856
 
 
57857
 
 
57858
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CAttributeInfo.h"
49607
57859
namespace Puma {
49608
57860
 
49609
57861
 
49620
57872
/** \class CAttributeInfo CAttributeInfo.h Puma/infos/CAttributeInfo.h
49621
57873
 *  A CAttributeInfo object represents a local or global variable 
49622
57874
 *  or a class data member. */
 
57875
 
 
57876
#line 57877 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
49623
57877
} // closed Puma
49624
57878
class WinIfExists;
49625
57879
class WinImportHandler;
49640
57894
class CCExprResolve;
49641
57895
class CExprResolve;
49642
57896
namespace Puma {
49643
 
class CAttributeInfo : public CScopeRequest {  friend class ::WinIfExists;
 
57897
 
 
57898
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CAttributeInfo.h"
 
57899
class CAttributeInfo : public CScopeRequest {
 
57900
#line 57901 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
57901
  friend class ::WinIfExists;
49644
57902
  friend class ::WinImportHandler;
49645
57903
  friend class ::WinMacros;
49646
57904
  friend class ::CMatchSyntax;
49659
57917
  friend class ::CCExprResolve;
49660
57918
  friend class ::CExprResolve;
49661
57919
 
 
57920
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CAttributeInfo.h"
 
57921
 
49662
57922
  CTemplateInfo *_TemplateInfo;
49663
57923
  
49664
57924
protected:
49738
57998
} // namespace Puma
49739
57999
 
49740
58000
#endif /* __CAttributeInfo_h__ */
 
58001
 
 
58002
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CArgumentInfo.h"
49741
58003
// This file is part of PUMA.
49742
58004
// Copyright (C) 1999-2003  The PUMA developer team.
49743
58005
//                                                                
49761
58023
 
49762
58024
// function parameter info
49763
58025
 
 
58026
 
 
58027
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CArgumentInfo.h"
49764
58028
namespace Puma {
49765
58029
 
49766
58030
 
49770
58034
 
49771
58035
/** \class CArgumentInfo CArgumentInfo.h Puma/infos/CArgumentInfo.h
49772
58036
 *  A CArgumentInfo object represents a function parameter declaration. */
 
58037
 
 
58038
#line 58039 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
49773
58039
} // closed Puma
49774
58040
class WinIfExists;
49775
58041
class WinImportHandler;
49790
58056
class CCExprResolve;
49791
58057
class CExprResolve;
49792
58058
namespace Puma {
49793
 
class CArgumentInfo : public CScopeRequest {  friend class ::WinIfExists;
 
58059
 
 
58060
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CArgumentInfo.h"
 
58061
class CArgumentInfo : public CScopeRequest {
 
58062
#line 58063 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58063
  friend class ::WinIfExists;
49794
58064
  friend class ::WinImportHandler;
49795
58065
  friend class ::WinMacros;
49796
58066
  friend class ::CMatchSyntax;
49809
58079
  friend class ::CCExprResolve;
49810
58080
  friend class ::CExprResolve;
49811
58081
 
 
58082
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CArgumentInfo.h"
 
58083
 
49812
58084
  bool _hasDefaultArg; // can be set to true even without an init tree
49813
58085
                       // (needed for inline member functions)
49814
58086
public: 
49841
58113
} // namespace Puma
49842
58114
 
49843
58115
#endif /* __CArgumentInfo_h__ */
 
58116
 
 
58117
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroAnalyzer.h"
49844
58118
// This file is part of PUMA.
49845
58119
// Copyright (C) 1999-2003  The PUMA developer team.
49846
58120
//                                                                
49862
58136
#ifndef __ACIntroAnalyzer_h__
49863
58137
#define __ACIntroAnalyzer_h__
49864
58138
 
 
58139
 
 
58140
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroAnalyzer.h"
49865
58141
namespace Puma {
49866
58142
  class ACAspectInfo;
49867
58143
  class CClassDatabase;
49871
58147
 
49872
58148
namespace Puma {
49873
58149
 
 
58150
 
 
58151
#line 58152 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
49874
58152
} // closed Puma
49875
58153
class WinIfExists;
49876
58154
class WinImportHandler;
49891
58169
class CCExprResolve;
49892
58170
class CExprResolve;
49893
58171
namespace Puma {
49894
 
class ACIntroAnalyzer {  friend class ::WinIfExists;
 
58172
 
 
58173
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroAnalyzer.h"
 
58174
class ACIntroAnalyzer {
 
58175
#line 58176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58176
  friend class ::WinIfExists;
49895
58177
  friend class ::WinImportHandler;
49896
58178
  friend class ::WinMacros;
49897
58179
  friend class ::CMatchSyntax;
49910
58192
  friend class ::CCExprResolve;
49911
58193
  friend class ::CExprResolve;
49912
58194
 
 
58195
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroAnalyzer.h"
 
58196
 
49913
58197
  CClassDatabase *_db;
49914
58198
  CScopeInfo *_current_scope;
49915
58199
  int _state;
49947
58231
} // namespace Puma
49948
58232
 
49949
58233
#endif /* __ACIntroAnalyzer_h__ */
 
58234
 
 
58235
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroducer.h"
49950
58236
// This file is part of PUMA.
49951
58237
// Copyright (C) 1999-2003  The PUMA developer team.
49952
58238
//                                                                
49978
58264
 
49979
58265
namespace Puma {
49980
58266
 
 
58267
 
 
58268
#line 58269 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
49981
58269
} // closed Puma
49982
58270
class WinIfExists;
49983
58271
class WinImportHandler;
49998
58286
class CCExprResolve;
49999
58287
class CExprResolve;
50000
58288
namespace Puma {
50001
 
class ACIntroducer {  friend class ::WinIfExists;
 
58289
 
 
58290
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroducer.h"
 
58291
class ACIntroducer {
 
58292
#line 58293 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58293
  friend class ::WinIfExists;
50002
58294
  friend class ::WinImportHandler;
50003
58295
  friend class ::WinMacros;
50004
58296
  friend class ::CMatchSyntax;
50017
58309
  friend class ::CCExprResolve;
50018
58310
  friend class ::CExprResolve;
50019
58311
 
 
58312
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ACIntroducer.h"
 
58313
 
50020
58314
public:
50021
58315
  virtual ~ACIntroducer () {}
50022
58316
  
50036
58330
 
50037
58331
#endif /* __ACIntroducer_h__ */
50038
58332
 
 
58333
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCNameLookup.h"
 
58334
 
 
58335
#line 58336 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58336
 
50039
58337
#ifndef __ac_fwd_ExtGnu__
50040
58338
#define __ac_fwd_ExtGnu__
50041
58339
class ExtGnu;
50075
58373
}
50076
58374
#endif
50077
58375
 
50078
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
50079
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
58376
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
58377
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
50080
58378
#endif
 
58379
 
 
58380
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCNameLookup.h"
50081
58381
// This file is part of PUMA.
50082
58382
// Copyright (C) 1999-2003  The PUMA developer team.
50083
58383
//                                                                
50099
58399
#ifndef __CCNameLookup_h__
50100
58400
#define __CCNameLookup_h__
50101
58401
 
 
58402
 
 
58403
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCNameLookup.h"
50102
58404
#include <map>
50103
58405
 
50104
58406
namespace Puma {
50107
58409
class CT_SimpleName;
50108
58410
class CBaseClassInfo;
50109
58411
 
 
58412
 
 
58413
#line 58414 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50110
58414
} // closed Puma
50111
58415
class WinIfExists;
50112
58416
class WinImportHandler;
50127
58431
class CCExprResolve;
50128
58432
class CExprResolve;
50129
58433
namespace Puma {
50130
 
class CCNameLookup {  friend class ::WinIfExists;
 
58434
 
 
58435
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCNameLookup.h"
 
58436
class CCNameLookup {
 
58437
#line 58438 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58438
  friend class ::WinIfExists;
50131
58439
  friend class ::WinImportHandler;
50132
58440
  friend class ::WinMacros;
50133
58441
  friend class ::CMatchSyntax;
50146
58454
  friend class ::CCExprResolve;
50147
58455
  friend class ::CExprResolve;
50148
58456
 
 
58457
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCNameLookup.h"
 
58458
 
50149
58459
  typedef std::map<CClassInfo*, bool> BaseClassMap;
50150
58460
  
50151
58461
  Array<CObjectInfo*> objects;
50200
58510
  void reset ();
50201
58511
 
50202
58512
private: 
50203
 
  public: inline void __exec_old_lookup(::Puma::CStructure * ,bool ,bool );
 
58513
  
 
58514
#line 58515 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58515
public: inline void __exec_old_lookup(::Puma::CStructure * ,bool ,bool );
50204
58516
private:
 
58517
 
 
58518
#line 90 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCNameLookup.h"
50205
58519
void lookup (CStructure *, bool, bool);
50206
58520
  void unqualifiedLookup (CStructure *, bool);
50207
58521
  CObjectInfo *unqualLookup (CStructure *, bool);
50279
58593
 
50280
58594
#endif /* __CCNameLookup_h__ */
50281
58595
 
 
58596
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
58597
 
 
58598
#line 58599 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58599
 
50282
58600
#ifndef __ac_fwd_ExtACKeywords__
50283
58601
#define __ac_fwd_ExtACKeywords__
50284
58602
class ExtACKeywords;
50292
58610
}
50293
58611
#endif
50294
58612
 
50295
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
50296
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
58613
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
58614
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
50297
58615
#endif
 
58616
 
 
58617
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
50298
58618
// This file is part of PUMA.
50299
58619
// Copyright (C) 1999-2003  The PUMA developer team.
50300
58620
//                                                                
50318
58638
 
50319
58639
// Special project derivation for C++ sources.
50320
58640
 
 
58641
 
 
58642
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Project.h"
50321
58643
// This file is part of PUMA.
50322
58644
// Copyright (C) 1999-2003  The PUMA developer team.
50323
58645
//                                                                
50342
58664
// The basic project is a set of source directories. It provides 
50343
58665
// methods for searching and writing files. 
50344
58666
 
 
58667
 
 
58668
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathManager.h"
50345
58669
// This file is part of PUMA.
50346
58670
// Copyright (C) 1999-2003  The PUMA developer team.
50347
58671
//                                                                
50365
58689
 
50366
58690
// Manages directories and methods to access the files in it.
50367
58691
 
 
58692
 
 
58693
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathInfo.h"
50368
58694
// This file is part of PUMA.
50369
58695
// Copyright (C) 1999-2003  The PUMA developer team.
50370
58696
//                                                                
50392
58718
namespace Puma {
50393
58719
 
50394
58720
 
 
58721
 
 
58722
#line 58723 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50395
58723
} // closed Puma
50396
58724
class WinIfExists;
50397
58725
class WinImportHandler;
50412
58740
class CCExprResolve;
50413
58741
class CExprResolve;
50414
58742
namespace Puma {
50415
 
class PathInfo {  friend class ::WinIfExists;
 
58743
 
 
58744
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathInfo.h"
 
58745
class PathInfo {
 
58746
#line 58747 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58747
  friend class ::WinIfExists;
50416
58748
  friend class ::WinImportHandler;
50417
58749
  friend class ::WinMacros;
50418
58750
  friend class ::CMatchSyntax;
50431
58763
  friend class ::CCExprResolve;
50432
58764
  friend class ::CExprResolve;
50433
58765
 
 
58766
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathInfo.h"
 
58767
 
50434
58768
  const char *_src;        // Source path.
50435
58769
  const char *_dest;        // Destination path.
50436
58770
        
50455
58789
} // namespace Puma
50456
58790
 
50457
58791
#endif /* __path_info__ */
 
58792
 
 
58793
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathIterator.h"
50458
58794
// This file is part of PUMA.
50459
58795
// Copyright (C) 1999-2003  The PUMA developer team.
50460
58796
//                                                                
50480
58816
// a project is managing. But only files matching a given pattern 
50481
58817
// are iterated. 
50482
58818
 
 
58819
 
 
58820
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ProjectFile.h"
50483
58821
// This file is part of PUMA.
50484
58822
// Copyright (C) 1999-2003  The PUMA developer team.
50485
58823
//                                                                
50501
58839
#ifndef __project_file__
50502
58840
#define __project_file__
50503
58841
 
 
58842
 
 
58843
#line 23 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ProjectFile.h"
50504
58844
using std::map;
 
58845
 
 
58846
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ProjectFile.h"
50505
58847
using std::string;
50506
58848
 
 
58849
 
 
58850
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ProjectFile.h"
50507
58851
namespace Puma {
50508
58852
 
50509
58853
// the project file abstraction is used to store all filenames relevant
50510
58854
// for a specific file that is managed by Puma.
50511
58855
 
 
58856
 
 
58857
#line 58858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50512
58858
} // closed Puma
50513
58859
class WinIfExists;
50514
58860
class WinImportHandler;
50529
58875
class CCExprResolve;
50530
58876
class CExprResolve;
50531
58877
namespace Puma {
50532
 
class ProjectFile {  friend class ::WinIfExists;
 
58878
 
 
58879
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ProjectFile.h"
 
58880
class ProjectFile {
 
58881
#line 58882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58882
  friend class ::WinIfExists;
50533
58883
  friend class ::WinImportHandler;
50534
58884
  friend class ::WinMacros;
50535
58885
  friend class ::CMatchSyntax;
50548
58898
  friend class ::CCExprResolve;
50549
58899
  friend class ::CExprResolve;
50550
58900
 
 
58901
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ProjectFile.h"
 
58902
 
50551
58903
  Filename _nick_name;
50552
58904
  Filename _dest_path;
50553
58905
public:  
50569
58921
} // namespace Puma
50570
58922
 
50571
58923
#endif // __project_file__
 
58924
 
 
58925
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathIterator.h"
50572
58926
namespace Puma {
50573
58927
 
50574
58928
class PathManager;
50575
58929
class RegComp;
50576
58930
 
 
58931
 
 
58932
#line 58933 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50577
58933
} // closed Puma
50578
58934
class WinIfExists;
50579
58935
class WinImportHandler;
50594
58950
class CCExprResolve;
50595
58951
class CExprResolve;
50596
58952
namespace Puma {
50597
 
class PathIterator : public PFMConstIter {  friend class ::WinIfExists;
 
58953
 
 
58954
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathIterator.h"
 
58955
class PathIterator : public PFMConstIter {
 
58956
#line 58957 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
58957
  friend class ::WinIfExists;
50598
58958
  friend class ::WinImportHandler;
50599
58959
  friend class ::WinMacros;
50600
58960
  friend class ::CMatchSyntax;
50613
58973
  friend class ::CCExprResolve;
50614
58974
  friend class ::CExprResolve;
50615
58975
 
 
58976
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathIterator.h"
 
58977
 
50616
58978
  friend class PathManager;
50617
58979
 
50618
58980
  RegComp *_regexp;  // Search pattern.
50635
58997
} // namespace Puma
50636
58998
 
50637
58999
#endif /* __path_iterator__ */
 
59000
 
 
59001
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathManager.h"
50638
59002
namespace Puma {
50639
59003
 
50640
59004
class RegComp;
50641
59005
class Config;
50642
59006
class Unit;
50643
59007
 
 
59008
 
 
59009
#line 59010 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50644
59010
} // closed Puma
50645
59011
class WinIfExists;
50646
59012
class WinImportHandler;
50661
59027
class CCExprResolve;
50662
59028
class CExprResolve;
50663
59029
namespace Puma {
50664
 
class PathManager {  friend class ::WinIfExists;
 
59030
 
 
59031
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathManager.h"
 
59032
class PathManager {
 
59033
#line 59034 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59034
  friend class ::WinIfExists;
50665
59035
  friend class ::WinImportHandler;
50666
59036
  friend class ::WinMacros;
50667
59037
  friend class ::CMatchSyntax;
50680
59050
  friend class ::CCExprResolve;
50681
59051
  friend class ::CExprResolve;
50682
59052
 
 
59053
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/PathManager.h"
 
59054
 
50683
59055
 
50684
59056
  ErrorStream     *_err;
50685
59057
  Array<PathInfo>  _paths;     // List of directories path.
50779
59151
} // namespace Puma
50780
59152
 
50781
59153
#endif /* __path_manager__ */
 
59154
 
 
59155
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitManager.h"
50782
59156
// This file is part of PUMA.
50783
59157
// Copyright (C) 1999-2003  The PUMA developer team.
50784
59158
//                                                                
50802
59176
 
50803
59177
// Class UnitManager helps you to have control of all units built.
50804
59178
 
 
59179
 
 
59180
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitManager.h"
50805
59181
#include <list>
 
59182
 
 
59183
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitManager.h"
50806
59184
using namespace std;
 
59185
 
 
59186
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitManager.h"
50807
59187
namespace Puma {
50808
59188
 
50809
59189
 
50811
59191
class Source;
50812
59192
class Tokenizer;
50813
59193
 
 
59194
 
 
59195
#line 59196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50814
59196
} // closed Puma
50815
59197
class WinIfExists;
50816
59198
class WinImportHandler;
50831
59213
class CCExprResolve;
50832
59214
class CExprResolve;
50833
59215
namespace Puma {
50834
 
class UnitManager {  friend class ::WinIfExists;
 
59216
 
 
59217
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitManager.h"
 
59218
class UnitManager {
 
59219
#line 59220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59220
  friend class ::WinIfExists;
50835
59221
  friend class ::WinImportHandler;
50836
59222
  friend class ::WinMacros;
50837
59223
  friend class ::CMatchSyntax;
50850
59236
  friend class ::CCExprResolve;
50851
59237
  friend class ::CExprResolve;
50852
59238
 
 
59239
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitManager.h"
 
59240
 
50853
59241
public:
50854
59242
  typedef map<string, Unit*> UMap;
50855
59243
private:
50908
59296
} // namespace Puma
50909
59297
 
50910
59298
#endif /* __UnitManager__ */
 
59299
 
 
59300
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SaveMode.h"
50911
59301
// This file is part of PUMA.
50912
59302
// Copyright (C) 1999-2003  The PUMA developer team.
50913
59303
//                                                                
50933
59323
 
50934
59324
 
50935
59325
// Project file save mode.
 
59326
 
 
59327
#line 59328 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50936
59328
} // closed Puma
50937
59329
class WinIfExists;
50938
59330
class WinImportHandler;
50953
59345
class CCExprResolve;
50954
59346
class CExprResolve;
50955
59347
namespace Puma {
50956
 
struct SaveMode {  friend class ::WinIfExists;
 
59348
 
 
59349
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SaveMode.h"
 
59350
struct SaveMode {
 
59351
#line 59352 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59352
  friend class ::WinIfExists;
50957
59353
  friend class ::WinImportHandler;
50958
59354
  friend class ::WinMacros;
50959
59355
  friend class ::CMatchSyntax;
50972
59368
  friend class ::CCExprResolve;
50973
59369
  friend class ::CExprResolve;
50974
59370
 
 
59371
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/SaveMode.h"
 
59372
 
50975
59373
  enum Mode { 
50976
59374
    OVERWRITE = 1, 
50977
59375
    RENAME_OLD, 
50983
59381
} // namespace Puma
50984
59382
 
50985
59383
#endif /* __SaveMode__ */
 
59384
 
 
59385
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Project.h"
50986
59386
#include <fstream>
 
59387
 
 
59388
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Project.h"
50987
59389
using namespace std;
50988
59390
 
50989
59391
namespace Puma {
50990
59392
 
50991
59393
 
 
59394
 
 
59395
#line 59396 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
50992
59396
} // closed Puma
50993
59397
class WinIfExists;
50994
59398
class WinImportHandler;
51009
59413
class CCExprResolve;
51010
59414
class CExprResolve;
51011
59415
namespace Puma {
51012
 
class Project : public PathManager, public SaveMode {  friend class ::WinIfExists;
 
59416
 
 
59417
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Project.h"
 
59418
class Project : public PathManager, public SaveMode {
 
59419
#line 59420 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59420
  friend class ::WinIfExists;
51013
59421
  friend class ::WinImportHandler;
51014
59422
  friend class ::WinMacros;
51015
59423
  friend class ::CMatchSyntax;
51028
59436
  friend class ::CCExprResolve;
51029
59437
  friend class ::CExprResolve;
51030
59438
 
 
59439
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Project.h"
 
59440
 
51031
59441
  UnitManager  _unitManager; 
51032
59442
  const char  *_suffix;           // Current file name suffix.
51033
59443
  Mode         _mode;      // Current save mode.
51113
59523
 
51114
59524
#endif /* __project__ */
51115
59525
 
 
59526
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
 
59527
 
 
59528
#line 59529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59529
 
51116
59530
#ifndef __ac_fwd_ExtACKeywords__
51117
59531
#define __ac_fwd_ExtACKeywords__
51118
59532
class ExtACKeywords;
51126
59540
}
51127
59541
#endif
51128
59542
 
51129
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
51130
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
59543
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
59544
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
51131
59545
#endif
 
59546
 
 
59547
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
51132
59548
// This file is part of PUMA.
51133
59549
// Copyright (C) 1999-2003  The PUMA developer team.
51134
59550
//                                                                
51150
59566
#ifndef __c_scanner_h__
51151
59567
#define __c_scanner_h__
51152
59568
 
 
59569
 
 
59570
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecognizer.h"
51153
59571
// This file is part of PUMA.
51154
59572
// Copyright (C) 1999-2003  The PUMA developer team.
51155
59573
//                                                                
51171
59589
#ifndef __c_recognizer_h__
51172
59590
#define __c_recognizer_h__
51173
59591
 
 
59592
 
 
59593
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanBuffer.h"
51174
59594
// This file is part of PUMA.
51175
59595
// Copyright (C) 1999-2003  The PUMA developer team.
51176
59596
//                                                                
51192
59612
#ifndef __CScanBuffer_h__
51193
59613
#define __CScanBuffer_h__
51194
59614
 
 
59615
 
 
59616
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ScanBuffer.h"
51195
59617
// This file is part of PUMA.
51196
59618
// Copyright (C) 1999-2003  The PUMA developer team.
51197
59619
//                                                                
51216
59638
namespace Puma {
51217
59639
 
51218
59640
 
 
59641
 
 
59642
#line 59643 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51219
59643
} // closed Puma
51220
59644
class WinIfExists;
51221
59645
class WinImportHandler;
51236
59660
class CCExprResolve;
51237
59661
class CExprResolve;
51238
59662
namespace Puma {
51239
 
class ScanBuffer {  friend class ::WinIfExists;
 
59663
 
 
59664
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ScanBuffer.h"
 
59665
class ScanBuffer {
 
59666
#line 59667 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59667
  friend class ::WinIfExists;
51240
59668
  friend class ::WinImportHandler;
51241
59669
  friend class ::WinMacros;
51242
59670
  friend class ::CMatchSyntax;
51255
59683
  friend class ::CCExprResolve;
51256
59684
  friend class ::CExprResolve;
51257
59685
 
 
59686
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/ScanBuffer.h"
 
59687
 
51258
59688
public:
51259
59689
  typedef enum { STATE_END, STATE_ERROR, STATE_OK } State;
51260
59690
  
51274
59704
} // namespace Puma
51275
59705
 
51276
59706
#endif /* __scan_buffer_h__ */
 
59707
 
 
59708
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanBuffer.h"
51277
59709
namespace Puma {
51278
59710
 
51279
59711
 
 
59712
 
 
59713
#line 59714 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51280
59714
} // closed Puma
51281
59715
class WinIfExists;
51282
59716
class WinImportHandler;
51297
59731
class CCExprResolve;
51298
59732
class CExprResolve;
51299
59733
namespace Puma {
51300
 
class CScanBuffer {  friend class ::WinIfExists;
 
59734
 
 
59735
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanBuffer.h"
 
59736
class CScanBuffer {
 
59737
#line 59738 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59738
  friend class ::WinIfExists;
51301
59739
  friend class ::WinImportHandler;
51302
59740
  friend class ::WinMacros;
51303
59741
  friend class ::CMatchSyntax;
51316
59754
  friend class ::CCExprResolve;
51317
59755
  friend class ::CExprResolve;
51318
59756
 
 
59757
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanBuffer.h"
 
59758
 
51319
59759
  ScanBuffer *next_buffer;
51320
59760
  bool on_new_line;
51321
59761
  int nl_pos;
51367
59807
} // namespace Puma
51368
59808
 
51369
59809
#endif // __CScanBuffer_h__
 
59810
 
 
59811
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCommentRecognizer.h"
51370
59812
// This file is part of PUMA.
51371
59813
// Copyright (C) 1999-2003  The PUMA developer team.
51372
59814
//                                                                
51388
59830
#ifndef __c_comment_recognizer_h__
51389
59831
#define __c_comment_recognizer_h__
51390
59832
 
 
59833
 
 
59834
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/MappedOrangeRecognizer.h"
51391
59835
// This file is part of PUMA.
51392
59836
// Copyright (C) 1999-2003  The PUMA developer team.
51393
59837
//                                                                
51413
59857
// orange tool. Returned expressions mapped according to an orange
51414
59858
// generated mapping table
51415
59859
 
 
59860
 
 
59861
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OrangeRecognizer.h"
51416
59862
// This file is part of PUMA.
51417
59863
// Copyright (C) 1999-2003  The PUMA developer team.
51418
59864
//                                                                
51437
59883
// The token recognizer class, which uses scanner tables generated by the
51438
59884
// orange tool.
51439
59885
 
 
59886
 
 
59887
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OrangeRecognizer.h"
51440
59888
namespace Puma {
51441
59889
 
51442
59890
 
51443
59891
#ifndef __TTGEN__
51444
59892
#  define __TTGEN__
 
59893
 
 
59894
#line 59895 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51445
59895
} // closed Puma
51446
59896
class WinIfExists;
51447
59897
class WinImportHandler;
51462
59912
class CCExprResolve;
51463
59913
class CExprResolve;
51464
59914
namespace Puma {
 
59915
 
 
59916
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OrangeRecognizer.h"
51465
59917
typedef struct
51466
 
 {  friend class ::WinIfExists;
 
59918
 {
 
59919
#line 59920 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59920
  friend class ::WinIfExists;
51467
59921
  friend class ::WinImportHandler;
51468
59922
  friend class ::WinMacros;
51469
59923
  friend class ::CMatchSyntax;
51481
59935
  friend class ::PragmaOnce;
51482
59936
  friend class ::CCExprResolve;
51483
59937
  friend class ::CExprResolve;
 
59938
 
 
59939
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OrangeRecognizer.h"
51484
59940
 unsigned char Type;
51485
59941
   unsigned char LookAhead;
51486
59942
   int           Expression;
51491
59947
 
51492
59948
// class declaration
51493
59949
 
 
59950
 
 
59951
#line 59952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51494
59952
} // closed Puma
51495
59953
class WinIfExists;
51496
59954
class WinImportHandler;
51511
59969
class CCExprResolve;
51512
59970
class CExprResolve;
51513
59971
namespace Puma {
 
59972
 
 
59973
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OrangeRecognizer.h"
51514
59974
template <typename TScanBuffer>
51515
 
class OrangeRecognizer {  friend class ::WinIfExists;
 
59975
class OrangeRecognizer {
 
59976
#line 59977 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
59977
  friend class ::WinIfExists;
51516
59978
  friend class ::WinImportHandler;
51517
59979
  friend class ::WinMacros;
51518
59980
  friend class ::CMatchSyntax;
51531
59993
  friend class ::CCExprResolve;
51532
59994
  friend class ::CExprResolve;
51533
59995
 
 
59996
#line 44 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/OrangeRecognizer.h"
 
59997
 
51534
59998
  // local structures generated by Orange
51535
59999
 
51536
60000
  char *_map;
51613
60077
} // namespace Puma
51614
60078
 
51615
60079
#endif /* __orange_recognizer_h__ */
 
60080
 
 
60081
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/MappedOrangeRecognizer.h"
51616
60082
namespace Puma {
51617
60083
 
51618
60084
 
51619
60085
// class declaration
51620
60086
 
 
60087
 
 
60088
#line 60089 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51621
60089
} // closed Puma
51622
60090
class WinIfExists;
51623
60091
class WinImportHandler;
51638
60106
class CCExprResolve;
51639
60107
class CExprResolve;
51640
60108
namespace Puma {
 
60109
 
 
60110
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/MappedOrangeRecognizer.h"
51641
60111
template <class ScanBuffer>
51642
 
class MappedOrangeRecognizer : public OrangeRecognizer<ScanBuffer> {  friend class ::WinIfExists;
 
60112
class MappedOrangeRecognizer : public OrangeRecognizer<ScanBuffer> {
 
60113
#line 60114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60114
  friend class ::WinIfExists;
51643
60115
  friend class ::WinImportHandler;
51644
60116
  friend class ::WinMacros;
51645
60117
  friend class ::CMatchSyntax;
51658
60130
  friend class ::CCExprResolve;
51659
60131
  friend class ::CExprResolve;
51660
60132
 
 
60133
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/MappedOrangeRecognizer.h"
 
60134
 
51661
60135
  int *_expr_map;
51662
60136
 
51663
60137
public:
51684
60158
} // namespace Puma
51685
60159
 
51686
60160
#endif // __mapped_orange_recognizer_h__
 
60161
 
 
60162
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCommentRecognizer.h"
51687
60163
namespace Puma {
51688
60164
 
51689
60165
 
 
60166
 
 
60167
#line 60168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51690
60168
} // closed Puma
51691
60169
class WinIfExists;
51692
60170
class WinImportHandler;
51707
60185
class CCExprResolve;
51708
60186
class CExprResolve;
51709
60187
namespace Puma {
51710
 
class CCommentRecognizer {  friend class ::WinIfExists;
 
60188
 
 
60189
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCommentRecognizer.h"
 
60190
class CCommentRecognizer {
 
60191
#line 60192 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60192
  friend class ::WinIfExists;
51711
60193
  friend class ::WinImportHandler;
51712
60194
  friend class ::WinMacros;
51713
60195
  friend class ::CMatchSyntax;
51726
60208
  friend class ::CCExprResolve;
51727
60209
  friend class ::CExprResolve;
51728
60210
 
 
60211
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CCommentRecognizer.h"
 
60212
 
51729
60213
public:
51730
60214
  typedef enum { NO_COMMENT, SL_COMMENT, ML_COMMENT } Mode;
51731
60215
 
51746
60230
} // namespace Puma
51747
60231
 
51748
60232
#endif /* __c_comment_recognizer_h__ */
 
60233
 
 
60234
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/KeywordRecognizer.h"
51749
60235
// This file is part of PUMA.
51750
60236
// Copyright (C) 1999-2003  The PUMA developer team.
51751
60237
//                                                                
51767
60253
#ifndef __keyword_recognizer_h__
51768
60254
#define __keyword_recognizer_h__
51769
60255
 
 
60256
 
 
60257
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/KeywordRecognizer.h"
51770
60258
namespace Puma {
51771
60259
 
51772
60260
 
 
60261
 
 
60262
#line 60263 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51773
60263
} // closed Puma
51774
60264
class WinIfExists;
51775
60265
class WinImportHandler;
51790
60280
class CCExprResolve;
51791
60281
class CExprResolve;
51792
60282
namespace Puma {
51793
 
class KeywordRecognizer {  friend class ::WinIfExists;
 
60283
 
 
60284
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/KeywordRecognizer.h"
 
60285
class KeywordRecognizer {
 
60286
#line 60287 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60287
  friend class ::WinIfExists;
51794
60288
  friend class ::WinImportHandler;
51795
60289
  friend class ::WinMacros;
51796
60290
  friend class ::CMatchSyntax;
51809
60303
  friend class ::CCExprResolve;
51810
60304
  friend class ::CExprResolve;
51811
60305
 
 
60306
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/KeywordRecognizer.h"
 
60307
 
51812
60308
protected:
51813
60309
  virtual MappedOrangeRecognizer<CScanBuffer> &recognizer() = 0;
51814
60310
 
51821
60317
} // namespace Puma
51822
60318
 
51823
60319
#endif /* __keyword_recognizer_h__ */
 
60320
 
 
60321
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecognizer.h"
51824
60322
namespace Puma {
51825
60323
 
51826
60324
 
 
60325
 
 
60326
#line 60327 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51827
60327
} // closed Puma
51828
60328
class WinIfExists;
51829
60329
class WinImportHandler;
51844
60344
class CCExprResolve;
51845
60345
class CExprResolve;
51846
60346
namespace Puma {
51847
 
class CRecognizer {  friend class ::WinIfExists;
 
60347
 
 
60348
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecognizer.h"
 
60349
class CRecognizer {
 
60350
#line 60351 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60351
  friend class ::WinIfExists;
51848
60352
  friend class ::WinImportHandler;
51849
60353
  friend class ::WinMacros;
51850
60354
  friend class ::CMatchSyntax;
51863
60367
  friend class ::CCExprResolve;
51864
60368
  friend class ::CExprResolve;
51865
60369
 
 
60370
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CRecognizer.h"
 
60371
 
51866
60372
  CScanBuffer scan_buffer;
51867
60373
  CCommentRecognizer comment_recognizer;
51868
60374
  Array<KeywordRecognizer*> additional_keyword_recognizers;
51912
60418
} // namespace Puma
51913
60419
 
51914
60420
#endif /* __c_recognizer_h__ */
 
60421
 
 
60422
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Tokenizer.h"
51915
60423
// This file is part of PUMA.
51916
60424
// Copyright (C) 1999-2003  The PUMA developer team.
51917
60425
//                                                                
51936
60444
// Tokenizer interface. Tokenizer read input from a "Source" and
51937
60445
// form tokens, which used to fill a "Unit".
51938
60446
 
 
60447
 
 
60448
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Source.h"
51939
60449
// This file is part of PUMA.
51940
60450
// Copyright (C) 1999-2003  The PUMA developer team.
51941
60451
//                                                                
51960
60470
namespace Puma {
51961
60471
 
51962
60472
 
 
60473
 
 
60474
#line 60475 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
51963
60475
} // closed Puma
51964
60476
class WinIfExists;
51965
60477
class WinImportHandler;
51980
60492
class CCExprResolve;
51981
60493
class CExprResolve;
51982
60494
namespace Puma {
51983
 
class Source {  friend class ::WinIfExists;
 
60495
 
 
60496
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Source.h"
 
60497
class Source {
 
60498
#line 60499 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60499
  friend class ::WinIfExists;
51984
60500
  friend class ::WinImportHandler;
51985
60501
  friend class ::WinMacros;
51986
60502
  friend class ::CMatchSyntax;
51999
60515
  friend class ::CCExprResolve;
52000
60516
  friend class ::CExprResolve;
52001
60517
 
 
60518
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Source.h"
 
60519
 
52002
60520
public:
52003
60521
  Source () {}
52004
60522
  virtual ~Source () {}
52010
60528
} // namespace Puma
52011
60529
 
52012
60530
#endif /* __source_h__ */
 
60531
 
 
60532
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Unit.h"
52013
60533
// This file is part of PUMA.
52014
60534
// Copyright (C) 1999-2003  The PUMA developer team.
52015
60535
//                                                                
52031
60551
#ifndef __unit_h__
52032
60552
#define __unit_h__
52033
60553
 
 
60554
 
 
60555
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/List.h"
52034
60556
// This file is part of PUMA.
52035
60557
// Copyright (C) 1999-2003  The PUMA developer team.
52036
60558
//                                                                
52052
60574
#ifndef __list_h__
52053
60575
#define __list_h__
52054
60576
 
 
60577
 
 
60578
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/List.h"
52055
60579
namespace Puma {
52056
60580
 
52057
60581
 
 
60582
 
 
60583
#line 60584 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52058
60584
} // closed Puma
52059
60585
class WinIfExists;
52060
60586
class WinImportHandler;
52075
60601
class CCExprResolve;
52076
60602
class CExprResolve;
52077
60603
namespace Puma {
52078
 
class List {  friend class ::WinIfExists;
 
60604
 
 
60605
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/List.h"
 
60606
class List {
 
60607
#line 60608 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60608
  friend class ::WinIfExists;
52079
60609
  friend class ::WinImportHandler;
52080
60610
  friend class ::WinMacros;
52081
60611
  friend class ::CMatchSyntax;
52094
60624
  friend class ::CCExprResolve;
52095
60625
  friend class ::CExprResolve;
52096
60626
 
 
60627
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/List.h"
 
60628
 
52097
60629
  ListElement *_first;
52098
60630
  ListElement *_last;
52099
60631
 
52138
60670
 
52139
60671
#endif /* __list_h__ */
52140
60672
 
 
60673
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
60674
 
 
60675
#line 60676 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60676
 
52141
60677
#ifndef __ac_fwd_PragmaOnceUnitState__
52142
60678
#define __ac_fwd_PragmaOnceUnitState__
52143
60679
class PragmaOnceUnitState;
52147
60683
}
52148
60684
#endif
52149
60685
 
52150
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__
52151
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__
 
60686
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__
 
60687
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__
52152
60688
#endif
 
60689
 
 
60690
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
60691
 
 
60692
#line 60693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60693
 
 
60694
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
52153
60695
// This file is part of PUMA.
52154
60696
// Copyright (C) 1999-2003  The PUMA developer team.
52155
60697
//                                                                
52173
60715
 
52174
60716
using namespace Puma;
52175
60717
 
 
60718
 
 
60719
#line 60720 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52176
60720
class WinIfExists;
52177
60721
class WinImportHandler;
52178
60722
class WinMacros;
52190
60734
class PragmaOnce;
52191
60735
class CCExprResolve;
52192
60736
class CExprResolve;
 
60737
 
 
60738
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
52193
60739
class PragmaOnceUnitState {
 
60740
#line 60741 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60741
 
52194
60742
public:
52195
60743
  static PragmaOnceUnitState *aspectof () {
52196
60744
    static PragmaOnceUnitState __instance;
52200
60748
    return aspectof ();
52201
60749
  }
52202
60750
private:
 
60751
 
 
60752
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60753
 
 
60754
#line 60755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52203
60755
  friend class ::WinIfExists;
52204
60756
  friend class ::WinImportHandler;
52205
60757
  friend class ::WinMacros;
52218
60770
  friend class ::CCExprResolve;
52219
60771
  friend class ::CExprResolve;
52220
60772
 
 
60773
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60774
 
52221
60775
  /******************************************************/
52222
60776
  /* specific #pragma once unit state                   */
52223
60777
  /******************************************************/
52224
60778
 
52225
60779
  // pointcut definitions
52226
60780
  
 
60781
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60782
 
52227
60783
 
52228
60784
  
 
60785
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60786
 
52229
60787
  
52230
60788
  // initialize new state flag
52231
60789
  
52232
 
public: template<class JoinPoint> void __a0_after (JoinPoint *tjp) {
 
60790
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60791
 
 
60792
public: template<class JoinPoint> void __a0_after 
 
60793
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60794
 
 
60795
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60796
(JoinPoint *tjp)
 
60797
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60798
 {
 
60799
#line 60800 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60800
 
52233
60801
  JoinPoint *&thisJoinPoint = tjp;
52234
60802
 
 
60803
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60804
 
 
60805
#line 60806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60806
 
52235
60807
  typedef typename JoinPoint::That __JP_That;
52236
60808
  typedef typename JoinPoint::Target __JP_Target;
52237
60809
  typedef typename JoinPoint::Result __JP_Result;
52238
60810
 
 
60811
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60812
 
52239
60813
    thisJoinPoint->that ()->_once = false;
52240
60814
  }
 
60815
#line 60816 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60816
 
52241
60817
private:
52242
60818
 
 
60819
#line 44 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60820
 
52243
60821
 
52244
60822
protected:
52245
60823
  // this aspect should never be instantiated directly
52246
60824
  PragmaOnceUnitState () {}
52247
60825
};
 
60826
#line 60827 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60827
 
52248
60828
namespace AC {
52249
60829
  template <class JoinPoint>
52250
60830
  inline void invoke_PragmaOnceUnitState_PragmaOnceUnitState_a0_after (JoinPoint *tjp) {
52252
60832
  }
52253
60833
52254
60834
 
 
60835
#line 49 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
 
60836
 
52255
60837
 
52256
60838
 
52257
60839
#endif /* __PragmaOnceUnitState__ */
52258
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_UnitState_h__
52259
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_UnitState_h__
 
60840
 
 
60841
#line 4 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
60842
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_UnitState_h__
 
60843
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_UnitState_h__
 
60844
 
 
60845
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
52260
60846
// This file is part of PUMA.
52261
60847
// Copyright (C) 1999-2003  The PUMA developer team.
52262
60848
//                                                                
52287
60873
namespace Puma {
52288
60874
 
52289
60875
 
 
60876
 
 
60877
#line 60878 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52290
60878
} // closed Puma
52291
60879
class WinIfExists;
52292
60880
class WinImportHandler;
52307
60895
class CCExprResolve;
52308
60896
class CExprResolve;
52309
60897
namespace Puma {
52310
 
class UnitState {  friend class ::WinIfExists;
 
60898
 
 
60899
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
60900
class UnitState {
 
60901
#line 60902 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60902
  friend class ::WinIfExists;
52311
60903
  friend class ::WinImportHandler;
52312
60904
  friend class ::WinMacros;
52313
60905
  friend class ::CMatchSyntax;
52326
60918
  friend class ::CCExprResolve;
52327
60919
  friend class ::CExprResolve;
52328
60920
 
 
60921
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
60922
 
52329
60923
  bool _modified;
52330
60924
  bool _updated;
52331
60925
  long _lastModified;
52332
60926
      
52333
60927
public:
52334
 
  public: inline void __exec_old_C1();
 
60928
  
 
60929
#line 60930 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60930
public: inline void __exec_old_C1();
 
60931
 
 
60932
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
52335
60933
UnitState ();
52336
60934
      
52337
60935
  bool isModified () const;
52344
60942
  void unmodified ();
52345
60943
  void updated ();
52346
60944
   private:
 
60945
 
 
60946
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/PragmaOnceUnitState.ah"
52347
60947
 bool _once ;
52348
60948
public :
52349
60949
 
52350
60950
bool onlyOnce ( ) const { return _once ; }
52351
60951
void onlyOnce ( bool v ) { _once = v ; }
 
60952
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
60953
 
 
60954
#line 60955 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60955
 
52352
60956
struct TJP__ZN4Puma9UnitStateC1ERKN4PumaE9UnitState_0 {
52353
60957
  typedef void Result;
52354
60958
  typedef ::Puma::UnitState That;
52376
60980
};
52377
60981
 
52378
60982
 
 
60983
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
60984
 
 
60985
#line 60986 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
60986
 
52379
60987
public:
52380
60988
inline UnitState (const Puma::UnitState & arg0) : _modified (arg0._modified), _updated (arg0._updated), _lastModified (arg0._lastModified), _once (arg0._once) {
52381
60989
  TJP__ZN4Puma9UnitStateC1ERKN4PumaE9UnitState_0 tjp;
52383
60991
  AC::invoke_PragmaOnceUnitState_PragmaOnceUnitState_a0_after<TJP__ZN4Puma9UnitStateC1ERKN4PumaE9UnitState_0> (&tjp);
52384
60992
 
52385
60993
}
 
60994
 
 
60995
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
52386
60996
};
52387
60997
 
52388
60998
 
 
60999
#line 61000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61000
 
52389
61001
 
52390
61002
struct TJP__ZN4Puma9UnitStateC1Ev_0 {
52391
61003
  typedef void Result;
52409
61021
 
52410
61022
};
52411
61023
 
 
61024
 
 
61025
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
52412
61026
inline UnitState::UnitState ()
52413
 
 {
 
61027
 
 
61028
#line 61029 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61029
{
52414
61030
  TJP__ZN4Puma9UnitStateC1Ev_0 tjp;
52415
61031
  tjp._that =  (TJP__ZN4Puma9UnitStateC1Ev_0::That*)this;
52416
61032
this->__exec_old_C1();
52417
61033
  AC::invoke_PragmaOnceUnitState_PragmaOnceUnitState_a0_after<TJP__ZN4Puma9UnitStateC1Ev_0> (&tjp);
52418
61034
 
52419
61035
}
52420
 
inline void Puma::UnitState::__exec_old_C1(){ _modified = false; _updated = false; _lastModified = 0; }
 
61036
inline void Puma::UnitState::__exec_old_C1()
 
61037
#line 51 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
61038
{ _modified = false; _updated = false; _lastModified = 0; }
52421
61039
 
52422
61040
inline bool UnitState::isModified () const 
52423
61041
 { return _modified; }
52439
61057
} // namespace Puma
52440
61058
 
52441
61059
#endif /* __UnitState__ */
52442
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_UnitState_h__
 
61060
 
 
61061
#line 61062 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61062
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_UnitState_h__
 
61063
 
 
61064
#line 72 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitState.h"
 
61065
 
 
61066
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Unit.h"
52443
61067
namespace Puma {
52444
61068
 
52445
61069
 
 
61070
 
 
61071
#line 61072 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52446
61072
} // closed Puma
52447
61073
class WinIfExists;
52448
61074
class WinImportHandler;
52463
61089
class CCExprResolve;
52464
61090
class CExprResolve;
52465
61091
namespace Puma {
52466
 
class Unit : public List, public Printable {  friend class ::WinIfExists;
 
61092
 
 
61093
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Unit.h"
 
61094
class Unit : public List, public Printable {
 
61095
#line 61096 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61096
  friend class ::WinIfExists;
52467
61097
  friend class ::WinImportHandler;
52468
61098
  friend class ::WinMacros;
52469
61099
  friend class ::CMatchSyntax;
52482
61112
  friend class ::CCExprResolve;
52483
61113
  friend class ::CExprResolve;
52484
61114
 
 
61115
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Unit.h"
 
61116
 
52485
61117
  char *_name;
52486
61118
  UnitState _state;
52487
61119
 
52501
61133
} // namespace Puma
52502
61134
 
52503
61135
#endif /* __unit_h__ */
 
61136
 
 
61137
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Tokenizer.h"
52504
61138
namespace Puma {
52505
61139
 
52506
61140
 
 
61141
 
 
61142
#line 61143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52507
61143
} // closed Puma
52508
61144
class WinIfExists;
52509
61145
class WinImportHandler;
52524
61160
class CCExprResolve;
52525
61161
class CExprResolve;
52526
61162
namespace Puma {
52527
 
class Tokenizer {  friend class ::WinIfExists;
 
61163
 
 
61164
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Tokenizer.h"
 
61165
class Tokenizer {
 
61166
#line 61167 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61167
  friend class ::WinIfExists;
52528
61168
  friend class ::WinImportHandler;
52529
61169
  friend class ::WinMacros;
52530
61170
  friend class ::CMatchSyntax;
52543
61183
  friend class ::CCExprResolve;
52544
61184
  friend class ::CExprResolve;
52545
61185
 
 
61186
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Tokenizer.h"
 
61187
 
52546
61188
public:
52547
61189
  virtual ~Tokenizer () {}
52548
61190
  virtual void fill_unit (Source &in, Unit &unit) = 0;
52552
61194
} // namespace Puma
52553
61195
 
52554
61196
#endif /* __Tokenizer_h__ */
 
61197
 
 
61198
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
52555
61199
namespace Puma {
52556
61200
 
52557
61201
 
52558
61202
class Token;
52559
61203
 
 
61204
 
 
61205
#line 61206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52560
61206
} // closed Puma
52561
61207
class WinIfExists;
52562
61208
class WinImportHandler;
52577
61223
class CCExprResolve;
52578
61224
class CExprResolve;
52579
61225
namespace Puma {
52580
 
class CScanner : public CRecognizer, public Tokenizer {  friend class ::WinIfExists;
 
61226
 
 
61227
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
 
61228
class CScanner : public CRecognizer, public Tokenizer {
 
61229
#line 61230 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61230
  friend class ::WinIfExists;
52581
61231
  friend class ::WinImportHandler;
52582
61232
  friend class ::WinMacros;
52583
61233
  friend class ::CMatchSyntax;
52596
61246
  friend class ::CCExprResolve;
52597
61247
  friend class ::CExprResolve;
52598
61248
 
 
61249
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
 
61250
 
52599
61251
  Location loc;
52600
61252
  ErrorSink &err;
52601
61253
 
52608
61260
  CScanner (ErrorSink &error_stream) : err (error_stream) {}
52609
61261
  virtual ~CScanner () {}
52610
61262
  void configure (const Config &);
52611
 
  public: inline void __exec_old_fill_unit(::Puma::Source & in,::Puma::Unit & unit);
 
61263
  
 
61264
#line 61265 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61265
public: inline void __exec_old_fill_unit(::Puma::Source & in,::Puma::Unit & unit);
 
61266
 
 
61267
#line 49 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
52612
61268
void fill_unit (Source &in, Unit &unit);
52613
 
  public: inline void __exec_old_fill_unit(const char * in,::Puma::Unit & unit);
 
61269
  
 
61270
#line 61271 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61271
public: inline void __exec_old_fill_unit(const char * in,::Puma::Unit & unit);
 
61272
 
 
61273
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
52614
61274
void fill_unit (const char *in, Unit &unit);
52615
61275
};
52616
61276
 
52618
61278
} // namespace Puma
52619
61279
 
52620
61280
#endif /* __c_scanner_h__ */
 
61281
 
 
61282
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
52621
61283
namespace Puma {
52622
61284
 
52623
61285
 
52624
61286
class Source;
52625
61287
class CTypeInfo;
52626
61288
 
 
61289
 
 
61290
#line 61291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52627
61291
} // closed Puma
52628
61292
class WinIfExists;
52629
61293
class WinImportHandler;
52644
61308
class CCExprResolve;
52645
61309
class CExprResolve;
52646
61310
namespace Puma {
52647
 
class CProject : public Project {  friend class ::WinIfExists;
 
61311
 
 
61312
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
61313
class CProject : public Project {
 
61314
#line 61315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61315
  friend class ::WinIfExists;
52648
61316
  friend class ::WinImportHandler;
52649
61317
  friend class ::WinMacros;
52650
61318
  friend class ::CMatchSyntax;
52663
61331
  friend class ::CCExprResolve;
52664
61332
  friend class ::CExprResolve;
52665
61333
 
 
61334
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
61335
 
52666
61336
  Config _config;
52667
61337
  CScanner _scanner;
52668
61338
 
52696
61366
 
52697
61367
  // Scan the file `file' or the source if given. When
52698
61368
  // scanning a source the resulting unit gets the name `file'.
52699
 
  public: inline ::Puma::Unit * __exec_old_scanFile(const char * file,::Puma::Source * ,bool isFile);
 
61369
  
 
61370
#line 61371 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61371
public: inline ::Puma::Unit * __exec_old_scanFile(const char * file,::Puma::Source * ,bool isFile);
 
61372
 
 
61373
#line 69 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
52700
61374
virtual Unit *scanFile (const char *file, Source * = (Source*)0, 
52701
61375
                          bool isFile = true);
52702
61376
        
52725
61399
} // namespace Puma
52726
61400
 
52727
61401
#endif /* __CProject_h__ */
 
61402
 
 
61403
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
52728
61404
using namespace Puma;
52729
61405
 
 
61406
 
 
61407
#line 61408 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52730
61408
class WinIfExists;
52731
61409
class WinImportHandler;
52732
61410
class WinMacros;
52744
61422
class PragmaOnce;
52745
61423
class CCExprResolve;
52746
61424
class CExprResolve;
 
61425
 
 
61426
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
52747
61427
class ExtAC {
 
61428
#line 61429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61429
 
52748
61430
public:
52749
61431
  static ExtAC *aspectof () {
52750
61432
    static ExtAC __instance;
52754
61436
    return aspectof ();
52755
61437
  }
52756
61438
private:
 
61439
 
 
61440
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61441
 
 
61442
#line 61443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
52757
61443
  friend class ::WinIfExists;
52758
61444
  friend class ::WinImportHandler;
52759
61445
  friend class ::WinMacros;
52772
61458
  friend class ::CCExprResolve;
52773
61459
  friend class ::CExprResolve;
52774
61460
 
 
61461
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61462
 
52775
61463
  // used to enable and disable this extension at runtime
52776
61464
  bool _enabled;
52777
61465
  
52782
61470
  // C parser extension
52783
61471
  // ******************
52784
61472
  
 
61473
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61474
 
52785
61475
  
 
61476
#line 60 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61477
 
52786
61478
 
52787
61479
  // *****************
52788
61480
  // ClassDb extension
52790
61482
 
52791
61483
  // introduce AC extensions
52792
61484
  
 
61485
#line 67 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61486
 
52793
61487
  
 
61488
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61489
 
52794
61490
  
52795
61491
  // add behavioral extensions
52796
61492
  
52797
 
public: template<class JoinPoint> void __a0_before (JoinPoint *tjp) {
 
61493
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61494
 
 
61495
public: template<class JoinPoint> void __a0_before 
 
61496
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61497
 
 
61498
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61499
(JoinPoint *tjp)
 
61500
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61501
 {
 
61502
#line 61503 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61503
 
52798
61504
  typedef typename JoinPoint::That __JP_That;
52799
61505
  typedef typename JoinPoint::Target __JP_Target;
52800
61506
  typedef typename JoinPoint::Result __JP_Result;
52801
61507
 
 
61508
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61509
 
52802
61510
    tjp->that ()->ACClassDatabase::Dump (*tjp->template arg<0>(), *tjp->template arg<1>());
52803
61511
  }
 
61512
#line 61513 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61513
 
52804
61514
protected:
52805
61515
 
 
61516
#line 73 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61517
 
52806
61518
 
52807
61519
  // ***************************
52808
61520
  // C and CC-Semantic extension
52809
61521
  // ***************************
52810
61522
 
52811
61523
  
 
61524
#line 79 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61525
 
52812
61526
 
52813
61527
  
 
61528
#line 113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61529
 
52814
61530
 
52815
61531
  // initialize introduced attributes
52816
61532
  
52817
 
public: template<class JoinPoint> void __a1_after (JoinPoint *tjp) {
 
61533
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61534
 
 
61535
public: template<class JoinPoint> void __a1_after 
 
61536
#line 116 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61537
 
 
61538
#line 116 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61539
(JoinPoint *tjp)
 
61540
#line 116 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61541
 {
 
61542
#line 61543 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61543
 
52818
61544
  typedef typename JoinPoint::That __JP_That;
52819
61545
  typedef typename JoinPoint::Target __JP_Target;
52820
61546
  typedef typename JoinPoint::Result __JP_Result;
52821
61547
 
 
61548
#line 116 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61549
 
52822
61550
    tjp->that ()->_in_advice_decl   = false;
52823
61551
    tjp->that ()->_in_pointcut_decl = false;
52824
61552
    tjp->that ()->_introducer       = 0;
52825
61553
  }
 
61554
#line 61555 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61555
 
52826
61556
protected:
52827
61557
 
 
61558
#line 120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61559
 
52828
61560
  
52829
61561
  // introduce_function must check for code advice
52830
61562
  
52831
 
public: template<class JoinPoint> void __a2_around (JoinPoint *tjp) {
 
61563
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61564
 
 
61565
public: template<class JoinPoint> void __a2_around 
 
61566
#line 124 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61567
 
 
61568
#line 124 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61569
(JoinPoint *tjp)
 
61570
#line 124 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61571
 {
 
61572
#line 61573 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61573
 
52832
61574
  typedef typename JoinPoint::That __JP_That;
52833
61575
  typedef typename JoinPoint::Target __JP_Target;
52834
61576
  typedef typename JoinPoint::Result __JP_Result;
52835
61577
 
 
61578
#line 124 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61579
 
52836
61580
     
52837
61581
    // first save the current function
52838
61582
    CObjectInfo *func = tjp->that ()->current_fct;
52846
61590
    // do the necessary post processing
52847
61591
    tjp->that ()->introduce_function_post (func, node);
52848
61592
  }
 
61593
#line 61594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61594
 
52849
61595
protected:
52850
61596
 
 
61597
#line 137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61598
 
52851
61599
  
52852
61600
  // make sure lookup of functions is ignored for intros
52853
61601
  
52854
 
public: template<class JoinPoint> void __a3_around (JoinPoint *tjp) {
 
61602
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61603
 
 
61604
public: template<class JoinPoint> void __a3_around 
 
61605
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61606
 
 
61607
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61608
(JoinPoint *tjp)
 
61609
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61610
 {
 
61611
#line 61612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61612
 
52855
61613
  typedef typename JoinPoint::That __JP_That;
52856
61614
  typedef typename JoinPoint::Target __JP_Target;
52857
61615
  typedef typename JoinPoint::Result __JP_Result;
52858
61616
 
 
61617
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61618
 
52859
61619
    if (tjp->that ()->_in_advice_decl)
52860
61620
      *tjp->result () = true;
52861
61621
    else
52862
61622
      tjp->proceed ();
52863
61623
  }
 
61624
#line 61625 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61625
 
52864
61626
protected:
52865
61627
 
 
61628
#line 146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61629
 
52866
61630
 
52867
61631
  // extend member handling
52868
61632
  
52869
 
public: template<class JoinPoint> void __a4_after (JoinPoint *tjp) {
 
61633
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61634
 
 
61635
public: template<class JoinPoint> void __a4_after 
 
61636
#line 150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61637
 
 
61638
#line 150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61639
(JoinPoint *tjp)
 
61640
#line 150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61641
 {
 
61642
#line 61643 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61643
 
52870
61644
  typedef typename JoinPoint::That __JP_That;
52871
61645
  typedef typename JoinPoint::Target __JP_Target;
52872
61646
  typedef typename JoinPoint::Result __JP_Result;
52873
61647
 
 
61648
#line 150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61649
 
52874
61650
    CTree *node = *tjp->result ();
52875
61651
    if (!node || node->NodeName () != CT_InitDeclarator::NodeId ())
52876
61652
      return;
52881
61657
      tjp->that ()->current_scope = object->FunctionInfo ();
52882
61658
    }
52883
61659
  }
 
61660
#line 61661 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61661
 
52884
61662
protected:
52885
61663
 
 
61664
#line 160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61665
 
52886
61666
 
52887
61667
  // make sure lookup of members is ignored for intros
52888
61668
  
52889
 
public: template<class JoinPoint> void __a5_around (JoinPoint *tjp, bool &redef_typedef) {
 
61669
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61670
 
 
61671
public: template<class JoinPoint> void __a5_around 
 
61672
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61673
 
 
61674
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61675
(JoinPoint *tjp, bool &redef_typedef)
 
61676
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61677
 {
 
61678
#line 61679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61679
 
52890
61680
  typedef typename JoinPoint::That __JP_That;
52891
61681
  typedef typename JoinPoint::Target __JP_Target;
52892
61682
  typedef typename JoinPoint::Result __JP_Result;
52893
61683
 
 
61684
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61685
 
52894
61686
    if (tjp->that ()->_in_advice_decl) {
52895
61687
      redef_typedef = false;
52896
61688
      *tjp->result () = true;
52897
61689
    } else
52898
61690
      tjp->proceed ();
52899
61691
  }
 
61692
#line 61693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61693
 
52900
61694
protected:
52901
61695
 
 
61696
#line 172 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61697
 
52902
61698
 
52903
61699
  // extend object handling
52904
61700
  
52905
 
public: template<class JoinPoint> void __a6_after (JoinPoint *tjp) {
 
61701
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61702
 
 
61703
public: template<class JoinPoint> void __a6_after 
 
61704
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61705
 
 
61706
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61707
(JoinPoint *tjp)
 
61708
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61709
 {
 
61710
#line 61711 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61711
 
52906
61712
  typedef typename JoinPoint::That __JP_That;
52907
61713
  typedef typename JoinPoint::Target __JP_Target;
52908
61714
  typedef typename JoinPoint::Result __JP_Result;
52909
61715
 
 
61716
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61717
 
52910
61718
    CTree *node = *tjp->result ();
52911
61719
    if (! node || node->NodeName () != CT_InitDeclarator::NodeId ()) 
52912
61720
      return;
52919
61727
      tjp->that ()->current_scope = object->FunctionInfo ();
52920
61728
    }
52921
61729
  }
 
61730
#line 61731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61731
 
52922
61732
protected:
52923
61733
 
 
61734
#line 188 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61735
 
52924
61736
  
52925
61737
  // make sure lookup of members is ignored for intros
52926
61738
  
52927
 
public: template<class JoinPoint> void __a7_around (JoinPoint *tjp, bool &redef_typedef) {
 
61739
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61740
 
 
61741
public: template<class JoinPoint> void __a7_around 
 
61742
#line 194 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61743
 
 
61744
#line 194 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61745
(JoinPoint *tjp, bool &redef_typedef)
 
61746
#line 194 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61747
 {
 
61748
#line 61749 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61749
 
52928
61750
  typedef typename JoinPoint::That __JP_That;
52929
61751
  typedef typename JoinPoint::Target __JP_Target;
52930
61752
  typedef typename JoinPoint::Result __JP_Result;
52931
61753
 
 
61754
#line 194 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61755
 
52932
61756
      if (tjp->that ()->_in_advice_decl) {
52933
61757
        redef_typedef = false;
52934
61758
        *tjp->result () = true;
52935
61759
      } else
52936
61760
        tjp->proceed ();
52937
61761
  }
 
61762
#line 61763 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61763
 
52938
61764
protected:
52939
61765
 
 
61766
#line 200 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61767
 
52940
61768
 
52941
61769
  // extend the class handling  
52942
61770
  
52943
 
public: template<class JoinPoint> void __a8_after (JoinPoint *tjp) {
 
61771
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61772
 
 
61773
public: template<class JoinPoint> void __a8_after 
 
61774
#line 204 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61775
 
 
61776
#line 204 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61777
(JoinPoint *tjp)
 
61778
#line 204 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61779
 {
 
61780
#line 61781 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61781
 
52944
61782
  typedef typename JoinPoint::That __JP_That;
52945
61783
  typedef typename JoinPoint::Target __JP_Target;
52946
61784
  typedef typename JoinPoint::Result __JP_Result;
52947
61785
 
 
61786
#line 204 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61787
 
52948
61788
    CT_ClassDef *cd = (CT_ClassDef*)*tjp->result ();
52949
61789
    if (!cd)
52950
61790
      return;
52962
61802
      tjp->that ()->current_scope = saved_scope;
52963
61803
    }
52964
61804
  }
 
61805
#line 61806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61806
 
52965
61807
protected:
52966
61808
 
 
61809
#line 221 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61810
 
52967
61811
 
52968
61812
  // extend the class handling  
52969
61813
  
52970
 
public: template<class JoinPoint> void __a9_before (JoinPoint *tjp) {
 
61814
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61815
 
 
61816
public: template<class JoinPoint> void __a9_before 
 
61817
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61818
 
 
61819
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61820
(JoinPoint *tjp)
 
61821
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61822
 {
 
61823
#line 61824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61824
 
52971
61825
  typedef typename JoinPoint::That __JP_That;
52972
61826
  typedef typename JoinPoint::Target __JP_Target;
52973
61827
  typedef typename JoinPoint::Result __JP_Result;
52974
61828
 
 
61829
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61830
 
52975
61831
    if (tjp->that ()->_introducer) {
52976
61832
      CT_ClassDef *cd =
52977
61833
        (CT_ClassDef*)tjp->that ()->current_scope->Structure ()->Tree ();
52980
61836
        builder.get_node (builder.nodes () - 1));
52981
61837
    }
52982
61838
  }
 
61839
#line 61840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61840
 
52983
61841
protected:
52984
61842
 
 
61843
#line 233 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61844
 
52985
61845
 
52986
61846
  // perform an additional check on base classes with aspects
52987
61847
  
52988
 
public: template<class JoinPoint> void __a10_after (JoinPoint *tjp) {
 
61848
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61849
 
 
61850
public: template<class JoinPoint> void __a10_after 
 
61851
#line 237 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61852
 
 
61853
#line 237 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61854
(JoinPoint *tjp)
 
61855
#line 237 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61856
 {
 
61857
#line 61858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61858
 
52989
61859
  typedef typename JoinPoint::That __JP_That;
52990
61860
  typedef typename JoinPoint::Target __JP_Target;
52991
61861
  typedef typename JoinPoint::Result __JP_Result;
52992
61862
 
 
61863
#line 237 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61864
 
52993
61865
 
52994
61866
    // obtain the first argument
52995
61867
    CTree *cs = *tjp->template arg<0>();
52997
61869
    // handle it
52998
61870
    tjp->that ()->add_base_classes_post (cs);
52999
61871
  }
 
61872
#line 61873 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61873
 
53000
61874
protected:
53001
61875
 
 
61876
#line 244 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61877
 
53002
61878
};
 
61879
#line 61880 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61880
 
53003
61881
namespace AC {
53004
61882
  template <class JoinPoint>
53005
61883
  inline void invoke_ExtAC_ExtAC_a0_before (JoinPoint *tjp) {
53049
61927
  }
53050
61928
53051
61929
 
 
61930
#line 245 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61931
 
53052
61932
 
53053
61933
 
53054
61934
// ***************************
53056
61936
// ***************************
53057
61937
 
53058
61938
 
53059
 
 
53060
 
 
53061
 
 
53062
 
 
53063
 
 
53064
 
 
53065
 
 
53066
 
 
53067
 
 
53068
 
 
53069
 
 
53070
 
 
53071
 
 
53072
 
 
53073
 
 
53074
 
 
53075
 
 
53076
 
 
53077
 
 
 
61939
#line 285 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61940
 
 
61941
 
 
61942
 
 
61943
#line 298 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61944
 
 
61945
 
 
61946
 
 
61947
#line 325 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61948
 
 
61949
 
 
61950
 
 
61951
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61952
 
 
61953
 
 
61954
 
 
61955
 
 
61956
#line 478 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61957
 
 
61958
 
 
61959
 
 
61960
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61961
 
 
61962
 
 
61963
 
 
61964
#line 609 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61965
 
 
61966
 
 
61967
 
 
61968
#line 634 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61969
 
 
61970
 
 
61971
 
 
61972
#line 644 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
61973
 
 
61974
 
 
61975
 
 
61976
 
 
61977
#line 651 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
53078
61978
 
53079
61979
 
53080
61980
#endif /* __ext_ac_h__ */
53081
61981
 
 
61982
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
61983
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
61984
 
 
61985
#line 61986 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
61986
 
53082
61987
#ifndef __ac_fwd_ExtAC__
53083
61988
#define __ac_fwd_ExtAC__
53084
61989
class ExtAC;
53108
62013
}
53109
62014
#endif
53110
62015
 
53111
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
53112
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
 
62016
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
 
62017
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
53113
62018
#endif
 
62019
 
 
62020
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
53114
62021
// This file is part of PUMA.
53115
62022
// Copyright (C) 1999-2003  The PUMA developer team.
53116
62023
//                                                                
53130
62037
// MA  02111-1307  USA                                            
53131
62038
 
53132
62039
 
 
62040
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62041
 
 
62042
#line 62043 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62043
 
53133
62044
#ifndef __ac_fwd_ExtACTree__
53134
62045
#define __ac_fwd_ExtACTree__
53135
62046
class ExtACTree;
53141
62052
}
53142
62053
#endif
53143
62054
 
53144
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
53145
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
62055
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
62056
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
53146
62057
#endif
53147
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
53148
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
62058
 
 
62059
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62060
 
 
62061
#line 62062 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62062
 
 
62063
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62064
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
62065
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
62066
 
 
62067
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
53149
62068
// This file is part of PUMA.
53150
62069
// Copyright (C) 1999-2003  The PUMA developer team.
53151
62070
//                                                                
53327
62246
/*                                                                           */
53328
62247
/*****************************************************************************/
53329
62248
 
 
62249
 
 
62250
#line 62251 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53330
62251
} // closed Puma
53331
62252
class WinIfExists;
53332
62253
class WinImportHandler;
53347
62268
class CCExprResolve;
53348
62269
class CExprResolve;
53349
62270
namespace Puma {
53350
 
class CTree {  friend class ::WinIfExists;
 
62271
 
 
62272
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62273
class CTree {
 
62274
#line 62275 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62275
  friend class ::WinIfExists;
53351
62276
  friend class ::WinImportHandler;
53352
62277
  friend class ::WinMacros;
53353
62278
  friend class ::CMatchSyntax;
53366
62291
  friend class ::CCExprResolve;
53367
62292
  friend class ::CExprResolve;
53368
62293
 
 
62294
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62295
 
53369
62296
public:
53370
62297
  /*DEBUG*/static int alloc;
53371
62298
  /*DEBUG*/static int release;
53401
62328
  virtual CT_Declarator *IsDeclarator () { return 0; }
53402
62329
   private:
53403
62330
  typedef CTree CCExprResolveCTree;
 
62331
 
 
62332
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
53404
62333
 public :
53405
62334
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
53406
62335
  typedef CTree CExprResolveCTree;
 
62336
 
 
62337
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
53407
62338
 public :
53408
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
53409
 
 
 
62339
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
62340
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62341
};
 
62342
 
 
62343
 
 
62344
#line 62345 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53410
62345
} // closed Puma
53411
62346
class WinIfExists;
53412
62347
class WinImportHandler;
53427
62362
class CCExprResolve;
53428
62363
class CExprResolve;
53429
62364
namespace Puma {
53430
 
class CT_Error : public CTree {  friend class ::WinIfExists;
 
62365
 
 
62366
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62367
class CT_Error : public CTree {
 
62368
#line 62369 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62369
  friend class ::WinIfExists;
53431
62370
  friend class ::WinImportHandler;
53432
62371
  friend class ::WinMacros;
53433
62372
  friend class ::CMatchSyntax;
53446
62385
  friend class ::CCExprResolve;
53447
62386
  friend class ::CExprResolve;
53448
62387
 
 
62388
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62389
 
53449
62390
public:
53450
62391
  static const char *NodeId ();
53451
62392
  const char *NodeName () const { return NodeId (); }
53452
62393
  int Sons () const { return 0; }
53453
62394
};
53454
62395
 
 
62396
 
 
62397
#line 62398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53455
62398
} // closed Puma
53456
62399
class WinIfExists;
53457
62400
class WinImportHandler;
53472
62415
class CCExprResolve;
53473
62416
class CExprResolve;
53474
62417
namespace Puma {
53475
 
class CT_Token : public CTree {  friend class ::WinIfExists;
 
62418
 
 
62419
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62420
class CT_Token : public CTree {
 
62421
#line 62422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62422
  friend class ::WinIfExists;
53476
62423
  friend class ::WinImportHandler;
53477
62424
  friend class ::WinMacros;
53478
62425
  friend class ::CMatchSyntax;
53491
62438
  friend class ::CCExprResolve;
53492
62439
  friend class ::CExprResolve;
53493
62440
 
 
62441
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62442
 
53494
62443
  Token *_token;
53495
62444
  unsigned long int _number;
53496
62445
  
53517
62466
/*                                                                           */
53518
62467
/*****************************************************************************/
53519
62468
 
 
62469
 
 
62470
#line 62471 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53520
62471
} // closed Puma
53521
62472
class WinIfExists;
53522
62473
class WinImportHandler;
53537
62488
class CCExprResolve;
53538
62489
class CExprResolve;
53539
62490
namespace Puma {
53540
 
class CT_List : public CTree {  friend class ::WinIfExists;
 
62491
 
 
62492
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62493
class CT_List : public CTree {
 
62494
#line 62495 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62495
  friend class ::WinIfExists;
53541
62496
  friend class ::WinImportHandler;
53542
62497
  friend class ::WinMacros;
53543
62498
  friend class ::CMatchSyntax;
53556
62511
  friend class ::CCExprResolve;
53557
62512
  friend class ::CExprResolve;
53558
62513
 
 
62514
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62515
 
53559
62516
  Array<CTree*> _sons;
53560
62517
  int _properties;
53561
62518
 
53594
62551
   { if (idx < Sons ()) _sons.remove (idx); }
53595
62552
};
53596
62553
 
 
62554
 
 
62555
#line 62556 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53597
62556
} // closed Puma
53598
62557
class WinIfExists;
53599
62558
class WinImportHandler;
53614
62573
class CCExprResolve;
53615
62574
class CExprResolve;
53616
62575
namespace Puma {
53617
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
62576
 
 
62577
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62578
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
62579
#line 62580 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62580
  friend class ::WinIfExists;
53618
62581
  friend class ::WinImportHandler;
53619
62582
  friend class ::WinMacros;
53620
62583
  friend class ::CMatchSyntax;
53633
62596
  friend class ::CCExprResolve;
53634
62597
  friend class ::CExprResolve;
53635
62598
 
 
62599
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62600
 
53636
62601
public:
53637
62602
  CT_ExprList () { AddProperties (SEPARATORS); }
53638
62603
  static const char *NodeId ();
53644
62609
  CSemObject *SemObject () const { return (CSemObject*)this; }
53645
62610
};
53646
62611
 
 
62612
 
 
62613
#line 62614 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53647
62614
} // closed Puma
53648
62615
class WinIfExists;
53649
62616
class WinImportHandler;
53664
62631
class CCExprResolve;
53665
62632
class CExprResolve;
53666
62633
namespace Puma {
53667
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
 
62634
 
 
62635
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62636
class CT_DeclaratorList : public CT_List {
 
62637
#line 62638 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62638
  friend class ::WinIfExists;
53668
62639
  friend class ::WinImportHandler;
53669
62640
  friend class ::WinMacros;
53670
62641
  friend class ::CMatchSyntax;
53683
62654
  friend class ::CCExprResolve;
53684
62655
  friend class ::CExprResolve;
53685
62656
 
 
62657
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62658
 
53686
62659
public:
53687
62660
  static const char *NodeId ();
53688
62661
  const char *NodeName () const { return NodeId (); }
53689
62662
};
53690
62663
 
 
62664
 
 
62665
#line 62666 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53691
62666
} // closed Puma
53692
62667
class WinIfExists;
53693
62668
class WinImportHandler;
53708
62683
class CCExprResolve;
53709
62684
class CExprResolve;
53710
62685
namespace Puma {
53711
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
 
62686
 
 
62687
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62688
class CT_EnumeratorList : public CT_List {
 
62689
#line 62690 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62690
  friend class ::WinIfExists;
53712
62691
  friend class ::WinImportHandler;
53713
62692
  friend class ::WinMacros;
53714
62693
  friend class ::CMatchSyntax;
53727
62706
  friend class ::CCExprResolve;
53728
62707
  friend class ::CExprResolve;
53729
62708
 
 
62709
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62710
 
53730
62711
public:
53731
62712
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
53732
62713
  static const char *NodeId ();
53733
62714
  const char *NodeName () const { return NodeId (); }
53734
62715
};
53735
62716
   
 
62717
 
 
62718
#line 62719 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53736
62719
} // closed Puma
53737
62720
class WinIfExists;
53738
62721
class WinImportHandler;
53753
62736
class CCExprResolve;
53754
62737
class CExprResolve;
53755
62738
namespace Puma {
53756
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
 
62739
 
 
62740
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62741
class CT_DeclList : public CT_List {
 
62742
#line 62743 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62743
  friend class ::WinIfExists;
53757
62744
  friend class ::WinImportHandler;
53758
62745
  friend class ::WinMacros;
53759
62746
  friend class ::CMatchSyntax;
53772
62759
  friend class ::CCExprResolve;
53773
62760
  friend class ::CExprResolve;
53774
62761
 
 
62762
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62763
 
53775
62764
public:
53776
62765
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
53777
62766
  static const char *NodeId ();
53779
62768
  void Linkage (CT_LinkageSpec *l);
53780
62769
};
53781
62770
 
 
62771
 
 
62772
#line 62773 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53782
62773
} // closed Puma
53783
62774
class WinIfExists;
53784
62775
class WinImportHandler;
53799
62790
class CCExprResolve;
53800
62791
class CExprResolve;
53801
62792
namespace Puma {
53802
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
 
62793
 
 
62794
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62795
class CT_DeclSpecSeq : public CT_List {
 
62796
#line 62797 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62797
  friend class ::WinIfExists;
53803
62798
  friend class ::WinImportHandler;
53804
62799
  friend class ::WinMacros;
53805
62800
  friend class ::CMatchSyntax;
53818
62813
  friend class ::CCExprResolve;
53819
62814
  friend class ::CExprResolve;
53820
62815
 
 
62816
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62817
 
53821
62818
public:
53822
62819
  static const char *NodeId ();
53823
62820
  const char *NodeName () const { return NodeId (); }
53824
62821
};
53825
62822
 
 
62823
 
 
62824
#line 62825 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53826
62825
} // closed Puma
53827
62826
class WinIfExists;
53828
62827
class WinImportHandler;
53843
62842
class CCExprResolve;
53844
62843
class CExprResolve;
53845
62844
namespace Puma {
53846
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
62845
 
 
62846
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62847
class CT_CmpdStmt : public CT_List, public CSemScope {
 
62848
#line 62849 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62849
  friend class ::WinIfExists;
53847
62850
  friend class ::WinImportHandler;
53848
62851
  friend class ::WinMacros;
53849
62852
  friend class ::CMatchSyntax;
53862
62865
  friend class ::CCExprResolve;
53863
62866
  friend class ::CExprResolve;
53864
62867
 
 
62868
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62869
 
53865
62870
public:
53866
62871
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
53867
62872
  static const char *NodeId ();
53868
62873
  const char *NodeName () const { return NodeId (); }
53869
62874
};
53870
62875
 
 
62876
 
 
62877
#line 62878 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53871
62878
} // closed Puma
53872
62879
class WinIfExists;
53873
62880
class WinImportHandler;
53888
62895
class CCExprResolve;
53889
62896
class CExprResolve;
53890
62897
namespace Puma {
53891
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
 
62898
 
 
62899
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62900
class CT_HandlerSeq : public CT_List {
 
62901
#line 62902 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62902
  friend class ::WinIfExists;
53892
62903
  friend class ::WinImportHandler;
53893
62904
  friend class ::WinMacros;
53894
62905
  friend class ::CMatchSyntax;
53907
62918
  friend class ::CCExprResolve;
53908
62919
  friend class ::CExprResolve;
53909
62920
 
 
62921
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62922
 
53910
62923
public:
53911
62924
  static const char *NodeId ();
53912
62925
  const char *NodeName () const { return NodeId (); }
53913
62926
};
53914
62927
 
 
62928
 
 
62929
#line 62930 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53915
62930
} // closed Puma
53916
62931
class WinIfExists;
53917
62932
class WinImportHandler;
53932
62947
class CCExprResolve;
53933
62948
class CExprResolve;
53934
62949
namespace Puma {
53935
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
62950
 
 
62951
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62952
class CT_TemplateParamList : public CT_List, public CSemScope {
 
62953
#line 62954 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
62954
  friend class ::WinIfExists;
53936
62955
  friend class ::WinImportHandler;
53937
62956
  friend class ::WinMacros;
53938
62957
  friend class ::CMatchSyntax;
53951
62970
  friend class ::CCExprResolve;
53952
62971
  friend class ::CExprResolve;
53953
62972
 
 
62973
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
62974
 
53954
62975
public:
53955
62976
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
53956
62977
  static const char *NodeId ();
53957
62978
  const char *NodeName () const { return NodeId (); }
53958
62979
};
53959
62980
 
 
62981
 
 
62982
#line 62983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
53960
62983
} // closed Puma
53961
62984
class WinIfExists;
53962
62985
class WinImportHandler;
53977
63000
class CCExprResolve;
53978
63001
class CExprResolve;
53979
63002
namespace Puma {
53980
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
 
63003
 
 
63004
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63005
class CT_TemplateArgList : public CT_List {
 
63006
#line 63007 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63007
  friend class ::WinIfExists;
53981
63008
  friend class ::WinImportHandler;
53982
63009
  friend class ::WinMacros;
53983
63010
  friend class ::CMatchSyntax;
53996
63023
  friend class ::CCExprResolve;
53997
63024
  friend class ::CExprResolve;
53998
63025
 
 
63026
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63027
 
53999
63028
public:
54000
63029
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
54001
63030
  static const char *NodeId ();
54008
63037
/*                                                                           */
54009
63038
/*****************************************************************************/
54010
63039
 
 
63040
 
 
63041
#line 63042 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54011
63042
} // closed Puma
54012
63043
class WinIfExists;
54013
63044
class WinImportHandler;
54028
63059
class CCExprResolve;
54029
63060
class CExprResolve;
54030
63061
namespace Puma {
54031
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
 
63062
 
 
63063
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63064
class CT_Expression : public CTree, public CSemValue {
 
63065
#line 63066 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63066
  friend class ::WinIfExists;
54032
63067
  friend class ::WinImportHandler;
54033
63068
  friend class ::WinMacros;
54034
63069
  friend class ::CMatchSyntax;
54047
63082
  friend class ::CCExprResolve;
54048
63083
  friend class ::CExprResolve;
54049
63084
 
 
63085
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63086
 
54050
63087
protected:
54051
63088
  CT_Expression () {}
54052
63089
 
54058
63095
  CSemValue *SemValue () const { return (CSemValue*)this; }
54059
63096
   private:
54060
63097
  typedef CT_Expression CCExprResolveExpr;
 
63098
 
 
63099
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54061
63100
 public :
54062
63101
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54063
63102
  typedef CT_Expression CExprResolveExpr;
 
63103
 
 
63104
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54064
63105
 public :
54065
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54066
 
 
 
63106
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63107
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63108
};
 
63109
 
 
63110
 
 
63111
#line 63112 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54067
63112
} // closed Puma
54068
63113
class WinIfExists;
54069
63114
class WinImportHandler;
54084
63129
class CCExprResolve;
54085
63130
class CExprResolve;
54086
63131
namespace Puma {
54087
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
63132
 
 
63133
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63134
class CT_String : public CT_List, public CSemValue {
 
63135
#line 63136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63136
  friend class ::WinIfExists;
54088
63137
  friend class ::WinImportHandler;
54089
63138
  friend class ::WinMacros;
54090
63139
  friend class ::CMatchSyntax;
54103
63152
  friend class ::CCExprResolve;
54104
63153
  friend class ::CExprResolve;
54105
63154
 
 
63155
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63156
 
54106
63157
public:
54107
63158
  CT_String (int size) : CT_List (size, 1) {}
54108
63159
  static const char *NodeId ();
54113
63164
  CSemValue *SemValue () const { return (CSemValue*)this; }
54114
63165
   private:
54115
63166
  typedef CT_String CCExprResolveExpr;
 
63167
 
 
63168
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54116
63169
 public :
54117
63170
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54118
63171
  typedef CT_String CExprResolveExpr;
 
63172
 
 
63173
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54119
63174
 public :
54120
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54121
 
 
 
63175
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63176
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63177
};
 
63178
 
 
63179
 
 
63180
#line 63181 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54122
63181
} // closed Puma
54123
63182
class WinIfExists;
54124
63183
class WinImportHandler;
54139
63198
class CCExprResolve;
54140
63199
class CExprResolve;
54141
63200
namespace Puma {
54142
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
 
63201
 
 
63202
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63203
class CT_WideString : public CT_String {
 
63204
#line 63205 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63205
  friend class ::WinIfExists;
54143
63206
  friend class ::WinImportHandler;
54144
63207
  friend class ::WinMacros;
54145
63208
  friend class ::CMatchSyntax;
54158
63221
  friend class ::CCExprResolve;
54159
63222
  friend class ::CExprResolve;
54160
63223
 
 
63224
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63225
 
54161
63226
public:
54162
63227
  CT_WideString (int size) : CT_String (size) {}
54163
63228
  static const char *NodeId ();
54164
63229
  const char *NodeName () const { return NodeId (); }
54165
63230
   private:
54166
63231
  typedef CT_WideString CCExprResolveExpr;
 
63232
 
 
63233
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54167
63234
 public :
54168
63235
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54169
63236
  typedef CT_WideString CExprResolveExpr;
 
63237
 
 
63238
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54170
63239
 public :
54171
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54172
 
 
 
63240
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63241
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63242
};
 
63243
 
 
63244
 
 
63245
#line 63246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54173
63246
} // closed Puma
54174
63247
class WinIfExists;
54175
63248
class WinImportHandler;
54190
63263
class CCExprResolve;
54191
63264
class CExprResolve;
54192
63265
namespace Puma {
54193
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
 
63266
 
 
63267
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63268
class CT_Integer : public CT_Expression {
 
63269
#line 63270 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63270
  friend class ::WinIfExists;
54194
63271
  friend class ::WinImportHandler;
54195
63272
  friend class ::WinMacros;
54196
63273
  friend class ::CMatchSyntax;
54209
63286
  friend class ::CCExprResolve;
54210
63287
  friend class ::CExprResolve;
54211
63288
 
 
63289
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63290
 
54212
63291
  CTree *_value;  // CT_Token
54213
63292
 
54214
63293
public:
54221
63300
   { if (old_son == _value) _value = new_son; }
54222
63301
   private:
54223
63302
  typedef CT_Integer CCExprResolveExpr;
 
63303
 
 
63304
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54224
63305
 public :
54225
63306
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54226
63307
  typedef CT_Integer CExprResolveExpr;
 
63308
 
 
63309
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54227
63310
 public :
54228
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54229
 
 
 
63311
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63312
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63313
};
 
63314
 
 
63315
 
 
63316
#line 63317 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54230
63317
} // closed Puma
54231
63318
class WinIfExists;
54232
63319
class WinImportHandler;
54247
63334
class CCExprResolve;
54248
63335
class CExprResolve;
54249
63336
namespace Puma {
54250
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
 
63337
 
 
63338
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63339
class CT_Character : public CT_Expression {
 
63340
#line 63341 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63341
  friend class ::WinIfExists;
54251
63342
  friend class ::WinImportHandler;
54252
63343
  friend class ::WinMacros;
54253
63344
  friend class ::CMatchSyntax;
54266
63357
  friend class ::CCExprResolve;
54267
63358
  friend class ::CExprResolve;
54268
63359
 
 
63360
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63361
 
54269
63362
  CTree *_value;  // CT_Token
54270
63363
 
54271
63364
public:
54278
63371
   { if (old_son == _value) _value = new_son; }
54279
63372
   private:
54280
63373
  typedef CT_Character CCExprResolveExpr;
 
63374
 
 
63375
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54281
63376
 public :
54282
63377
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54283
63378
  typedef CT_Character CExprResolveExpr;
 
63379
 
 
63380
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54284
63381
 public :
54285
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54286
 
 
 
63382
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63383
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63384
};
 
63385
 
 
63386
 
 
63387
#line 63388 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54287
63388
} // closed Puma
54288
63389
class WinIfExists;
54289
63390
class WinImportHandler;
54304
63405
class CCExprResolve;
54305
63406
class CExprResolve;
54306
63407
namespace Puma {
54307
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
 
63408
 
 
63409
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63410
class CT_WideCharacter : public CT_Character {
 
63411
#line 63412 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63412
  friend class ::WinIfExists;
54308
63413
  friend class ::WinImportHandler;
54309
63414
  friend class ::WinMacros;
54310
63415
  friend class ::CMatchSyntax;
54323
63428
  friend class ::CCExprResolve;
54324
63429
  friend class ::CExprResolve;
54325
63430
 
 
63431
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63432
 
54326
63433
  CTree *_value;  // CT_Token
54327
63434
 
54328
63435
public:
54333
63440
   { if (old_son == _value) _value = new_son; }
54334
63441
   private:
54335
63442
  typedef CT_WideCharacter CCExprResolveExpr;
 
63443
 
 
63444
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54336
63445
 public :
54337
63446
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54338
63447
  typedef CT_WideCharacter CExprResolveExpr;
 
63448
 
 
63449
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54339
63450
 public :
54340
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54341
 
 
 
63451
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63452
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63453
};
 
63454
 
 
63455
 
 
63456
#line 63457 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54342
63457
} // closed Puma
54343
63458
class WinIfExists;
54344
63459
class WinImportHandler;
54359
63474
class CCExprResolve;
54360
63475
class CExprResolve;
54361
63476
namespace Puma {
54362
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
 
63477
 
 
63478
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63479
class CT_Float : public CT_Expression {
 
63480
#line 63481 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63481
  friend class ::WinIfExists;
54363
63482
  friend class ::WinImportHandler;
54364
63483
  friend class ::WinMacros;
54365
63484
  friend class ::CMatchSyntax;
54378
63497
  friend class ::CCExprResolve;
54379
63498
  friend class ::CExprResolve;
54380
63499
 
 
63500
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63501
 
54381
63502
  CTree *_value;  // CT_Token
54382
63503
 
54383
63504
public:
54390
63511
   { if (old_son == _value) _value = new_son; }
54391
63512
   private:
54392
63513
  typedef CT_Float CCExprResolveExpr;
 
63514
 
 
63515
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54393
63516
 public :
54394
63517
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54395
63518
  typedef CT_Float CExprResolveExpr;
 
63519
 
 
63520
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54396
63521
 public :
54397
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54398
 
 
 
63522
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63523
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63524
};
 
63525
 
 
63526
 
 
63527
#line 63528 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54399
63528
} // closed Puma
54400
63529
class WinIfExists;
54401
63530
class WinImportHandler;
54416
63545
class CCExprResolve;
54417
63546
class CExprResolve;
54418
63547
namespace Puma {
54419
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
 
63548
 
 
63549
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63550
class CT_Bool : public CT_Expression {
 
63551
#line 63552 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63552
  friend class ::WinIfExists;
54420
63553
  friend class ::WinImportHandler;
54421
63554
  friend class ::WinMacros;
54422
63555
  friend class ::CMatchSyntax;
54435
63568
  friend class ::CCExprResolve;
54436
63569
  friend class ::CExprResolve;
54437
63570
 
 
63571
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63572
 
54438
63573
  CTree *_value;  // CT_Token
54439
63574
 
54440
63575
public:
54447
63582
   { if (old_son == _value) _value = new_son; }
54448
63583
   private:
54449
63584
  typedef CT_Bool CCExprResolveExpr;
 
63585
 
 
63586
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54450
63587
 public :
54451
63588
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54452
63589
  typedef CT_Bool CExprResolveExpr;
 
63590
 
 
63591
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54453
63592
 public :
54454
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54455
 
 
 
63593
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63594
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63595
};
 
63596
 
 
63597
 
 
63598
#line 63599 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54456
63599
} // closed Puma
54457
63600
class WinIfExists;
54458
63601
class WinImportHandler;
54473
63616
class CCExprResolve;
54474
63617
class CExprResolve;
54475
63618
namespace Puma {
54476
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
 
63619
 
 
63620
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63621
class CT_BracedExpr : public CT_Expression {
 
63622
#line 63623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63623
  friend class ::WinIfExists;
54477
63624
  friend class ::WinImportHandler;
54478
63625
  friend class ::WinMacros;
54479
63626
  friend class ::CMatchSyntax;
54492
63639
  friend class ::CCExprResolve;
54493
63640
  friend class ::CExprResolve;
54494
63641
 
 
63642
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63643
 
54495
63644
  CTree *sons[3]; // open, expr, close
54496
63645
 
54497
63646
public:
54511
63660
  }
54512
63661
   private:
54513
63662
  typedef CT_BracedExpr CCExprResolveExpr;
 
63663
 
 
63664
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54514
63665
 public :
54515
63666
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54516
63667
  typedef CT_BracedExpr CExprResolveExpr;
 
63668
 
 
63669
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54517
63670
 public :
54518
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54519
 
 
 
63671
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63672
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63673
};
 
63674
 
 
63675
 
 
63676
#line 63677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54520
63677
} // closed Puma
54521
63678
class WinIfExists;
54522
63679
class WinImportHandler;
54537
63694
class CCExprResolve;
54538
63695
class CExprResolve;
54539
63696
namespace Puma {
 
63697
 
 
63698
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
54540
63699
class CT_SimpleName : public CT_List, public Printable, 
54541
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
63700
                      public CSemValue, public CSemObject {
 
63701
#line 63702 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63702
  friend class ::WinIfExists;
54542
63703
  friend class ::WinImportHandler;
54543
63704
  friend class ::WinMacros;
54544
63705
  friend class ::CMatchSyntax;
54557
63718
  friend class ::CCExprResolve;
54558
63719
  friend class ::CExprResolve;
54559
63720
 
 
63721
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63722
 
54560
63723
protected:
54561
63724
  CT_SimpleName (int size) : CT_List (size, 1) {}
54562
63725
  CT_SimpleName (int size, int properties) : 
54581
63744
  virtual CT_SimpleName *IsSimpleName () { return this; }  
54582
63745
   private:
54583
63746
  typedef CT_SimpleName CCExprResolveExpr;
 
63747
 
 
63748
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54584
63749
 public :
54585
63750
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54586
63751
  typedef CT_SimpleName CExprResolveExpr;
 
63752
 
 
63753
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54587
63754
 public :
54588
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54589
 
 
 
63755
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63756
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63757
};
 
63758
 
 
63759
 
 
63760
#line 63761 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54590
63761
} // closed Puma
54591
63762
class WinIfExists;
54592
63763
class WinImportHandler;
54607
63778
class CCExprResolve;
54608
63779
class CExprResolve;
54609
63780
namespace Puma {
54610
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
 
63781
 
 
63782
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63783
class CT_SpecialName : public CT_SimpleName {
 
63784
#line 63785 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63785
  friend class ::WinIfExists;
54611
63786
  friend class ::WinImportHandler;
54612
63787
  friend class ::WinMacros;
54613
63788
  friend class ::CMatchSyntax;
54626
63801
  friend class ::CCExprResolve;
54627
63802
  friend class ::CExprResolve;
54628
63803
 
 
63804
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63805
 
54629
63806
  char *_name;
54630
63807
  
54631
63808
protected:
54645
63822
  void  operator delete (void *);
54646
63823
   private:
54647
63824
  typedef CT_SpecialName CCExprResolveExpr;
 
63825
 
 
63826
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54648
63827
 public :
54649
63828
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54650
63829
  typedef CT_SpecialName CExprResolveExpr;
 
63830
 
 
63831
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54651
63832
 public :
54652
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54653
 
 
 
63833
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63834
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63835
};
 
63836
 
 
63837
 
 
63838
#line 63839 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54654
63839
} // closed Puma
54655
63840
class WinIfExists;
54656
63841
class WinImportHandler;
54671
63856
class CCExprResolve;
54672
63857
class CExprResolve;
54673
63858
namespace Puma {
54674
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
 
63859
 
 
63860
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63861
class CT_PrivateName : public CT_SpecialName {
 
63862
#line 63863 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63863
  friend class ::WinIfExists;
54675
63864
  friend class ::WinImportHandler;
54676
63865
  friend class ::WinMacros;
54677
63866
  friend class ::CMatchSyntax;
54690
63879
  friend class ::CCExprResolve;
54691
63880
  friend class ::CExprResolve;
54692
63881
 
 
63882
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63883
 
54693
63884
public:
54694
63885
  CT_PrivateName (const char *n) { Name (n); }
54695
63886
  static const char *NodeId ();
54701
63892
  void  operator delete (void *);
54702
63893
   private:
54703
63894
  typedef CT_PrivateName CCExprResolveExpr;
 
63895
 
 
63896
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54704
63897
 public :
54705
63898
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54706
63899
  typedef CT_PrivateName CExprResolveExpr;
 
63900
 
 
63901
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54707
63902
 public :
54708
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54709
 
 
 
63903
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63904
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63905
};
 
63906
 
 
63907
 
 
63908
#line 63909 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54710
63909
} // closed Puma
54711
63910
class WinIfExists;
54712
63911
class WinImportHandler;
54727
63926
class CCExprResolve;
54728
63927
class CExprResolve;
54729
63928
namespace Puma {
54730
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
 
63929
 
 
63930
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63931
class CT_DestructorName : public CT_SpecialName {
 
63932
#line 63933 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
63933
  friend class ::WinIfExists;
54731
63934
  friend class ::WinImportHandler;
54732
63935
  friend class ::WinMacros;
54733
63936
  friend class ::CMatchSyntax;
54746
63949
  friend class ::CCExprResolve;
54747
63950
  friend class ::CExprResolve;
54748
63951
 
 
63952
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63953
 
54749
63954
public:
54750
63955
  CT_DestructorName (CTree *, CTree *);
54751
63956
  static const char *NodeId ();
54755
63960
  void  operator delete (void *);
54756
63961
   private:
54757
63962
  typedef CT_DestructorName CCExprResolveExpr;
 
63963
 
 
63964
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54758
63965
 public :
54759
63966
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54760
63967
  typedef CT_DestructorName CExprResolveExpr;
 
63968
 
 
63969
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54761
63970
 public :
54762
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54763
 
 
 
63971
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
63972
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63973
};
 
63974
 
 
63975
 
 
63976
#line 63977 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54764
63977
} // closed Puma
54765
63978
class WinIfExists;
54766
63979
class WinImportHandler;
54781
63994
class CCExprResolve;
54782
63995
class CExprResolve;
54783
63996
namespace Puma {
54784
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
 
63997
 
 
63998
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
63999
class CT_TemplateName : public CT_SpecialName {
 
64000
#line 64001 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64001
  friend class ::WinIfExists;
54785
64002
  friend class ::WinImportHandler;
54786
64003
  friend class ::WinMacros;
54787
64004
  friend class ::CMatchSyntax;
54800
64017
  friend class ::CCExprResolve;
54801
64018
  friend class ::CExprResolve;
54802
64019
 
 
64020
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64021
 
54803
64022
public:
54804
64023
  CT_TemplateName (CTree *n, CTree *a) 
54805
64024
   { AddSon (n); AddSon (a); }
54816
64035
  void  operator delete (void *);
54817
64036
   private:
54818
64037
  typedef CT_TemplateName CCExprResolveExpr;
 
64038
 
 
64039
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54819
64040
 public :
54820
64041
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54821
64042
  typedef CT_TemplateName CExprResolveExpr;
 
64043
 
 
64044
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54822
64045
 public :
54823
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54824
 
 
 
64046
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64047
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64048
};
 
64049
 
 
64050
 
 
64051
#line 64052 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54825
64052
} // closed Puma
54826
64053
class WinIfExists;
54827
64054
class WinImportHandler;
54842
64069
class CCExprResolve;
54843
64070
class CExprResolve;
54844
64071
namespace Puma {
54845
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
 
64072
 
 
64073
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64074
class CT_OperatorName : public CT_SpecialName {
 
64075
#line 64076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64076
  friend class ::WinIfExists;
54846
64077
  friend class ::WinImportHandler;
54847
64078
  friend class ::WinMacros;
54848
64079
  friend class ::CMatchSyntax;
54861
64092
  friend class ::CCExprResolve;
54862
64093
  friend class ::CExprResolve;
54863
64094
 
 
64095
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64096
 
54864
64097
  int _oper;
54865
64098
 
54866
64099
public:
54882
64115
  void  operator delete (void *);
54883
64116
   private:
54884
64117
  typedef CT_OperatorName CCExprResolveExpr;
 
64118
 
 
64119
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54885
64120
 public :
54886
64121
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54887
64122
  typedef CT_OperatorName CExprResolveExpr;
 
64123
 
 
64124
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54888
64125
 public :
54889
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54890
 
 
 
64126
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64127
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64128
};
 
64129
 
 
64130
 
 
64131
#line 64132 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54891
64132
} // closed Puma
54892
64133
class WinIfExists;
54893
64134
class WinImportHandler;
54908
64149
class CCExprResolve;
54909
64150
class CExprResolve;
54910
64151
namespace Puma {
54911
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
 
64152
 
 
64153
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64154
class CT_ConversionName : public CT_SpecialName {
 
64155
#line 64156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64156
  friend class ::WinIfExists;
54912
64157
  friend class ::WinImportHandler;
54913
64158
  friend class ::WinMacros;
54914
64159
  friend class ::CMatchSyntax;
54927
64172
  friend class ::CCExprResolve;
54928
64173
  friend class ::CExprResolve;
54929
64174
 
 
64175
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64176
 
54930
64177
public:
54931
64178
  CT_ConversionName (CTree *, CTree *);
54932
64179
  static const char *NodeId ();
54937
64184
  void  operator delete (void *);
54938
64185
   private:
54939
64186
  typedef CT_ConversionName CCExprResolveExpr;
 
64187
 
 
64188
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
54940
64189
 public :
54941
64190
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
54942
64191
  typedef CT_ConversionName CExprResolveExpr;
 
64192
 
 
64193
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
54943
64194
 public :
54944
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
54945
 
 
 
64195
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64196
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64197
};
 
64198
 
 
64199
 
 
64200
#line 64201 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
54946
64201
} // closed Puma
54947
64202
class WinIfExists;
54948
64203
class WinImportHandler;
54963
64218
class CCExprResolve;
54964
64219
class CExprResolve;
54965
64220
namespace Puma {
54966
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
 
64221
 
 
64222
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64223
class CT_QualName : public CT_SimpleName {
 
64224
#line 64225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64225
  friend class ::WinIfExists;
54967
64226
  friend class ::WinImportHandler;
54968
64227
  friend class ::WinMacros;
54969
64228
  friend class ::CMatchSyntax;
54982
64241
  friend class ::CCExprResolve;
54983
64242
  friend class ::CExprResolve;
54984
64243
 
 
64244
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64245
 
54985
64246
public:
54986
64247
  CT_QualName (int size = 3) : 
54987
64248
    CT_SimpleName (size, CT_List::SEPARATORS) {}
54999
64260
  void  operator delete (void *);
55000
64261
   private:
55001
64262
  typedef CT_QualName CCExprResolveExpr;
 
64263
 
 
64264
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55002
64265
 public :
55003
64266
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55004
64267
  typedef CT_QualName CExprResolveExpr;
 
64268
 
 
64269
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55005
64270
 public :
55006
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55007
 
 
 
64271
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64272
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64273
};
 
64274
 
 
64275
 
 
64276
#line 64277 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55008
64277
} // closed Puma
55009
64278
class WinIfExists;
55010
64279
class WinImportHandler;
55025
64294
class CCExprResolve;
55026
64295
class CExprResolve;
55027
64296
namespace Puma {
55028
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
 
64297
 
 
64298
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64299
class CT_RootQualName : public CT_QualName {
 
64300
#line 64301 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64301
  friend class ::WinIfExists;
55029
64302
  friend class ::WinImportHandler;
55030
64303
  friend class ::WinMacros;
55031
64304
  friend class ::CMatchSyntax;
55044
64317
  friend class ::CCExprResolve;
55045
64318
  friend class ::CExprResolve;
55046
64319
 
 
64320
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64321
 
55047
64322
public:
55048
64323
  CT_RootQualName (int size = 2) : 
55049
64324
    CT_QualName (size) { AddProperties (INTRO); }
55054
64329
  void  operator delete (void *);
55055
64330
   private:
55056
64331
  typedef CT_RootQualName CCExprResolveExpr;
 
64332
 
 
64333
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55057
64334
 public :
55058
64335
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55059
64336
  typedef CT_RootQualName CExprResolveExpr;
 
64337
 
 
64338
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55060
64339
 public :
55061
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55062
 
 
 
64340
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64341
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64342
};
 
64343
 
 
64344
 
 
64345
#line 64346 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55063
64346
} // closed Puma
55064
64347
class WinIfExists;
55065
64348
class WinImportHandler;
55080
64363
class CCExprResolve;
55081
64364
class CExprResolve;
55082
64365
namespace Puma {
55083
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
64366
 
 
64367
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64368
class CT_BinaryExpr : public CT_Expression {
 
64369
#line 64370 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64370
  friend class ::WinIfExists;
55084
64371
  friend class ::WinImportHandler;
55085
64372
  friend class ::WinMacros;
55086
64373
  friend class ::CMatchSyntax;
55099
64386
  friend class ::CCExprResolve;
55100
64387
  friend class ::CExprResolve;
55101
64388
 
 
64389
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64390
 
55102
64391
  CTree *sons[3]; // expr, oper, expr
55103
64392
 
55104
64393
public:
55114
64403
  }
55115
64404
   private:
55116
64405
  typedef CT_BinaryExpr CCExprResolveExpr;
 
64406
 
 
64407
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55117
64408
 public :
55118
64409
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55119
64410
  typedef CT_BinaryExpr CExprResolveExpr;
 
64411
 
 
64412
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55120
64413
 public :
55121
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55122
 
 
 
64414
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64415
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64416
};
 
64417
 
 
64418
 
 
64419
#line 64420 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55123
64420
} // closed Puma
55124
64421
class WinIfExists;
55125
64422
class WinImportHandler;
55140
64437
class CCExprResolve;
55141
64438
class CExprResolve;
55142
64439
namespace Puma {
55143
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
 
64440
 
 
64441
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64442
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
64443
#line 64444 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64444
  friend class ::WinIfExists;
55144
64445
  friend class ::WinImportHandler;
55145
64446
  friend class ::WinMacros;
55146
64447
  friend class ::CMatchSyntax;
55159
64460
  friend class ::CCExprResolve;
55160
64461
  friend class ::CExprResolve;
55161
64462
 
 
64463
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64464
 
55162
64465
public:
55163
64466
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
55164
64467
    CT_BinaryExpr (e, o, i) {}
55167
64470
  CSemObject *SemObject () const { return (CSemObject*)this; }
55168
64471
   private:
55169
64472
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
64473
 
 
64474
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55170
64475
 public :
55171
64476
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55172
64477
  typedef CT_MembPtrExpr CExprResolveExpr;
 
64478
 
 
64479
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55173
64480
 public :
55174
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55175
 
 
 
64481
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64482
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64483
};
 
64484
 
 
64485
 
 
64486
#line 64487 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55176
64487
} // closed Puma
55177
64488
class WinIfExists;
55178
64489
class WinImportHandler;
55193
64504
class CCExprResolve;
55194
64505
class CExprResolve;
55195
64506
namespace Puma {
55196
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
 
64507
 
 
64508
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64509
class CT_MembRefExpr : public CT_MembPtrExpr {
 
64510
#line 64511 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64511
  friend class ::WinIfExists;
55197
64512
  friend class ::WinImportHandler;
55198
64513
  friend class ::WinMacros;
55199
64514
  friend class ::CMatchSyntax;
55212
64527
  friend class ::CCExprResolve;
55213
64528
  friend class ::CExprResolve;
55214
64529
 
 
64530
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64531
 
55215
64532
public:
55216
64533
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
55217
64534
    CT_MembPtrExpr (e, o, i) {}
55219
64536
  const char *NodeName () const { return NodeId (); }
55220
64537
   private:
55221
64538
  typedef CT_MembRefExpr CCExprResolveExpr;
 
64539
 
 
64540
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55222
64541
 public :
55223
64542
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55224
64543
  typedef CT_MembRefExpr CExprResolveExpr;
 
64544
 
 
64545
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55225
64546
 public :
55226
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55227
 
 
 
64547
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64548
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64549
};
 
64550
 
 
64551
 
 
64552
#line 64553 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55228
64553
} // closed Puma
55229
64554
class WinIfExists;
55230
64555
class WinImportHandler;
55245
64570
class CCExprResolve;
55246
64571
class CExprResolve;
55247
64572
namespace Puma {
55248
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
64573
 
 
64574
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64575
class CT_UnaryExpr : public CT_Expression {
 
64576
#line 64577 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64577
  friend class ::WinIfExists;
55249
64578
  friend class ::WinImportHandler;
55250
64579
  friend class ::WinMacros;
55251
64580
  friend class ::CMatchSyntax;
55264
64593
  friend class ::CCExprResolve;
55265
64594
  friend class ::CExprResolve;
55266
64595
 
 
64596
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64597
 
55267
64598
  CTree *sons[2]; // oper, expr
55268
64599
 
55269
64600
public:
55278
64609
  CTree *Expr () const { return sons[1]; }
55279
64610
   private:
55280
64611
  typedef CT_UnaryExpr CCExprResolveExpr;
 
64612
 
 
64613
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55281
64614
 public :
55282
64615
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55283
64616
  typedef CT_UnaryExpr CExprResolveExpr;
 
64617
 
 
64618
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55284
64619
 public :
55285
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55286
 
 
 
64620
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64621
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64622
};
 
64623
 
 
64624
 
 
64625
#line 64626 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55287
64626
} // closed Puma
55288
64627
class WinIfExists;
55289
64628
class WinImportHandler;
55304
64643
class CCExprResolve;
55305
64644
class CExprResolve;
55306
64645
namespace Puma {
55307
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
64646
 
 
64647
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64648
class CT_PostfixExpr : public CT_UnaryExpr {
 
64649
#line 64650 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64650
  friend class ::WinIfExists;
55308
64651
  friend class ::WinImportHandler;
55309
64652
  friend class ::WinMacros;
55310
64653
  friend class ::CMatchSyntax;
55323
64666
  friend class ::CCExprResolve;
55324
64667
  friend class ::CExprResolve;
55325
64668
 
 
64669
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64670
 
55326
64671
public:
55327
64672
  CT_PostfixExpr (CTree *e, CTree *o) :
55328
64673
    CT_UnaryExpr (e, o) {}
55330
64675
  const char *NodeName () const { return NodeId (); }
55331
64676
   private:
55332
64677
  typedef CT_PostfixExpr CCExprResolveExpr;
 
64678
 
 
64679
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55333
64680
 public :
55334
64681
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55335
64682
  typedef CT_PostfixExpr CExprResolveExpr;
 
64683
 
 
64684
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55336
64685
 public :
55337
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55338
 
 
 
64686
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64687
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64688
};
 
64689
 
 
64690
 
 
64691
#line 64692 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55339
64692
} // closed Puma
55340
64693
class WinIfExists;
55341
64694
class WinImportHandler;
55356
64709
class CCExprResolve;
55357
64710
class CExprResolve;
55358
64711
namespace Puma {
55359
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
64712
 
 
64713
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64714
class CT_AddrExpr : public CT_UnaryExpr {
 
64715
#line 64716 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64716
  friend class ::WinIfExists;
55360
64717
  friend class ::WinImportHandler;
55361
64718
  friend class ::WinMacros;
55362
64719
  friend class ::CMatchSyntax;
55375
64732
  friend class ::CCExprResolve;
55376
64733
  friend class ::CExprResolve;
55377
64734
 
 
64735
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64736
 
55378
64737
public:
55379
64738
  CT_AddrExpr (CTree *o, CTree *e) :
55380
64739
    CT_UnaryExpr (o, e) {}
55382
64741
  const char *NodeName () const { return NodeId (); }
55383
64742
   private:
55384
64743
  typedef CT_AddrExpr CCExprResolveExpr;
 
64744
 
 
64745
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55385
64746
 public :
55386
64747
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55387
64748
  typedef CT_AddrExpr CExprResolveExpr;
 
64749
 
 
64750
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55388
64751
 public :
55389
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55390
 
 
 
64752
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64753
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64754
};
 
64755
 
 
64756
 
 
64757
#line 64758 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55391
64758
} // closed Puma
55392
64759
class WinIfExists;
55393
64760
class WinImportHandler;
55408
64775
class CCExprResolve;
55409
64776
class CExprResolve;
55410
64777
namespace Puma {
55411
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
64778
 
 
64779
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64780
class CT_DerefExpr : public CT_UnaryExpr {
 
64781
#line 64782 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64782
  friend class ::WinIfExists;
55412
64783
  friend class ::WinImportHandler;
55413
64784
  friend class ::WinMacros;
55414
64785
  friend class ::CMatchSyntax;
55427
64798
  friend class ::CCExprResolve;
55428
64799
  friend class ::CExprResolve;
55429
64800
 
 
64801
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64802
 
55430
64803
public:
55431
64804
  CT_DerefExpr (CTree *o, CTree *e) :
55432
64805
    CT_UnaryExpr (o, e) {}
55434
64807
  const char *NodeName () const { return NodeId (); }
55435
64808
   private:
55436
64809
  typedef CT_DerefExpr CCExprResolveExpr;
 
64810
 
 
64811
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55437
64812
 public :
55438
64813
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55439
64814
  typedef CT_DerefExpr CExprResolveExpr;
 
64815
 
 
64816
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55440
64817
 public :
55441
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55442
 
 
 
64818
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64819
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64820
};
 
64821
 
 
64822
 
 
64823
#line 64824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55443
64824
} // closed Puma
55444
64825
class WinIfExists;
55445
64826
class WinImportHandler;
55460
64841
class CCExprResolve;
55461
64842
class CExprResolve;
55462
64843
namespace Puma {
55463
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
64844
 
 
64845
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64846
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
64847
#line 64848 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64848
  friend class ::WinIfExists;
55464
64849
  friend class ::WinImportHandler;
55465
64850
  friend class ::WinMacros;
55466
64851
  friend class ::CMatchSyntax;
55479
64864
  friend class ::CCExprResolve;
55480
64865
  friend class ::CExprResolve;
55481
64866
 
 
64867
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64868
 
55482
64869
  CTree *sons[2]; // oper, expr
55483
64870
 
55484
64871
public:
55495
64882
  CSemObject *SemObject () const { return (CSemObject*)this; }
55496
64883
   private:
55497
64884
  typedef CT_DeleteExpr CCExprResolveExpr;
 
64885
 
 
64886
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55498
64887
 public :
55499
64888
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55500
64889
  typedef CT_DeleteExpr CExprResolveExpr;
 
64890
 
 
64891
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55501
64892
 public :
55502
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55503
 
 
 
64893
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64894
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64895
};
 
64896
 
 
64897
 
 
64898
#line 64899 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55504
64899
} // closed Puma
55505
64900
class WinIfExists;
55506
64901
class WinImportHandler;
55521
64916
class CCExprResolve;
55522
64917
class CExprResolve;
55523
64918
namespace Puma {
55524
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
64919
 
 
64920
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64921
class CT_NewExpr : public CT_Expression, public CSemObject {
 
64922
#line 64923 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
64923
  friend class ::WinIfExists;
55525
64924
  friend class ::WinImportHandler;
55526
64925
  friend class ::WinMacros;
55527
64926
  friend class ::CMatchSyntax;
55540
64939
  friend class ::CCExprResolve;
55541
64940
  friend class ::CExprResolve;
55542
64941
 
 
64942
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64943
 
55543
64944
  CTree *sons[6]; // oper, placement, open, type, close, init
55544
64945
 
55545
64946
public:
55560
64961
  CSemObject *SemObject () const { return (CSemObject*)this; }
55561
64962
   private:
55562
64963
  typedef CT_NewExpr CCExprResolveExpr;
 
64964
 
 
64965
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55563
64966
 public :
55564
64967
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55565
64968
  typedef CT_NewExpr CExprResolveExpr;
 
64969
 
 
64970
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55566
64971
 public :
55567
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55568
 
 
 
64972
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
64973
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
64974
};
 
64975
 
 
64976
 
 
64977
#line 64978 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55569
64978
} // closed Puma
55570
64979
class WinIfExists;
55571
64980
class WinImportHandler;
55586
64995
class CCExprResolve;
55587
64996
class CExprResolve;
55588
64997
namespace Puma {
55589
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
 
64998
 
 
64999
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65000
class CT_IfThenExpr : public CT_Expression {
 
65001
#line 65002 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65002
  friend class ::WinIfExists;
55590
65003
  friend class ::WinImportHandler;
55591
65004
  friend class ::WinMacros;
55592
65005
  friend class ::CMatchSyntax;
55605
65018
  friend class ::CCExprResolve;
55606
65019
  friend class ::CExprResolve;
55607
65020
 
 
65021
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65022
 
55608
65023
  CTree *sons[5]; // cond, oper, left, colon, right
55609
65024
 
55610
65025
public:
55626
65041
  }
55627
65042
   private:
55628
65043
  typedef CT_IfThenExpr CCExprResolveExpr;
 
65044
 
 
65045
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55629
65046
 public :
55630
65047
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55631
65048
  typedef CT_IfThenExpr CExprResolveExpr;
 
65049
 
 
65050
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55632
65051
 public :
55633
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55634
 
 
 
65052
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65053
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65054
};
 
65055
 
 
65056
 
 
65057
#line 65058 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55635
65058
} // closed Puma
55636
65059
class WinIfExists;
55637
65060
class WinImportHandler;
55652
65075
class CCExprResolve;
55653
65076
class CExprResolve;
55654
65077
namespace Puma {
55655
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
65078
 
 
65079
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65080
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
65081
#line 65082 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65082
  friend class ::WinIfExists;
55656
65083
  friend class ::WinImportHandler;
55657
65084
  friend class ::WinMacros;
55658
65085
  friend class ::CMatchSyntax;
55671
65098
  friend class ::CCExprResolve;
55672
65099
  friend class ::CExprResolve;
55673
65100
 
 
65101
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65102
 
55674
65103
  CTree *sons[4]; // open, type, close, init
55675
65104
 
55676
65105
public:
55689
65118
  CSemObject *SemObject () const { return (CSemObject*)this; }
55690
65119
   private:
55691
65120
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
65121
 
 
65122
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55692
65123
 public :
55693
65124
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55694
65125
  typedef CT_CmpdLiteral CExprResolveExpr;
 
65126
 
 
65127
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55695
65128
 public :
55696
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55697
 
 
 
65129
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65130
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65131
};
 
65132
 
 
65133
 
 
65134
#line 65135 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55698
65135
} // closed Puma
55699
65136
class WinIfExists;
55700
65137
class WinImportHandler;
55715
65152
class CCExprResolve;
55716
65153
class CExprResolve;
55717
65154
namespace Puma {
55718
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
65155
 
 
65156
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65157
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
65158
#line 65159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65159
  friend class ::WinIfExists;
55719
65160
  friend class ::WinImportHandler;
55720
65161
  friend class ::WinMacros;
55721
65162
  friend class ::CMatchSyntax;
55734
65175
  friend class ::CCExprResolve;
55735
65176
  friend class ::CExprResolve;
55736
65177
 
 
65178
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65179
 
55737
65180
  CTree *sons[2]; // type, init
55738
65181
 
55739
65182
public:
55750
65193
  CSemObject *SemObject () const { return (CSemObject*)this; }
55751
65194
   private:
55752
65195
  typedef CT_ConstructExpr CCExprResolveExpr;
 
65196
 
 
65197
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55753
65198
 public :
55754
65199
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55755
65200
  typedef CT_ConstructExpr CExprResolveExpr;
 
65201
 
 
65202
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55756
65203
 public :
55757
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55758
 
 
 
65204
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65205
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65206
};
 
65207
 
 
65208
 
 
65209
#line 65210 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55759
65210
} // closed Puma
55760
65211
class WinIfExists;
55761
65212
class WinImportHandler;
55776
65227
class CCExprResolve;
55777
65228
class CExprResolve;
55778
65229
namespace Puma {
55779
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
 
65230
 
 
65231
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65232
class CT_ThrowExpr : public CT_Expression {
 
65233
#line 65234 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65234
  friend class ::WinIfExists;
55780
65235
  friend class ::WinImportHandler;
55781
65236
  friend class ::WinMacros;
55782
65237
  friend class ::CMatchSyntax;
55795
65250
  friend class ::CCExprResolve;
55796
65251
  friend class ::CExprResolve;
55797
65252
 
 
65253
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65254
 
55798
65255
  CTree *sons[2]; // throw, expr
55799
65256
 
55800
65257
public:
55809
65266
  CTree *Expr () const { return sons[1]; }
55810
65267
   private:
55811
65268
  typedef CT_ThrowExpr CCExprResolveExpr;
 
65269
 
 
65270
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55812
65271
 public :
55813
65272
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55814
65273
  typedef CT_ThrowExpr CExprResolveExpr;
 
65274
 
 
65275
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55815
65276
 public :
55816
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55817
 
 
 
65277
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65278
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65279
};
 
65280
 
 
65281
 
 
65282
#line 65283 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55818
65283
} // closed Puma
55819
65284
class WinIfExists;
55820
65285
class WinImportHandler;
55835
65300
class CCExprResolve;
55836
65301
class CExprResolve;
55837
65302
namespace Puma {
55838
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
 
65303
 
 
65304
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65305
class CT_IndexExpr : public CT_Expression {
 
65306
#line 65307 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65307
  friend class ::WinIfExists;
55839
65308
  friend class ::WinImportHandler;
55840
65309
  friend class ::WinMacros;
55841
65310
  friend class ::CMatchSyntax;
55854
65323
  friend class ::CCExprResolve;
55855
65324
  friend class ::CExprResolve;
55856
65325
 
 
65326
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65327
 
55857
65328
  CTree *sons[4]; // expr, open, index, close
55858
65329
 
55859
65330
public:
55869
65340
  }
55870
65341
   private:
55871
65342
  typedef CT_IndexExpr CCExprResolveExpr;
 
65343
 
 
65344
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55872
65345
 public :
55873
65346
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55874
65347
  typedef CT_IndexExpr CExprResolveExpr;
 
65348
 
 
65349
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55875
65350
 public :
55876
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55877
 
 
 
65351
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65352
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65353
};
 
65354
 
 
65355
 
 
65356
#line 65357 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55878
65357
} // closed Puma
55879
65358
class WinIfExists;
55880
65359
class WinImportHandler;
55895
65374
class CCExprResolve;
55896
65375
class CExprResolve;
55897
65376
namespace Puma {
55898
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
65377
 
 
65378
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65379
class CT_CallExpr : public CT_Expression, public CSemObject {
 
65380
#line 65381 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65381
  friend class ::WinIfExists;
55899
65382
  friend class ::WinImportHandler;
55900
65383
  friend class ::WinMacros;
55901
65384
  friend class ::CMatchSyntax;
55914
65397
  friend class ::CCExprResolve;
55915
65398
  friend class ::CExprResolve;
55916
65399
 
 
65400
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65401
 
55917
65402
  CTree *sons[2]; // expr, args
55918
65403
 
55919
65404
public:
55931
65416
  CSemObject *SemObject () const { return (CSemObject*)this; }
55932
65417
   private:
55933
65418
  typedef CT_CallExpr CCExprResolveExpr;
 
65419
 
 
65420
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55934
65421
 public :
55935
65422
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55936
65423
  typedef CT_CallExpr CExprResolveExpr;
 
65424
 
 
65425
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55937
65426
 public :
55938
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
55939
 
 
 
65427
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65428
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65429
};
 
65430
 
 
65431
 
 
65432
#line 65433 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
55940
65433
} // closed Puma
55941
65434
class WinIfExists;
55942
65435
class WinImportHandler;
55957
65450
class CCExprResolve;
55958
65451
class CExprResolve;
55959
65452
namespace Puma {
55960
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
 
65453
 
 
65454
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65455
class CT_CastExpr : public CT_Expression {
 
65456
#line 65457 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65457
  friend class ::WinIfExists;
55961
65458
  friend class ::WinImportHandler;
55962
65459
  friend class ::WinMacros;
55963
65460
  friend class ::CMatchSyntax;
55976
65473
  friend class ::CCExprResolve;
55977
65474
  friend class ::CExprResolve;
55978
65475
 
 
65476
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65477
 
55979
65478
  CTree *sons[4]; // open, type, close, expr
55980
65479
 
55981
65480
public:
55993
65492
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
55994
65493
   private:
55995
65494
  typedef CT_CastExpr CCExprResolveExpr;
 
65495
 
 
65496
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
55996
65497
 public :
55997
65498
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
55998
65499
  typedef CT_CastExpr CExprResolveExpr;
 
65500
 
 
65501
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
55999
65502
 public :
56000
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56001
 
 
 
65503
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65504
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65505
};
 
65506
 
 
65507
 
 
65508
#line 65509 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56002
65509
} // closed Puma
56003
65510
class WinIfExists;
56004
65511
class WinImportHandler;
56019
65526
class CCExprResolve;
56020
65527
class CExprResolve;
56021
65528
namespace Puma {
56022
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
 
65529
 
 
65530
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65531
class CT_StaticCast : public CT_Expression {
 
65532
#line 65533 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65533
  friend class ::WinIfExists;
56023
65534
  friend class ::WinImportHandler;
56024
65535
  friend class ::WinMacros;
56025
65536
  friend class ::CMatchSyntax;
56038
65549
  friend class ::CCExprResolve;
56039
65550
  friend class ::CExprResolve;
56040
65551
 
 
65552
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65553
 
56041
65554
  CTree *sons[5]; // cast, open, type, close, expr
56042
65555
 
56043
65556
public:
56055
65568
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
56056
65569
   private:
56057
65570
  typedef CT_StaticCast CCExprResolveExpr;
 
65571
 
 
65572
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56058
65573
 public :
56059
65574
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56060
65575
  typedef CT_StaticCast CExprResolveExpr;
 
65576
 
 
65577
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56061
65578
 public :
56062
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56063
 
 
 
65579
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65580
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65581
};
 
65582
 
 
65583
 
 
65584
#line 65585 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56064
65585
} // closed Puma
56065
65586
class WinIfExists;
56066
65587
class WinImportHandler;
56081
65602
class CCExprResolve;
56082
65603
class CExprResolve;
56083
65604
namespace Puma {
56084
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
 
65605
 
 
65606
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65607
class CT_ConstCast : public CT_StaticCast {
 
65608
#line 65609 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65609
  friend class ::WinIfExists;
56085
65610
  friend class ::WinImportHandler;
56086
65611
  friend class ::WinMacros;
56087
65612
  friend class ::CMatchSyntax;
56100
65625
  friend class ::CCExprResolve;
56101
65626
  friend class ::CExprResolve;
56102
65627
 
 
65628
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65629
 
56103
65630
public:
56104
65631
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
56105
65632
    CT_StaticCast (cst, o, t, c, e) {}
56107
65634
  const char *NodeName () const { return NodeId (); }
56108
65635
   private:
56109
65636
  typedef CT_ConstCast CCExprResolveExpr;
 
65637
 
 
65638
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56110
65639
 public :
56111
65640
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56112
65641
  typedef CT_ConstCast CExprResolveExpr;
 
65642
 
 
65643
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56113
65644
 public :
56114
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56115
 
 
 
65645
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65646
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65647
};
 
65648
 
 
65649
 
 
65650
#line 65651 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56116
65651
} // closed Puma
56117
65652
class WinIfExists;
56118
65653
class WinImportHandler;
56133
65668
class CCExprResolve;
56134
65669
class CExprResolve;
56135
65670
namespace Puma {
56136
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
 
65671
 
 
65672
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65673
class CT_ReintCast : public CT_StaticCast {
 
65674
#line 65675 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65675
  friend class ::WinIfExists;
56137
65676
  friend class ::WinImportHandler;
56138
65677
  friend class ::WinMacros;
56139
65678
  friend class ::CMatchSyntax;
56152
65691
  friend class ::CCExprResolve;
56153
65692
  friend class ::CExprResolve;
56154
65693
 
 
65694
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65695
 
56155
65696
public:
56156
65697
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
56157
65698
    CT_StaticCast (cst, o, t, c, e) {}
56159
65700
  const char *NodeName () const { return NodeId (); }
56160
65701
   private:
56161
65702
  typedef CT_ReintCast CCExprResolveExpr;
 
65703
 
 
65704
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56162
65705
 public :
56163
65706
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56164
65707
  typedef CT_ReintCast CExprResolveExpr;
 
65708
 
 
65709
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56165
65710
 public :
56166
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56167
 
 
 
65711
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65712
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65713
};
 
65714
 
 
65715
 
 
65716
#line 65717 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56168
65717
} // closed Puma
56169
65718
class WinIfExists;
56170
65719
class WinImportHandler;
56185
65734
class CCExprResolve;
56186
65735
class CExprResolve;
56187
65736
namespace Puma {
56188
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
 
65737
 
 
65738
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65739
class CT_DynamicCast : public CT_StaticCast {
 
65740
#line 65741 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65741
  friend class ::WinIfExists;
56189
65742
  friend class ::WinImportHandler;
56190
65743
  friend class ::WinMacros;
56191
65744
  friend class ::CMatchSyntax;
56204
65757
  friend class ::CCExprResolve;
56205
65758
  friend class ::CExprResolve;
56206
65759
 
 
65760
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65761
 
56207
65762
public:
56208
65763
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
56209
65764
    CT_StaticCast (cst, o, t, c, e) {}
56211
65766
  const char *NodeName () const { return NodeId (); }
56212
65767
   private:
56213
65768
  typedef CT_DynamicCast CCExprResolveExpr;
 
65769
 
 
65770
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56214
65771
 public :
56215
65772
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56216
65773
  typedef CT_DynamicCast CExprResolveExpr;
 
65774
 
 
65775
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56217
65776
 public :
56218
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56219
 
 
 
65777
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65778
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65779
};
 
65780
 
 
65781
 
 
65782
#line 65783 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56220
65783
} // closed Puma
56221
65784
class WinIfExists;
56222
65785
class WinImportHandler;
56237
65800
class CCExprResolve;
56238
65801
class CExprResolve;
56239
65802
namespace Puma {
56240
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
 
65803
 
 
65804
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65805
class CT_ImplicitCast : public CT_Expression {
 
65806
#line 65807 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65807
  friend class ::WinIfExists;
56241
65808
  friend class ::WinImportHandler;
56242
65809
  friend class ::WinMacros;
56243
65810
  friend class ::CMatchSyntax;
56256
65823
  friend class ::CCExprResolve;
56257
65824
  friend class ::CExprResolve;
56258
65825
 
 
65826
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65827
 
56259
65828
  CTree *_expr; // casted expression
56260
65829
 
56261
65830
public:
56269
65838
   { if (old_son == _expr) _expr = new_son; }
56270
65839
   private:
56271
65840
  typedef CT_ImplicitCast CCExprResolveExpr;
 
65841
 
 
65842
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56272
65843
 public :
56273
65844
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56274
65845
  typedef CT_ImplicitCast CExprResolveExpr;
 
65846
 
 
65847
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56275
65848
 public :
56276
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56277
 
 
 
65849
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65850
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65851
};
 
65852
 
 
65853
 
 
65854
#line 65855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56278
65855
} // closed Puma
56279
65856
class WinIfExists;
56280
65857
class WinImportHandler;
56295
65872
class CCExprResolve;
56296
65873
class CExprResolve;
56297
65874
namespace Puma {
56298
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
 
65875
 
 
65876
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65877
class CT_TypeidExpr : public CT_Expression {
 
65878
#line 65879 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65879
  friend class ::WinIfExists;
56299
65880
  friend class ::WinImportHandler;
56300
65881
  friend class ::WinMacros;
56301
65882
  friend class ::CMatchSyntax;
56314
65895
  friend class ::CCExprResolve;
56315
65896
  friend class ::CExprResolve;
56316
65897
 
 
65898
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65899
 
56317
65900
  CTree *sons[4]; // typeid, open, type_id/expr, close
56318
65901
 
56319
65902
public:
56330
65913
  CTree *Arg () const { return sons[2]; }
56331
65914
   private:
56332
65915
  typedef CT_TypeidExpr CCExprResolveExpr;
 
65916
 
 
65917
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56333
65918
 public :
56334
65919
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56335
65920
  typedef CT_TypeidExpr CExprResolveExpr;
 
65921
 
 
65922
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56336
65923
 public :
56337
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56338
 
 
 
65924
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
65925
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65926
};
 
65927
 
 
65928
 
 
65929
#line 65930 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56339
65930
} // closed Puma
56340
65931
class WinIfExists;
56341
65932
class WinImportHandler;
56356
65947
class CCExprResolve;
56357
65948
class CExprResolve;
56358
65949
namespace Puma {
56359
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
 
65950
 
 
65951
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65952
class CT_SizeofExpr : public CT_Expression {
 
65953
#line 65954 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
65954
  friend class ::WinIfExists;
56360
65955
  friend class ::WinImportHandler;
56361
65956
  friend class ::WinMacros;
56362
65957
  friend class ::CMatchSyntax;
56375
65970
  friend class ::CCExprResolve;
56376
65971
  friend class ::CExprResolve;
56377
65972
 
 
65973
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
65974
 
56378
65975
  CTree *sons[5]; // key, open, type, close, expr
56379
65976
 
56380
65977
public:
56395
65992
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
56396
65993
   private:
56397
65994
  typedef CT_SizeofExpr CCExprResolveExpr;
 
65995
 
 
65996
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56398
65997
 public :
56399
65998
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56400
65999
  typedef CT_SizeofExpr CExprResolveExpr;
 
66000
 
 
66001
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56401
66002
 public :
56402
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56403
 
 
 
66003
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
66004
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66005
};
 
66006
 
 
66007
 
 
66008
#line 66009 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56404
66009
} // closed Puma
56405
66010
class WinIfExists;
56406
66011
class WinImportHandler;
56421
66026
class CCExprResolve;
56422
66027
class CExprResolve;
56423
66028
namespace Puma {
56424
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
 
66029
 
 
66030
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66031
class CT_IndexDesignator : public CT_Expression {
 
66032
#line 66033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66033
  friend class ::WinIfExists;
56425
66034
  friend class ::WinImportHandler;
56426
66035
  friend class ::WinMacros;
56427
66036
  friend class ::CMatchSyntax;
56440
66049
  friend class ::CCExprResolve;
56441
66050
  friend class ::CExprResolve;
56442
66051
 
 
66052
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66053
 
56443
66054
  CTree *sons[3]; // open, index, close
56444
66055
 
56445
66056
public:
56455
66066
  }
56456
66067
   private:
56457
66068
  typedef CT_IndexDesignator CCExprResolveExpr;
 
66069
 
 
66070
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56458
66071
 public :
56459
66072
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56460
66073
  typedef CT_IndexDesignator CExprResolveExpr;
 
66074
 
 
66075
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56461
66076
 public :
56462
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56463
 
 
 
66077
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
66078
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66079
};
 
66080
 
 
66081
 
 
66082
#line 66083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56464
66083
} // closed Puma
56465
66084
class WinIfExists;
56466
66085
class WinImportHandler;
56481
66100
class CCExprResolve;
56482
66101
class CExprResolve;
56483
66102
namespace Puma {
56484
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
 
66103
 
 
66104
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66105
class CT_MembDesignator : public CT_Expression {
 
66106
#line 66107 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66107
  friend class ::WinIfExists;
56485
66108
  friend class ::WinImportHandler;
56486
66109
  friend class ::WinMacros;
56487
66110
  friend class ::CMatchSyntax;
56500
66123
  friend class ::CCExprResolve;
56501
66124
  friend class ::CExprResolve;
56502
66125
 
 
66126
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66127
 
56503
66128
  CTree *sons[2]; // dot, member
56504
66129
 
56505
66130
public:
56513
66138
  }
56514
66139
   private:
56515
66140
  typedef CT_MembDesignator CCExprResolveExpr;
 
66141
 
 
66142
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
56516
66143
 public :
56517
66144
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
56518
66145
  typedef CT_MembDesignator CExprResolveExpr;
 
66146
 
 
66147
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
56519
66148
 public :
56520
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
56521
 
 
 
66149
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
66150
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66151
};
 
66152
 
 
66153
 
 
66154
#line 66155 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56522
66155
} // closed Puma
56523
66156
class WinIfExists;
56524
66157
class WinImportHandler;
56539
66172
class CCExprResolve;
56540
66173
class CExprResolve;
56541
66174
namespace Puma {
56542
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
66175
 
 
66176
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66177
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
66178
#line 66179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66179
  friend class ::WinIfExists;
56543
66180
  friend class ::WinImportHandler;
56544
66181
  friend class ::WinMacros;
56545
66182
  friend class ::CMatchSyntax;
56558
66195
  friend class ::CCExprResolve;
56559
66196
  friend class ::CExprResolve;
56560
66197
 
 
66198
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66199
 
56561
66200
public:
56562
66201
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
56563
66202
  static const char *NodeId ();
56574
66213
/*                                                                           */
56575
66214
/*****************************************************************************/
56576
66215
 
 
66216
 
 
66217
#line 66218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56577
66218
} // closed Puma
56578
66219
class WinIfExists;
56579
66220
class WinImportHandler;
56594
66235
class CCExprResolve;
56595
66236
class CExprResolve;
56596
66237
namespace Puma {
56597
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
 
66238
 
 
66239
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66240
class CT_DeclSpec : public CTree {
 
66241
#line 66242 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66242
  friend class ::WinIfExists;
56598
66243
  friend class ::WinImportHandler;
56599
66244
  friend class ::WinMacros;
56600
66245
  friend class ::CMatchSyntax;
56613
66258
  friend class ::CCExprResolve;
56614
66259
  friend class ::CExprResolve;
56615
66260
 
 
66261
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66262
 
56616
66263
protected:
56617
66264
  CT_DeclSpec () {}
56618
66265
};
56619
66266
 
 
66267
 
 
66268
#line 66269 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56620
66269
} // closed Puma
56621
66270
class WinIfExists;
56622
66271
class WinImportHandler;
56637
66286
class CCExprResolve;
56638
66287
class CExprResolve;
56639
66288
namespace Puma {
56640
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
66289
 
 
66290
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66291
class CT_PrimDeclSpec : public CT_DeclSpec {
 
66292
#line 66293 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66293
  friend class ::WinIfExists;
56641
66294
  friend class ::WinImportHandler;
56642
66295
  friend class ::WinMacros;
56643
66296
  friend class ::CMatchSyntax;
56656
66309
  friend class ::CCExprResolve;
56657
66310
  friend class ::CExprResolve;
56658
66311
 
 
66312
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66313
 
56659
66314
public:
56660
66315
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
56661
66316
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
56688
66343
  static const int NumTypes = PDS_NUM;
56689
66344
};
56690
66345
 
 
66346
 
 
66347
#line 66348 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56691
66348
} // closed Puma
56692
66349
class WinIfExists;
56693
66350
class WinImportHandler;
56708
66365
class CCExprResolve;
56709
66366
class CExprResolve;
56710
66367
namespace Puma {
56711
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
66368
 
 
66369
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66370
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
66371
#line 66372 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66372
  friend class ::WinIfExists;
56712
66373
  friend class ::WinImportHandler;
56713
66374
  friend class ::WinMacros;
56714
66375
  friend class ::CMatchSyntax;
56727
66388
  friend class ::CCExprResolve;
56728
66389
  friend class ::CExprResolve;
56729
66390
 
 
66391
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66392
 
56730
66393
  CTree *sons[2]; // declspecs, declarator
56731
66394
 
56732
66395
public:
56742
66405
  CSemObject *SemObject () const { return (CSemObject*)this; }
56743
66406
};
56744
66407
      
 
66408
 
 
66409
#line 66410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56745
66410
} // closed Puma
56746
66411
class WinIfExists;
56747
66412
class WinImportHandler;
56762
66427
class CCExprResolve;
56763
66428
class CExprResolve;
56764
66429
namespace Puma {
56765
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
66430
 
 
66431
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66432
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
66433
#line 66434 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66434
  friend class ::WinIfExists;
56766
66435
  friend class ::WinImportHandler;
56767
66436
  friend class ::WinMacros;
56768
66437
  friend class ::CMatchSyntax;
56781
66450
  friend class ::CCExprResolve;
56782
66451
  friend class ::CExprResolve;
56783
66452
 
 
66453
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66454
 
56784
66455
  CTree *sons[2]; // key, name
56785
66456
  
56786
66457
public:
56796
66467
  }
56797
66468
};
56798
66469
 
 
66470
 
 
66471
#line 66472 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56799
66472
} // closed Puma
56800
66473
class WinIfExists;
56801
66474
class WinImportHandler;
56816
66489
class CCExprResolve;
56817
66490
class CExprResolve;
56818
66491
namespace Puma {
56819
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
66492
 
 
66493
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66494
class CT_UnionSpec : public CT_ClassSpec {
 
66495
#line 66496 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66496
  friend class ::WinIfExists;
56820
66497
  friend class ::WinImportHandler;
56821
66498
  friend class ::WinMacros;
56822
66499
  friend class ::CMatchSyntax;
56835
66512
  friend class ::CCExprResolve;
56836
66513
  friend class ::CExprResolve;
56837
66514
 
 
66515
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66516
 
56838
66517
public:
56839
66518
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
56840
66519
  static const char *NodeId ();
56841
66520
  const char *NodeName () const { return NodeId (); }
56842
66521
};
56843
66522
 
 
66523
 
 
66524
#line 66525 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56844
66525
} // closed Puma
56845
66526
class WinIfExists;
56846
66527
class WinImportHandler;
56861
66542
class CCExprResolve;
56862
66543
class CExprResolve;
56863
66544
namespace Puma {
56864
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
66545
 
 
66546
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66547
class CT_EnumSpec : public CT_ClassSpec {
 
66548
#line 66549 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66549
  friend class ::WinIfExists;
56865
66550
  friend class ::WinImportHandler;
56866
66551
  friend class ::WinMacros;
56867
66552
  friend class ::CMatchSyntax;
56880
66565
  friend class ::CCExprResolve;
56881
66566
  friend class ::CExprResolve;
56882
66567
 
 
66568
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66569
 
56883
66570
public:
56884
66571
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
56885
66572
  static const char *NodeId ();
56886
66573
  const char *NodeName () const { return NodeId (); }
56887
66574
};
56888
66575
 
 
66576
 
 
66577
#line 66578 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56889
66578
} // closed Puma
56890
66579
class WinIfExists;
56891
66580
class WinImportHandler;
56906
66595
class CCExprResolve;
56907
66596
class CExprResolve;
56908
66597
namespace Puma {
56909
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
66598
 
 
66599
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66600
class CT_ExceptionSpec : public CT_DeclSpec {
 
66601
#line 66602 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66602
  friend class ::WinIfExists;
56910
66603
  friend class ::WinImportHandler;
56911
66604
  friend class ::WinMacros;
56912
66605
  friend class ::CMatchSyntax;
56925
66618
  friend class ::CCExprResolve;
56926
66619
  friend class ::CExprResolve;
56927
66620
 
 
66621
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66622
 
56928
66623
  CTree *sons[2]; // throw, type_id_list
56929
66624
  
56930
66625
public:
56945
66640
/*                                                                           */
56946
66641
/*****************************************************************************/
56947
66642
 
 
66643
 
 
66644
#line 66645 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56948
66645
} // closed Puma
56949
66646
class WinIfExists;
56950
66647
class WinImportHandler;
56965
66662
class CCExprResolve;
56966
66663
class CExprResolve;
56967
66664
namespace Puma {
56968
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
 
66665
 
 
66666
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66667
class CT_Decl : public CTree {
 
66668
#line 66669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66669
  friend class ::WinIfExists;
56969
66670
  friend class ::WinImportHandler;
56970
66671
  friend class ::WinMacros;
56971
66672
  friend class ::CMatchSyntax;
56983
66684
  friend class ::PragmaOnce;
56984
66685
  friend class ::CCExprResolve;
56985
66686
  friend class ::CExprResolve;
 
66687
 
 
66688
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
56986
66689
 
56987
66690
  CT_LinkageSpec *_linkage;
56988
66691
protected:
56992
66695
  CT_LinkageSpec *Linkage () const { return _linkage; }
56993
66696
};
56994
66697
 
 
66698
 
 
66699
#line 66700 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
56995
66700
} // closed Puma
56996
66701
class WinIfExists;
56997
66702
class WinImportHandler;
57012
66717
class CCExprResolve;
57013
66718
class CExprResolve;
57014
66719
namespace Puma {
57015
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
66720
 
 
66721
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66722
class CT_Program : public CT_DeclList, public CSemScope {
 
66723
#line 66724 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66724
  friend class ::WinIfExists;
57016
66725
  friend class ::WinImportHandler;
57017
66726
  friend class ::WinMacros;
57018
66727
  friend class ::CMatchSyntax;
57031
66740
  friend class ::CCExprResolve;
57032
66741
  friend class ::CExprResolve;
57033
66742
 
 
66743
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66744
 
57034
66745
public:
57035
66746
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
57036
66747
  static const char *NodeId ();
57037
66748
  const char *NodeName () const { return NodeId (); }
57038
66749
};
57039
66750
   
 
66751
 
 
66752
#line 66753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57040
66753
} // closed Puma
57041
66754
class WinIfExists;
57042
66755
class WinImportHandler;
57057
66770
class CCExprResolve;
57058
66771
class CExprResolve;
57059
66772
namespace Puma {
57060
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
 
66773
 
 
66774
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66775
class CT_ObjDecl : public CT_Decl {
 
66776
#line 66777 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66777
  friend class ::WinIfExists;
57061
66778
  friend class ::WinImportHandler;
57062
66779
  friend class ::WinMacros;
57063
66780
  friend class ::CMatchSyntax;
57076
66793
  friend class ::CCExprResolve;
57077
66794
  friend class ::CExprResolve;
57078
66795
 
 
66796
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66797
 
57079
66798
  CTree *sons[3]; // declspecs, declarators, colon
57080
66799
 
57081
66800
public:
57093
66812
  }
57094
66813
};
57095
66814
 
 
66815
 
 
66816
#line 66817 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57096
66817
} // closed Puma
57097
66818
class WinIfExists;
57098
66819
class WinImportHandler;
57113
66834
class CCExprResolve;
57114
66835
class CExprResolve;
57115
66836
namespace Puma {
57116
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
66837
 
 
66838
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66839
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
66840
#line 66841 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66841
  friend class ::WinIfExists;
57117
66842
  friend class ::WinImportHandler;
57118
66843
  friend class ::WinMacros;
57119
66844
  friend class ::CMatchSyntax;
57132
66857
  friend class ::CCExprResolve;
57133
66858
  friend class ::CExprResolve;
57134
66859
 
 
66860
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66861
 
57135
66862
  CTree *sons[3]; // export, param_list, decl
57136
66863
 
57137
66864
public:
57152
66879
  CTree *Declaration () const { return sons[2]; }
57153
66880
};
57154
66881
 
 
66882
 
 
66883
#line 66884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57155
66884
} // closed Puma
57156
66885
class WinIfExists;
57157
66886
class WinImportHandler;
57172
66901
class CCExprResolve;
57173
66902
class CExprResolve;
57174
66903
namespace Puma {
57175
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
66904
 
 
66905
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66906
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
66907
#line 66908 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66908
  friend class ::WinIfExists;
57176
66909
  friend class ::WinImportHandler;
57177
66910
  friend class ::WinMacros;
57178
66911
  friend class ::CMatchSyntax;
57191
66924
  friend class ::CCExprResolve;
57192
66925
  friend class ::CExprResolve;
57193
66926
 
 
66927
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66928
 
57194
66929
protected:
57195
66930
  CT_TemplateParamDecl () {}
57196
66931
  
57199
66934
  CSemObject *SemObject () const { return (CSemObject*)this; }
57200
66935
};
57201
66936
 
 
66937
 
 
66938
#line 66939 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57202
66939
} // closed Puma
57203
66940
class WinIfExists;
57204
66941
class WinImportHandler;
57219
66956
class CCExprResolve;
57220
66957
class CExprResolve;
57221
66958
namespace Puma {
57222
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
66959
 
 
66960
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66961
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
66962
#line 66963 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
66963
  friend class ::WinIfExists;
57223
66964
  friend class ::WinImportHandler;
57224
66965
  friend class ::WinMacros;
57225
66966
  friend class ::CMatchSyntax;
57238
66979
  friend class ::CCExprResolve;
57239
66980
  friend class ::CExprResolve;
57240
66981
 
 
66982
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
66983
 
57241
66984
  CTree *sons[3]; // declspecs, declarator, init
57242
66985
 
57243
66986
public:
57258
67001
  }
57259
67002
};
57260
67003
 
 
67004
 
 
67005
#line 67006 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57261
67006
} // closed Puma
57262
67007
class WinIfExists;
57263
67008
class WinImportHandler;
57278
67023
class CCExprResolve;
57279
67024
class CExprResolve;
57280
67025
namespace Puma {
57281
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
67026
 
 
67027
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67028
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
67029
#line 67030 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67030
  friend class ::WinIfExists;
57282
67031
  friend class ::WinImportHandler;
57283
67032
  friend class ::WinMacros;
57284
67033
  friend class ::CMatchSyntax;
57297
67046
  friend class ::CCExprResolve;
57298
67047
  friend class ::CExprResolve;
57299
67048
 
 
67049
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67050
 
57300
67051
  CTree *sons[4]; // params, key, id, init
57301
67052
 
57302
67053
public:
57318
67069
  }
57319
67070
};
57320
67071
 
 
67072
 
 
67073
#line 67074 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57321
67074
} // closed Puma
57322
67075
class WinIfExists;
57323
67076
class WinImportHandler;
57338
67091
class CCExprResolve;
57339
67092
class CExprResolve;
57340
67093
namespace Puma {
57341
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
67094
 
 
67095
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67096
class CT_EnumDef : public CT_Decl, public CSemObject {
 
67097
#line 67098 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67098
  friend class ::WinIfExists;
57342
67099
  friend class ::WinImportHandler;
57343
67100
  friend class ::WinMacros;
57344
67101
  friend class ::CMatchSyntax;
57357
67114
  friend class ::CCExprResolve;
57358
67115
  friend class ::CExprResolve;
57359
67116
 
 
67117
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67118
 
57360
67119
  CTree *sons[3]; // key, name, enumerators
57361
67120
 
57362
67121
public:
57376
67135
  CSemObject *SemObject () const { return (CSemObject*)this; }
57377
67136
};
57378
67137
 
 
67138
 
 
67139
#line 67140 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57379
67140
} // closed Puma
57380
67141
class WinIfExists;
57381
67142
class WinImportHandler;
57396
67157
class CCExprResolve;
57397
67158
class CExprResolve;
57398
67159
namespace Puma {
57399
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
67160
 
 
67161
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67162
class CT_Enumerator : public CT_Decl, public CSemObject {
 
67163
#line 67164 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67164
  friend class ::WinIfExists;
57400
67165
  friend class ::WinImportHandler;
57401
67166
  friend class ::WinMacros;
57402
67167
  friend class ::CMatchSyntax;
57415
67180
  friend class ::CCExprResolve;
57416
67181
  friend class ::CExprResolve;
57417
67182
 
 
67183
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67184
 
57418
67185
  CTree *sons[2]; // name, init
57419
67186
 
57420
67187
public:
57432
67199
  CSemObject *SemObject () const { return (CSemObject*)this; }
57433
67200
};
57434
67201
 
 
67202
 
 
67203
#line 67204 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57435
67204
} // closed Puma
57436
67205
class WinIfExists;
57437
67206
class WinImportHandler;
57452
67221
class CCExprResolve;
57453
67222
class CExprResolve;
57454
67223
namespace Puma {
57455
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
67224
 
 
67225
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67226
class CT_FctDef : public CT_Decl, public CSemObject {
 
67227
#line 67228 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67228
  friend class ::WinIfExists;
57456
67229
  friend class ::WinImportHandler;
57457
67230
  friend class ::WinMacros;
57458
67231
  friend class ::CMatchSyntax;
57471
67244
  friend class ::CCExprResolve;
57472
67245
  friend class ::CExprResolve;
57473
67246
 
 
67247
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67248
 
57474
67249
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
57475
67250
 
57476
67251
public:
57501
67276
  }
57502
67277
};
57503
67278
 
 
67279
 
 
67280
#line 67281 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57504
67281
} // closed Puma
57505
67282
class WinIfExists;
57506
67283
class WinImportHandler;
57521
67298
class CCExprResolve;
57522
67299
class CExprResolve;
57523
67300
namespace Puma {
57524
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
 
67301
 
 
67302
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67303
class CT_AsmDef : public CT_Decl {
 
67304
#line 67305 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67305
  friend class ::WinIfExists;
57525
67306
  friend class ::WinImportHandler;
57526
67307
  friend class ::WinMacros;
57527
67308
  friend class ::CMatchSyntax;
57540
67321
  friend class ::CCExprResolve;
57541
67322
  friend class ::CExprResolve;
57542
67323
 
 
67324
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67325
 
57543
67326
  CTree *sons[5]; // asm, open, str, close, semi_colon
57544
67327
 
57545
67328
public:
57556
67339
  }
57557
67340
};
57558
67341
 
 
67342
 
 
67343
#line 67344 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57559
67344
} // closed Puma
57560
67345
class WinIfExists;
57561
67346
class WinImportHandler;
57576
67361
class CCExprResolve;
57577
67362
class CExprResolve;
57578
67363
namespace Puma {
57579
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
67364
 
 
67365
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67366
class CT_Handler : public CT_Decl, public CSemScope {
 
67367
#line 67368 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67368
  friend class ::WinIfExists;
57580
67369
  friend class ::WinImportHandler;
57581
67370
  friend class ::WinMacros;
57582
67371
  friend class ::CMatchSyntax;
57595
67384
  friend class ::CCExprResolve;
57596
67385
  friend class ::CExprResolve;
57597
67386
 
 
67387
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67388
 
57598
67389
  CTree *sons[3]; // catch, exception_decl, stmt
57599
67390
 
57600
67391
public:
57612
67403
  }
57613
67404
};
57614
67405
 
 
67406
 
 
67407
#line 67408 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57615
67408
} // closed Puma
57616
67409
class WinIfExists;
57617
67410
class WinImportHandler;
57632
67425
class CCExprResolve;
57633
67426
class CExprResolve;
57634
67427
namespace Puma {
57635
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
 
67428
 
 
67429
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67430
class CT_LinkageSpec : public CT_Decl {
 
67431
#line 67432 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67432
  friend class ::WinIfExists;
57636
67433
  friend class ::WinImportHandler;
57637
67434
  friend class ::WinMacros;
57638
67435
  friend class ::CMatchSyntax;
57651
67448
  friend class ::CCExprResolve;
57652
67449
  friend class ::CExprResolve;
57653
67450
 
 
67451
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67452
 
57654
67453
  CTree *sons[5]; // extern, str, open, decls, close
57655
67454
 
57656
67455
public:
57675
67474
  }
57676
67475
};
57677
67476
 
 
67477
 
 
67478
#line 67479 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57678
67479
} // closed Puma
57679
67480
class WinIfExists;
57680
67481
class WinImportHandler;
57695
67496
class CCExprResolve;
57696
67497
class CExprResolve;
57697
67498
namespace Puma {
57698
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
67499
 
 
67500
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67501
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
67502
#line 67503 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67503
  friend class ::WinIfExists;
57699
67504
  friend class ::WinImportHandler;
57700
67505
  friend class ::WinMacros;
57701
67506
  friend class ::CMatchSyntax;
57714
67519
  friend class ::CCExprResolve;
57715
67520
  friend class ::CExprResolve;
57716
67521
 
 
67522
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67523
 
57717
67524
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
57718
67525
 
57719
67526
public:
57738
67545
  }
57739
67546
};
57740
67547
 
 
67548
 
 
67549
#line 67550 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57741
67550
} // closed Puma
57742
67551
class WinIfExists;
57743
67552
class WinImportHandler;
57758
67567
class CCExprResolve;
57759
67568
class CExprResolve;
57760
67569
namespace Puma {
57761
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
67570
 
 
67571
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67572
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
67573
#line 67574 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67574
  friend class ::WinIfExists;
57762
67575
  friend class ::WinImportHandler;
57763
67576
  friend class ::WinMacros;
57764
67577
  friend class ::CMatchSyntax;
57777
67590
  friend class ::CCExprResolve;
57778
67591
  friend class ::CExprResolve;
57779
67592
 
 
67593
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67594
 
57780
67595
public:
57781
67596
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
57782
67597
   CT_DeclList (size, 2) { AddProperties (props); }
57784
67599
  const char *NodeName () const { return NodeId (); }
57785
67600
};
57786
67601
 
 
67602
 
 
67603
#line 67604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57787
67604
} // closed Puma
57788
67605
class WinIfExists;
57789
67606
class WinImportHandler;
57804
67621
class CCExprResolve;
57805
67622
class CExprResolve;
57806
67623
namespace Puma {
57807
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
67624
 
 
67625
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67626
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
67627
#line 67628 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67628
  friend class ::WinIfExists;
57808
67629
  friend class ::WinImportHandler;
57809
67630
  friend class ::WinMacros;
57810
67631
  friend class ::CMatchSyntax;
57823
67644
  friend class ::CCExprResolve;
57824
67645
  friend class ::CExprResolve;
57825
67646
 
 
67647
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67648
 
57826
67649
public:
57827
67650
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
57828
67651
  static const char *NodeId ();
57829
67652
  const char *NodeName () const { return NodeId (); }
57830
67653
};
57831
67654
 
 
67655
 
 
67656
#line 67657 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57832
67657
} // closed Puma
57833
67658
class WinIfExists;
57834
67659
class WinImportHandler;
57849
67674
class CCExprResolve;
57850
67675
class CExprResolve;
57851
67676
namespace Puma {
57852
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
 
67677
 
 
67678
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67679
class CT_ArgNameList : public CT_ArgDeclList {
 
67680
#line 67681 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67681
  friend class ::WinIfExists;
57853
67682
  friend class ::WinImportHandler;
57854
67683
  friend class ::WinMacros;
57855
67684
  friend class ::CMatchSyntax;
57868
67697
  friend class ::CCExprResolve;
57869
67698
  friend class ::CExprResolve;
57870
67699
 
 
67700
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67701
 
57871
67702
public:
57872
67703
  CT_ArgNameList () : CT_ArgDeclList () {}
57873
67704
  static const char *NodeId ();
57874
67705
  const char *NodeName () const { return NodeId (); }
57875
67706
};
57876
67707
 
 
67708
 
 
67709
#line 67710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57877
67710
} // closed Puma
57878
67711
class WinIfExists;
57879
67712
class WinImportHandler;
57894
67727
class CCExprResolve;
57895
67728
class CExprResolve;
57896
67729
namespace Puma {
57897
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
67730
 
 
67731
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67732
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
67733
#line 67734 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67734
  friend class ::WinIfExists;
57898
67735
  friend class ::WinImportHandler;
57899
67736
  friend class ::WinMacros;
57900
67737
  friend class ::CMatchSyntax;
57913
67750
  friend class ::CCExprResolve;
57914
67751
  friend class ::CExprResolve;
57915
67752
 
 
67753
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67754
 
57916
67755
  CTree *sons[3]; // ns, name, members
57917
67756
 
57918
67757
public:
57935
67774
  }
57936
67775
};
57937
67776
 
 
67777
 
 
67778
#line 67779 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57938
67779
} // closed Puma
57939
67780
class WinIfExists;
57940
67781
class WinImportHandler;
57955
67796
class CCExprResolve;
57956
67797
class CExprResolve;
57957
67798
namespace Puma {
57958
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
67799
 
 
67800
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67801
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
67802
#line 67803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67803
  friend class ::WinIfExists;
57959
67804
  friend class ::WinImportHandler;
57960
67805
  friend class ::WinMacros;
57961
67806
  friend class ::CMatchSyntax;
57974
67819
  friend class ::CCExprResolve;
57975
67820
  friend class ::CExprResolve;
57976
67821
 
 
67822
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67823
 
57977
67824
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
57978
67825
 
57979
67826
public:
57992
67839
  }
57993
67840
};
57994
67841
 
 
67842
 
 
67843
#line 67844 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
57995
67844
} // closed Puma
57996
67845
class WinIfExists;
57997
67846
class WinImportHandler;
58012
67861
class CCExprResolve;
58013
67862
class CExprResolve;
58014
67863
namespace Puma {
58015
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
 
67864
 
 
67865
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67866
class CT_UsingDirective : public CT_Decl {
 
67867
#line 67868 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67868
  friend class ::WinIfExists;
58016
67869
  friend class ::WinImportHandler;
58017
67870
  friend class ::WinMacros;
58018
67871
  friend class ::CMatchSyntax;
58031
67884
  friend class ::CCExprResolve;
58032
67885
  friend class ::CExprResolve;
58033
67886
 
 
67887
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67888
 
58034
67889
  CTree *sons[4]; // using, ns, name, semi_colon
58035
67890
 
58036
67891
public:
58053
67908
/*                                                                           */
58054
67909
/*****************************************************************************/
58055
67910
 
 
67911
 
 
67912
#line 67913 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58056
67913
} // closed Puma
58057
67914
class WinIfExists;
58058
67915
class WinImportHandler;
58073
67930
class CCExprResolve;
58074
67931
class CExprResolve;
58075
67932
namespace Puma {
58076
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
 
67933
 
 
67934
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67935
class CT_Declarator : public CTree {
 
67936
#line 67937 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67937
  friend class ::WinIfExists;
58077
67938
  friend class ::WinImportHandler;
58078
67939
  friend class ::WinMacros;
58079
67940
  friend class ::CMatchSyntax;
58092
67953
  friend class ::CCExprResolve;
58093
67954
  friend class ::CExprResolve;
58094
67955
 
 
67956
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67957
 
58095
67958
protected:
58096
67959
  CT_Declarator () {}
58097
67960
 
58104
67967
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
58105
67968
};
58106
67969
 
 
67970
 
 
67971
#line 67972 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58107
67972
} // closed Puma
58108
67973
class WinIfExists;
58109
67974
class WinImportHandler;
58124
67989
class CCExprResolve;
58125
67990
class CExprResolve;
58126
67991
namespace Puma {
58127
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
67992
 
 
67993
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
67994
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
67995
#line 67996 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
67996
  friend class ::WinIfExists;
58128
67997
  friend class ::WinImportHandler;
58129
67998
  friend class ::WinMacros;
58130
67999
  friend class ::CMatchSyntax;
58143
68012
  friend class ::CCExprResolve;
58144
68013
  friend class ::CExprResolve;
58145
68014
 
 
68015
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68016
 
58146
68017
  CTree *sons[2]; // declarator, init
58147
68018
  CTree *obj_decl;
58148
68019
 
58165
68036
  }
58166
68037
};
58167
68038
 
 
68039
 
 
68040
#line 68041 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58168
68041
} // closed Puma
58169
68042
class WinIfExists;
58170
68043
class WinImportHandler;
58185
68058
class CCExprResolve;
58186
68059
class CExprResolve;
58187
68060
namespace Puma {
58188
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
68061
 
 
68062
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68063
class CT_BracedDeclarator : public CT_Declarator {
 
68064
#line 68065 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68065
  friend class ::WinIfExists;
58189
68066
  friend class ::WinImportHandler;
58190
68067
  friend class ::WinMacros;
58191
68068
  friend class ::CMatchSyntax;
58204
68081
  friend class ::CCExprResolve;
58205
68082
  friend class ::CExprResolve;
58206
68083
 
 
68084
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68085
 
58207
68086
  CTree *sons[4]; // open, win_specs, declarator, close
58208
68087
 
58209
68088
public:
58223
68102
  }
58224
68103
};
58225
68104
 
 
68105
 
 
68106
#line 68107 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58226
68107
} // closed Puma
58227
68108
class WinIfExists;
58228
68109
class WinImportHandler;
58243
68124
class CCExprResolve;
58244
68125
class CExprResolve;
58245
68126
namespace Puma {
58246
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
 
68127
 
 
68128
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68129
class CT_ArrayDelimiter : public CTree {
 
68130
#line 68131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68131
  friend class ::WinIfExists;
58247
68132
  friend class ::WinImportHandler;
58248
68133
  friend class ::WinMacros;
58249
68134
  friend class ::CMatchSyntax;
58262
68147
  friend class ::CCExprResolve;
58263
68148
  friend class ::CExprResolve;
58264
68149
 
 
68150
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68151
 
58265
68152
  CTree *sons[4]; // star, static, quals, expr
58266
68153
  bool pos0;
58267
68154
 
58282
68169
  }
58283
68170
};
58284
68171
 
 
68172
 
 
68173
#line 68174 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58285
68174
} // closed Puma
58286
68175
class WinIfExists;
58287
68176
class WinImportHandler;
58302
68191
class CCExprResolve;
58303
68192
class CExprResolve;
58304
68193
namespace Puma {
58305
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
 
68194
 
 
68195
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68196
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
68197
#line 68198 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68198
  friend class ::WinIfExists;
58306
68199
  friend class ::WinImportHandler;
58307
68200
  friend class ::WinMacros;
58308
68201
  friend class ::CMatchSyntax;
58321
68214
  friend class ::CCExprResolve;
58322
68215
  friend class ::CExprResolve;
58323
68216
 
 
68217
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68218
 
58324
68219
  CTree *sons[4]; // declarator, open, delim, close
58325
68220
 
58326
68221
public:
58342
68237
  CSemValue *SemValue () const { return (CSemValue*)this; }
58343
68238
};
58344
68239
 
 
68240
 
 
68241
#line 68242 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58345
68242
} // closed Puma
58346
68243
class WinIfExists;
58347
68244
class WinImportHandler;
58362
68259
class CCExprResolve;
58363
68260
class CExprResolve;
58364
68261
namespace Puma {
58365
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
68262
 
 
68263
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68264
class CT_FctDeclarator : public CT_Declarator {
 
68265
#line 68266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68266
  friend class ::WinIfExists;
58366
68267
  friend class ::WinImportHandler;
58367
68268
  friend class ::WinMacros;
58368
68269
  friend class ::CMatchSyntax;
58381
68282
  friend class ::CCExprResolve;
58382
68283
  friend class ::CExprResolve;
58383
68284
 
 
68285
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68286
 
58384
68287
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
58385
68288
 
58386
68289
public:
58400
68303
  }
58401
68304
};
58402
68305
 
 
68306
 
 
68307
#line 68308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58403
68308
} // closed Puma
58404
68309
class WinIfExists;
58405
68310
class WinImportHandler;
58420
68325
class CCExprResolve;
58421
68326
class CExprResolve;
58422
68327
namespace Puma {
58423
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
68328
 
 
68329
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68330
class CT_RefDeclarator : public CT_Declarator {
 
68331
#line 68332 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68332
  friend class ::WinIfExists;
58424
68333
  friend class ::WinImportHandler;
58425
68334
  friend class ::WinMacros;
58426
68335
  friend class ::CMatchSyntax;
58439
68348
  friend class ::CCExprResolve;
58440
68349
  friend class ::CExprResolve;
58441
68350
 
 
68351
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68352
 
58442
68353
  CTree *sons[2]; // ref, declarator
58443
68354
 
58444
68355
public:
58453
68364
  }
58454
68365
};
58455
68366
 
 
68367
 
 
68368
#line 68369 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58456
68369
} // closed Puma
58457
68370
class WinIfExists;
58458
68371
class WinImportHandler;
58473
68386
class CCExprResolve;
58474
68387
class CExprResolve;
58475
68388
namespace Puma {
58476
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
68389
 
 
68390
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68391
class CT_PtrDeclarator : public CT_Declarator {
 
68392
#line 68393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68393
  friend class ::WinIfExists;
58477
68394
  friend class ::WinImportHandler;
58478
68395
  friend class ::WinMacros;
58479
68396
  friend class ::CMatchSyntax;
58492
68409
  friend class ::CCExprResolve;
58493
68410
  friend class ::CExprResolve;
58494
68411
 
 
68412
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68413
 
58495
68414
  CTree *sons[3]; // ptr, cv_quals, declarator
58496
68415
 
58497
68416
public:
58509
68428
  }
58510
68429
};
58511
68430
 
 
68431
 
 
68432
#line 68433 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58512
68433
} // closed Puma
58513
68434
class WinIfExists;
58514
68435
class WinImportHandler;
58529
68450
class CCExprResolve;
58530
68451
class CExprResolve;
58531
68452
namespace Puma {
58532
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
68453
 
 
68454
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68455
class CT_MembPtrDeclarator : public CT_Declarator {
 
68456
#line 68457 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68457
  friend class ::WinIfExists;
58533
68458
  friend class ::WinImportHandler;
58534
68459
  friend class ::WinMacros;
58535
68460
  friend class ::CMatchSyntax;
58548
68473
  friend class ::CCExprResolve;
58549
68474
  friend class ::CExprResolve;
58550
68475
 
 
68476
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68477
 
58551
68478
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
58552
68479
 
58553
68480
public:
58566
68493
  }
58567
68494
};
58568
68495
 
 
68496
 
 
68497
#line 68498 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58569
68498
} // closed Puma
58570
68499
class WinIfExists;
58571
68500
class WinImportHandler;
58586
68515
class CCExprResolve;
58587
68516
class CExprResolve;
58588
68517
namespace Puma {
58589
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
68518
 
 
68519
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68520
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
68521
#line 68522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68522
  friend class ::WinIfExists;
58590
68523
  friend class ::WinImportHandler;
58591
68524
  friend class ::WinMacros;
58592
68525
  friend class ::CMatchSyntax;
58605
68538
  friend class ::CCExprResolve;
58606
68539
  friend class ::CExprResolve;
58607
68540
 
 
68541
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68542
 
58608
68543
  CTree *sons[3]; // declarator, colon, expr
58609
68544
 
58610
68545
public:
58630
68565
/*                                                                           */
58631
68566
/*****************************************************************************/
58632
68567
 
 
68568
 
 
68569
#line 68570 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58633
68570
} // closed Puma
58634
68571
class WinIfExists;
58635
68572
class WinImportHandler;
58650
68587
class CCExprResolve;
58651
68588
class CExprResolve;
58652
68589
namespace Puma {
58653
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
 
68590
 
 
68591
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68592
class CT_Statement : public CTree {
 
68593
#line 68594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68594
  friend class ::WinIfExists;
58654
68595
  friend class ::WinImportHandler;
58655
68596
  friend class ::WinMacros;
58656
68597
  friend class ::CMatchSyntax;
58668
68609
  friend class ::PragmaOnce;
58669
68610
  friend class ::CCExprResolve;
58670
68611
  friend class ::CExprResolve;
 
68612
 
 
68613
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
58671
68614
 
58672
68615
protected:
58673
68616
  CT_Statement () {}
58674
68617
};
58675
68618
 
 
68619
 
 
68620
#line 68621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58676
68621
} // closed Puma
58677
68622
class WinIfExists;
58678
68623
class WinImportHandler;
58693
68638
class CCExprResolve;
58694
68639
class CExprResolve;
58695
68640
namespace Puma {
58696
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
 
68641
 
 
68642
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68643
class CT_LabelStmt : public CT_Statement {
 
68644
#line 68645 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68645
  friend class ::WinIfExists;
58697
68646
  friend class ::WinImportHandler;
58698
68647
  friend class ::WinMacros;
58699
68648
  friend class ::CMatchSyntax;
58712
68661
  friend class ::CCExprResolve;
58713
68662
  friend class ::CExprResolve;
58714
68663
 
 
68664
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68665
 
58715
68666
  CTree *sons[3]; // id, colon, stmt
58716
68667
 
58717
68668
public:
58729
68680
  }
58730
68681
};
58731
68682
 
 
68683
 
 
68684
#line 68685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58732
68685
} // closed Puma
58733
68686
class WinIfExists;
58734
68687
class WinImportHandler;
58749
68702
class CCExprResolve;
58750
68703
class CExprResolve;
58751
68704
namespace Puma {
58752
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
 
68705
 
 
68706
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68707
class CT_DefaultStmt : public CT_Statement {
 
68708
#line 68709 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68709
  friend class ::WinIfExists;
58753
68710
  friend class ::WinImportHandler;
58754
68711
  friend class ::WinMacros;
58755
68712
  friend class ::CMatchSyntax;
58768
68725
  friend class ::CCExprResolve;
58769
68726
  friend class ::CExprResolve;
58770
68727
 
 
68728
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68729
 
58771
68730
  CTree *sons[3]; // keyword, colon, stmt
58772
68731
 
58773
68732
public:
58784
68743
  }
58785
68744
};
58786
68745
 
 
68746
 
 
68747
#line 68748 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58787
68748
} // closed Puma
58788
68749
class WinIfExists;
58789
68750
class WinImportHandler;
58804
68765
class CCExprResolve;
58805
68766
class CExprResolve;
58806
68767
namespace Puma {
58807
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
 
68768
 
 
68769
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68770
class CT_TryStmt : public CT_Statement {
 
68771
#line 68772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68772
  friend class ::WinIfExists;
58808
68773
  friend class ::WinImportHandler;
58809
68774
  friend class ::WinMacros;
58810
68775
  friend class ::CMatchSyntax;
58823
68788
  friend class ::CCExprResolve;
58824
68789
  friend class ::CExprResolve;
58825
68790
 
 
68791
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68792
 
58826
68793
  CTree *sons[3]; // try, stmt, handlers
58827
68794
 
58828
68795
public:
58840
68807
  }
58841
68808
};
58842
68809
 
 
68810
 
 
68811
#line 68812 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58843
68812
} // closed Puma
58844
68813
class WinIfExists;
58845
68814
class WinImportHandler;
58860
68829
class CCExprResolve;
58861
68830
class CExprResolve;
58862
68831
namespace Puma {
58863
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
 
68832
 
 
68833
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68834
class CT_CaseStmt : public CT_Statement {
 
68835
#line 68836 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68836
  friend class ::WinIfExists;
58864
68837
  friend class ::WinImportHandler;
58865
68838
  friend class ::WinMacros;
58866
68839
  friend class ::CMatchSyntax;
58879
68852
  friend class ::CCExprResolve;
58880
68853
  friend class ::CExprResolve;
58881
68854
 
 
68855
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68856
 
58882
68857
  CTree *sons[4]; // keyword, expr, colon, stmt
58883
68858
 
58884
68859
public:
58896
68871
  }
58897
68872
};
58898
68873
 
 
68874
 
 
68875
#line 68876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58899
68876
} // closed Puma
58900
68877
class WinIfExists;
58901
68878
class WinImportHandler;
58916
68893
class CCExprResolve;
58917
68894
class CExprResolve;
58918
68895
namespace Puma {
58919
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
 
68896
 
 
68897
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68898
class CT_ExprStmt : public CT_Statement {
 
68899
#line 68900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68900
  friend class ::WinIfExists;
58920
68901
  friend class ::WinImportHandler;
58921
68902
  friend class ::WinMacros;
58922
68903
  friend class ::CMatchSyntax;
58935
68916
  friend class ::CCExprResolve;
58936
68917
  friend class ::CExprResolve;
58937
68918
 
 
68919
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68920
 
58938
68921
  CTree *sons[2]; // expr, semi_colon
58939
68922
 
58940
68923
public:
58949
68932
  }
58950
68933
};
58951
68934
 
 
68935
 
 
68936
#line 68937 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
58952
68937
} // closed Puma
58953
68938
class WinIfExists;
58954
68939
class WinImportHandler;
58969
68954
class CCExprResolve;
58970
68955
class CExprResolve;
58971
68956
namespace Puma {
58972
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
 
68957
 
 
68958
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68959
class CT_DeclStmt : public CT_Statement {
 
68960
#line 68961 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
68961
  friend class ::WinIfExists;
58973
68962
  friend class ::WinImportHandler;
58974
68963
  friend class ::WinMacros;
58975
68964
  friend class ::CMatchSyntax;
58988
68977
  friend class ::CCExprResolve;
58989
68978
  friend class ::CExprResolve;
58990
68979
 
 
68980
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
68981
 
58991
68982
  CTree *_decl;
58992
68983
 
58993
68984
public:
59000
68991
   { if (old_son == _decl) _decl = new_son; }
59001
68992
};
59002
68993
 
 
68994
 
 
68995
#line 68996 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59003
68996
} // closed Puma
59004
68997
class WinIfExists;
59005
68998
class WinImportHandler;
59020
69013
class CCExprResolve;
59021
69014
class CExprResolve;
59022
69015
namespace Puma {
59023
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
69016
 
 
69017
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69018
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
69019
#line 69020 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69020
  friend class ::WinIfExists;
59024
69021
  friend class ::WinImportHandler;
59025
69022
  friend class ::WinMacros;
59026
69023
  friend class ::CMatchSyntax;
59039
69036
  friend class ::CCExprResolve;
59040
69037
  friend class ::CExprResolve;
59041
69038
 
 
69039
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69040
 
59042
69041
  CTree *sons[5]; // keyword, open, cond, close, stmt
59043
69042
 
59044
69043
public:
59056
69055
  }
59057
69056
};
59058
69057
 
 
69058
 
 
69059
#line 69060 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59059
69060
} // closed Puma
59060
69061
class WinIfExists;
59061
69062
class WinImportHandler;
59076
69077
class CCExprResolve;
59077
69078
class CExprResolve;
59078
69079
namespace Puma {
59079
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
69080
 
 
69081
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69082
class CT_IfStmt : public CT_Statement, public CSemScope {
 
69083
#line 69084 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69084
  friend class ::WinIfExists;
59080
69085
  friend class ::WinImportHandler;
59081
69086
  friend class ::WinMacros;
59082
69087
  friend class ::CMatchSyntax;
59095
69100
  friend class ::CCExprResolve;
59096
69101
  friend class ::CExprResolve;
59097
69102
 
 
69103
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69104
 
59098
69105
  CTree *sons[5]; // keyword, open, cond, close, stmt
59099
69106
 
59100
69107
public:
59112
69119
  }
59113
69120
};
59114
69121
 
 
69122
 
 
69123
#line 69124 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59115
69124
} // closed Puma
59116
69125
class WinIfExists;
59117
69126
class WinImportHandler;
59132
69141
class CCExprResolve;
59133
69142
class CExprResolve;
59134
69143
namespace Puma {
59135
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
69144
 
 
69145
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69146
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
69147
#line 69148 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69148
  friend class ::WinIfExists;
59136
69149
  friend class ::WinImportHandler;
59137
69150
  friend class ::WinMacros;
59138
69151
  friend class ::CMatchSyntax;
59151
69164
  friend class ::CCExprResolve;
59152
69165
  friend class ::CExprResolve;
59153
69166
 
 
69167
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69168
 
59154
69169
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
59155
69170
 
59156
69171
public:
59171
69186
  }
59172
69187
};
59173
69188
 
 
69189
 
 
69190
#line 69191 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59174
69191
} // closed Puma
59175
69192
class WinIfExists;
59176
69193
class WinImportHandler;
59191
69208
class CCExprResolve;
59192
69209
class CExprResolve;
59193
69210
namespace Puma {
59194
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
 
69211
 
 
69212
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69213
class CT_BreakStmt : public CT_Statement {
 
69214
#line 69215 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69215
  friend class ::WinIfExists;
59195
69216
  friend class ::WinImportHandler;
59196
69217
  friend class ::WinMacros;
59197
69218
  friend class ::CMatchSyntax;
59210
69231
  friend class ::CCExprResolve;
59211
69232
  friend class ::CExprResolve;
59212
69233
 
 
69234
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69235
 
59213
69236
  CTree *sons[2]; // key, semi_colon
59214
69237
 
59215
69238
public:
59223
69246
  }
59224
69247
};
59225
69248
 
 
69249
 
 
69250
#line 69251 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59226
69251
} // closed Puma
59227
69252
class WinIfExists;
59228
69253
class WinImportHandler;
59243
69268
class CCExprResolve;
59244
69269
class CExprResolve;
59245
69270
namespace Puma {
59246
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
 
69271
 
 
69272
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69273
class CT_ContinueStmt : public CT_Statement {
 
69274
#line 69275 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69275
  friend class ::WinIfExists;
59247
69276
  friend class ::WinImportHandler;
59248
69277
  friend class ::WinMacros;
59249
69278
  friend class ::CMatchSyntax;
59262
69291
  friend class ::CCExprResolve;
59263
69292
  friend class ::CExprResolve;
59264
69293
 
 
69294
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69295
 
59265
69296
  CTree *sons[2]; // key, semi_colon
59266
69297
 
59267
69298
public:
59275
69306
  }
59276
69307
};
59277
69308
 
 
69309
 
 
69310
#line 69311 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59278
69311
} // closed Puma
59279
69312
class WinIfExists;
59280
69313
class WinImportHandler;
59295
69328
class CCExprResolve;
59296
69329
class CExprResolve;
59297
69330
namespace Puma {
59298
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
 
69331
 
 
69332
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69333
class CT_GotoStmt : public CT_Statement {
 
69334
#line 69335 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69335
  friend class ::WinIfExists;
59299
69336
  friend class ::WinImportHandler;
59300
69337
  friend class ::WinMacros;
59301
69338
  friend class ::CMatchSyntax;
59314
69351
  friend class ::CCExprResolve;
59315
69352
  friend class ::CExprResolve;
59316
69353
 
 
69354
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69355
 
59317
69356
  CTree *sons[3]; // key, label, semi_colon
59318
69357
 
59319
69358
public:
59330
69369
  }
59331
69370
};
59332
69371
 
 
69372
 
 
69373
#line 69374 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59333
69374
} // closed Puma
59334
69375
class WinIfExists;
59335
69376
class WinImportHandler;
59350
69391
class CCExprResolve;
59351
69392
class CExprResolve;
59352
69393
namespace Puma {
59353
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
 
69394
 
 
69395
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69396
class CT_ReturnStmt : public CT_Statement {
 
69397
#line 69398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69398
  friend class ::WinIfExists;
59354
69399
  friend class ::WinImportHandler;
59355
69400
  friend class ::WinMacros;
59356
69401
  friend class ::CMatchSyntax;
59369
69414
  friend class ::CCExprResolve;
59370
69415
  friend class ::CExprResolve;
59371
69416
 
 
69417
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69418
 
59372
69419
  CTree *sons[3]; // key, expr, semi_colon
59373
69420
 
59374
69421
public:
59385
69432
  }
59386
69433
};
59387
69434
 
 
69435
 
 
69436
#line 69437 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59388
69437
} // closed Puma
59389
69438
class WinIfExists;
59390
69439
class WinImportHandler;
59405
69454
class CCExprResolve;
59406
69455
class CExprResolve;
59407
69456
namespace Puma {
59408
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
69457
 
 
69458
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69459
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
69460
#line 69461 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69461
  friend class ::WinIfExists;
59409
69462
  friend class ::WinImportHandler;
59410
69463
  friend class ::WinMacros;
59411
69464
  friend class ::CMatchSyntax;
59424
69477
  friend class ::CCExprResolve;
59425
69478
  friend class ::CExprResolve;
59426
69479
 
 
69480
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69481
 
59427
69482
  CTree *sons[5]; // key, open, cond, close, stmt
59428
69483
 
59429
69484
public:
59441
69496
  }
59442
69497
};
59443
69498
 
 
69499
 
 
69500
#line 69501 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59444
69501
} // closed Puma
59445
69502
class WinIfExists;
59446
69503
class WinImportHandler;
59461
69518
class CCExprResolve;
59462
69519
class CExprResolve;
59463
69520
namespace Puma {
59464
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
 
69521
 
 
69522
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69523
class CT_DoStmt : public CT_Statement {
 
69524
#line 69525 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69525
  friend class ::WinIfExists;
59465
69526
  friend class ::WinImportHandler;
59466
69527
  friend class ::WinMacros;
59467
69528
  friend class ::CMatchSyntax;
59480
69541
  friend class ::CCExprResolve;
59481
69542
  friend class ::CExprResolve;
59482
69543
 
 
69544
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69545
 
59483
69546
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
59484
69547
 
59485
69548
public:
59499
69562
  }
59500
69563
};
59501
69564
 
 
69565
 
 
69566
#line 69567 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59502
69567
} // closed Puma
59503
69568
class WinIfExists;
59504
69569
class WinImportHandler;
59519
69584
class CCExprResolve;
59520
69585
class CExprResolve;
59521
69586
namespace Puma {
59522
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
69587
 
 
69588
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69589
class CT_ForStmt : public CT_Statement, public CSemScope {
 
69590
#line 69591 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69591
  friend class ::WinIfExists;
59523
69592
  friend class ::WinImportHandler;
59524
69593
  friend class ::WinMacros;
59525
69594
  friend class ::CMatchSyntax;
59538
69607
  friend class ::CCExprResolve;
59539
69608
  friend class ::CExprResolve;
59540
69609
 
 
69610
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69611
 
59541
69612
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
59542
69613
 
59543
69614
public:
59559
69630
  }
59560
69631
};
59561
69632
 
 
69633
 
 
69634
#line 69635 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59562
69635
} // closed Puma
59563
69636
class WinIfExists;
59564
69637
class WinImportHandler;
59579
69652
class CCExprResolve;
59580
69653
class CExprResolve;
59581
69654
namespace Puma {
59582
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
69655
 
 
69656
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69657
class CT_Condition : public CT_Decl, public CSemObject {
 
69658
#line 69659 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69659
  friend class ::WinIfExists;
59583
69660
  friend class ::WinImportHandler;
59584
69661
  friend class ::WinMacros;
59585
69662
  friend class ::CMatchSyntax;
59598
69675
  friend class ::CCExprResolve;
59599
69676
  friend class ::CExprResolve;
59600
69677
 
 
69678
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69679
 
59601
69680
  CTree *sons[3]; // declspecs, declarator, init
59602
69681
 
59603
69682
public:
59624
69703
/*                                                                           */
59625
69704
/*****************************************************************************/
59626
69705
 
 
69706
 
 
69707
#line 69708 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59627
69708
} // closed Puma
59628
69709
class WinIfExists;
59629
69710
class WinImportHandler;
59644
69725
class CCExprResolve;
59645
69726
class CExprResolve;
59646
69727
namespace Puma {
59647
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
69728
 
 
69729
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69730
class CT_ClassDef : public CT_Decl, public CSemObject {
 
69731
#line 69732 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69732
  friend class ::WinIfExists;
59648
69733
  friend class ::WinImportHandler;
59649
69734
  friend class ::WinMacros;
59650
69735
  friend class ::CMatchSyntax;
59663
69748
  friend class ::CCExprResolve;
59664
69749
  friend class ::CExprResolve;
59665
69750
 
 
69751
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69752
 
59666
69753
   
 
69754
#line 69755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69755
 
59667
69756
  struct __ac_wrapper_sons {
59668
69757
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
59669
69758
    operator A& () { return _data; }
59676
69765
    operator const void* () const { return _data; }
59677
69766
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
59678
69767
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
59679
 
  } sons; // key, name, bases, members
 
69768
  } sons
 
69769
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69770
 
 
69771
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69772
; // key, name, bases, members
59680
69773
  CTree *obj_decl;
59681
69774
 
59682
69775
public:
59683
69776
  
 
69777
#line 69778 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69778
 
59684
69779
 
59685
69780
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
59686
69781
  typedef void Result;
59716
69811
 
59717
69812
};
59718
69813
 
59719
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
 
69814
 
 
69815
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69816
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
69817
#line 69818 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69818
{
59720
69819
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
59721
69820
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
59722
69821
this->__exec_old_C1(arg0, arg1, arg2);
59723
69822
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
59724
69823
 
59725
69824
}
59726
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
 
69825
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
69826
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69827
{
59727
69828
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
59728
69829
  }
59729
69830
  static const char *NodeId ();
59743
69844
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
59744
69845
  }
59745
69846
   private:
 
69847
 
 
69848
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
59746
69849
 CTree * _intro_members ;
59747
69850
public :
59748
69851
CTree * IntroMembers ( ) const { return _intro_members ; }
59749
69852
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
69853
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69854
 
 
69855
#line 69856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69856
 
59750
69857
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
59751
69858
  typedef void Result;
59752
69859
  typedef ::Puma::CT_ClassDef That;
59774
69881
};
59775
69882
 
59776
69883
 
 
69884
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69885
 
 
69886
#line 69887 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69887
 
59777
69888
public:
59778
69889
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
59779
69890
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
59782
69893
 
59783
69894
}
59784
69895
 
 
69896
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69897
 
 
69898
#line 69899 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69899
 
59785
69900
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
59786
69901
  typedef void Result;
59787
69902
  typedef ::Puma::CT_ClassDef That;
59805
69920
};
59806
69921
 
59807
69922
 
 
69923
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69924
 
 
69925
#line 69926 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69926
 
59808
69927
public:
59809
69928
inline ~CT_ClassDef () {
59810
69929
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
59812
69931
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
59813
69932
 
59814
69933
}
 
69934
 
 
69935
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
59815
69936
};
59816
69937
      
 
69938
 
 
69939
#line 69940 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59817
69940
} // closed Puma
59818
69941
class WinIfExists;
59819
69942
class WinImportHandler;
59834
69957
class CCExprResolve;
59835
69958
class CExprResolve;
59836
69959
namespace Puma {
59837
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
 
69960
 
 
69961
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69962
class CT_UnionDef : public CT_ClassDef {
 
69963
#line 69964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
69964
  friend class ::WinIfExists;
59838
69965
  friend class ::WinImportHandler;
59839
69966
  friend class ::WinMacros;
59840
69967
  friend class ::CMatchSyntax;
59853
69980
  friend class ::CCExprResolve;
59854
69981
  friend class ::CExprResolve;
59855
69982
 
 
69983
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
69984
 
59856
69985
public:
59857
69986
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
59858
69987
  static const char *NodeId ();
59859
69988
  const char *NodeName () const { return NodeId (); }
59860
69989
};
59861
69990
      
 
69991
 
 
69992
#line 69993 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59862
69993
} // closed Puma
59863
69994
class WinIfExists;
59864
69995
class WinImportHandler;
59879
70010
class CCExprResolve;
59880
70011
class CExprResolve;
59881
70012
namespace Puma {
59882
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
70013
 
 
70014
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70015
class CT_MembList : public CT_DeclList, public CSemScope {
 
70016
#line 70017 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70017
  friend class ::WinIfExists;
59883
70018
  friend class ::WinImportHandler;
59884
70019
  friend class ::WinMacros;
59885
70020
  friend class ::CMatchSyntax;
59898
70033
  friend class ::CCExprResolve;
59899
70034
  friend class ::CExprResolve;
59900
70035
 
 
70036
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70037
 
59901
70038
public:
59902
70039
  CT_MembList (int size = 10, int incr = 10) : 
59903
70040
    CT_DeclList (size, incr) {}
59905
70042
  const char *NodeName () const { return NodeId (); }
59906
70043
};
59907
70044
 
 
70045
 
 
70046
#line 70047 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59908
70047
} // closed Puma
59909
70048
class WinIfExists;
59910
70049
class WinImportHandler;
59925
70064
class CCExprResolve;
59926
70065
class CExprResolve;
59927
70066
namespace Puma {
59928
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
70067
 
 
70068
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70069
class CT_MembInitList : public CT_List, public CSemScope {
 
70070
#line 70071 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70071
  friend class ::WinIfExists;
59929
70072
  friend class ::WinImportHandler;
59930
70073
  friend class ::WinMacros;
59931
70074
  friend class ::CMatchSyntax;
59944
70087
  friend class ::CCExprResolve;
59945
70088
  friend class ::CExprResolve;
59946
70089
 
 
70090
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70091
 
59947
70092
public:
59948
70093
  CT_MembInitList (int size = 2) : 
59949
70094
    CT_List (size, 2, CT_List::OPEN) {}
59951
70096
  const char *NodeName () const { return NodeId (); }
59952
70097
};
59953
70098
 
 
70099
 
 
70100
#line 70101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
59954
70101
} // closed Puma
59955
70102
class WinIfExists;
59956
70103
class WinImportHandler;
59971
70118
class CCExprResolve;
59972
70119
class CExprResolve;
59973
70120
namespace Puma {
59974
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
70121
 
 
70122
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70123
class CT_MembInit : public CT_Expression, public CSemObject {
 
70124
#line 70125 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70125
  friend class ::WinIfExists;
59975
70126
  friend class ::WinImportHandler;
59976
70127
  friend class ::WinMacros;
59977
70128
  friend class ::CMatchSyntax;
59990
70141
  friend class ::CCExprResolve;
59991
70142
  friend class ::CExprResolve;
59992
70143
 
 
70144
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70145
 
59993
70146
  CTree *sons[2]; // name, init
59994
70147
 
59995
70148
public:
60006
70159
  CSemObject *SemObject () const { return (CSemObject*)this; }
60007
70160
   private:
60008
70161
  typedef CT_MembInit CCExprResolveExpr;
 
70162
 
 
70163
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
60009
70164
 public :
60010
70165
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
60011
70166
  typedef CT_MembInit CExprResolveExpr;
 
70167
 
 
70168
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
60012
70169
 public :
60013
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
60014
 
 
 
70170
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
70171
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70172
};
 
70173
 
 
70174
 
 
70175
#line 70176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60015
70176
} // closed Puma
60016
70177
class WinIfExists;
60017
70178
class WinImportHandler;
60032
70193
class CCExprResolve;
60033
70194
class CExprResolve;
60034
70195
namespace Puma {
60035
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
 
70196
 
 
70197
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70198
class CT_BaseSpecList : public CT_List {
 
70199
#line 70200 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70200
  friend class ::WinIfExists;
60036
70201
  friend class ::WinImportHandler;
60037
70202
  friend class ::WinMacros;
60038
70203
  friend class ::CMatchSyntax;
60051
70216
  friend class ::CCExprResolve;
60052
70217
  friend class ::CExprResolve;
60053
70218
 
 
70219
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70220
 
60054
70221
public:
60055
70222
  CT_BaseSpecList (int size = 2) : 
60056
70223
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
60058
70225
  const char *NodeName () const { return NodeId (); }
60059
70226
};
60060
70227
 
 
70228
 
 
70229
#line 70230 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60061
70230
} // closed Puma
60062
70231
class WinIfExists;
60063
70232
class WinImportHandler;
60078
70247
class CCExprResolve;
60079
70248
class CExprResolve;
60080
70249
namespace Puma {
60081
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
 
70250
 
 
70251
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70252
class CT_AccessSpec : public CTree {
 
70253
#line 70254 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70254
  friend class ::WinIfExists;
60082
70255
  friend class ::WinImportHandler;
60083
70256
  friend class ::WinMacros;
60084
70257
  friend class ::CMatchSyntax;
60097
70270
  friend class ::CCExprResolve;
60098
70271
  friend class ::CExprResolve;
60099
70272
 
 
70273
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70274
 
60100
70275
  CTree *sons[2]; // access, colon
60101
70276
 
60102
70277
public:
60111
70286
  }
60112
70287
};
60113
70288
 
 
70289
 
 
70290
#line 70291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60114
70291
} // closed Puma
60115
70292
class WinIfExists;
60116
70293
class WinImportHandler;
60131
70308
class CCExprResolve;
60132
70309
class CExprResolve;
60133
70310
namespace Puma {
60134
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
 
70311
 
 
70312
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70313
class CT_BaseSpec : public CTree {
 
70314
#line 70315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70315
  friend class ::WinIfExists;
60135
70316
  friend class ::WinImportHandler;
60136
70317
  friend class ::WinMacros;
60137
70318
  friend class ::CMatchSyntax;
60150
70331
  friend class ::CCExprResolve;
60151
70332
  friend class ::CExprResolve;
60152
70333
 
 
70334
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70335
 
60153
70336
  CTree *sons[3]; // virtual, access, name
60154
70337
 
60155
70338
public:
60169
70352
  }
60170
70353
};
60171
70354
 
 
70355
 
 
70356
#line 70357 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60172
70357
} // closed Puma
60173
70358
class WinIfExists;
60174
70359
class WinImportHandler;
60189
70374
class CCExprResolve;
60190
70375
class CExprResolve;
60191
70376
namespace Puma {
60192
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
 
70377
 
 
70378
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70379
class CT_AccessDecl : public CT_Decl {
 
70380
#line 70381 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70381
  friend class ::WinIfExists;
60193
70382
  friend class ::WinImportHandler;
60194
70383
  friend class ::WinMacros;
60195
70384
  friend class ::CMatchSyntax;
60208
70397
  friend class ::CCExprResolve;
60209
70398
  friend class ::CExprResolve;
60210
70399
 
 
70400
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70401
 
60211
70402
  CTree *sons[2]; // name, semi_colon
60212
70403
 
60213
70404
public:
60222
70413
  }
60223
70414
};
60224
70415
 
 
70416
 
 
70417
#line 70418 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60225
70418
} // closed Puma
60226
70419
class WinIfExists;
60227
70420
class WinImportHandler;
60242
70435
class CCExprResolve;
60243
70436
class CExprResolve;
60244
70437
namespace Puma {
60245
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
 
70438
 
 
70439
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70440
class CT_UsingDecl : public CT_AccessDecl {
 
70441
#line 70442 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70442
  friend class ::WinIfExists;
60246
70443
  friend class ::WinImportHandler;
60247
70444
  friend class ::WinMacros;
60248
70445
  friend class ::CMatchSyntax;
60261
70458
  friend class ::CCExprResolve;
60262
70459
  friend class ::CExprResolve;
60263
70460
 
 
70461
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70462
 
60264
70463
  CTree *sons[2]; // using, typename
60265
70464
 
60266
70465
public:
60291
70490
/*                                                                           */
60292
70491
/*****************************************************************************/
60293
70492
 
 
70493
 
 
70494
#line 70495 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60294
70495
} // closed Puma
60295
70496
class WinIfExists;
60296
70497
class WinImportHandler;
60311
70512
class CCExprResolve;
60312
70513
class CExprResolve;
60313
70514
namespace Puma {
60314
 
class CT_Any : public CTree {  friend class ::WinIfExists;
 
70515
 
 
70516
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70517
class CT_Any : public CTree {
 
70518
#line 70519 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70519
  friend class ::WinIfExists;
60315
70520
  friend class ::WinImportHandler;
60316
70521
  friend class ::WinMacros;
60317
70522
  friend class ::CMatchSyntax;
60330
70535
  friend class ::CCExprResolve;
60331
70536
  friend class ::CExprResolve;
60332
70537
 
 
70538
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70539
 
60333
70540
  CTree *sons[2]; // keyword, extension
60334
70541
 
60335
70542
public:
60345
70552
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
60346
70553
};
60347
70554
 
 
70555
 
 
70556
#line 70557 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60348
70557
} // closed Puma
60349
70558
class WinIfExists;
60350
70559
class WinImportHandler;
60365
70574
class CCExprResolve;
60366
70575
class CExprResolve;
60367
70576
namespace Puma {
60368
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
 
70577
 
 
70578
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70579
class CT_AnyList : public CT_Any {
 
70580
#line 70581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70581
  friend class ::WinIfExists;
60369
70582
  friend class ::WinImportHandler;
60370
70583
  friend class ::WinMacros;
60371
70584
  friend class ::CMatchSyntax;
60384
70597
  friend class ::CCExprResolve;
60385
70598
  friend class ::CExprResolve;
60386
70599
 
 
70600
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70601
 
60387
70602
public:
60388
70603
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
60389
70604
  static const char *NodeId ();
60390
70605
  const char *NodeName () const { return NodeId (); }
60391
70606
};
60392
70607
 
 
70608
 
 
70609
#line 70610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60393
70610
} // closed Puma
60394
70611
class WinIfExists;
60395
70612
class WinImportHandler;
60410
70627
class CCExprResolve;
60411
70628
class CExprResolve;
60412
70629
namespace Puma {
60413
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
 
70630
 
 
70631
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70632
class CT_AnyExtension : public CTree, public CSemValue {
 
70633
#line 70634 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70634
  friend class ::WinIfExists;
60414
70635
  friend class ::WinImportHandler;
60415
70636
  friend class ::WinMacros;
60416
70637
  friend class ::CMatchSyntax;
60429
70650
  friend class ::CCExprResolve;
60430
70651
  friend class ::CExprResolve;
60431
70652
 
 
70653
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70654
 
60432
70655
  CTree *sons[5]; // open, string, comma, cond, close
60433
70656
 
60434
70657
public:
60451
70674
  CSemValue *SemValue () const { return (CSemValue*)this; }
60452
70675
};
60453
70676
 
 
70677
 
 
70678
#line 70679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60454
70679
} // closed Puma
60455
70680
class WinIfExists;
60456
70681
class WinImportHandler;
60471
70696
class CCExprResolve;
60472
70697
class CExprResolve;
60473
70698
namespace Puma {
60474
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
 
70699
 
 
70700
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70701
class CT_AnyCondition : public CTree {
 
70702
#line 70703 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70703
  friend class ::WinIfExists;
60475
70704
  friend class ::WinImportHandler;
60476
70705
  friend class ::WinMacros;
60477
70706
  friend class ::CMatchSyntax;
60490
70719
  friend class ::CCExprResolve;
60491
70720
  friend class ::CExprResolve;
60492
70721
 
 
70722
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70723
 
60493
70724
  CTree *sons[3]; // arg1, arg2, arg3
60494
70725
 
60495
70726
public:
60509
70740
} // namespace Puma
60510
70741
 
60511
70742
#endif /* __CTree_h__ */
60512
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
70743
 
 
70744
#line 70745 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70745
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
70746
 
 
70747
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
70748
 
 
70749
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnit.h"
60513
70750
// This file is part of PUMA.
60514
70751
// Copyright (C) 1999-2003  The PUMA developer team.
60515
70752
//                                                                
60532
70769
#define __c_unit_h__
60533
70770
 
60534
70771
 
 
70772
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
 
70773
 
 
70774
#line 70775 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70775
 
60535
70776
#ifndef __ac_fwd_ExtACKeywords__
60536
70777
#define __ac_fwd_ExtACKeywords__
60537
70778
class ExtACKeywords;
60545
70786
}
60546
70787
#endif
60547
70788
 
60548
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
60549
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
70789
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
70790
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
60550
70791
#endif
 
70792
 
 
70793
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
60551
70794
// This file is part of PUMA.
60552
70795
// Copyright (C) 1999-2003  The PUMA developer team.
60553
70796
//                                                                
60583
70826
 
60584
70827
class Token;
60585
70828
 
 
70829
 
 
70830
#line 70831 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60586
70831
} // closed Puma
60587
70832
class WinIfExists;
60588
70833
class WinImportHandler;
60603
70848
class CCExprResolve;
60604
70849
class CExprResolve;
60605
70850
namespace Puma {
60606
 
class CScanner : public CRecognizer, public Tokenizer {  friend class ::WinIfExists;
 
70851
 
 
70852
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
 
70853
class CScanner : public CRecognizer, public Tokenizer {
 
70854
#line 70855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70855
  friend class ::WinIfExists;
60607
70856
  friend class ::WinImportHandler;
60608
70857
  friend class ::WinMacros;
60609
70858
  friend class ::CMatchSyntax;
60622
70871
  friend class ::CCExprResolve;
60623
70872
  friend class ::CExprResolve;
60624
70873
 
 
70874
#line 36 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
 
70875
 
60625
70876
  Location loc;
60626
70877
  ErrorSink &err;
60627
70878
 
60634
70885
  CScanner (ErrorSink &error_stream) : err (error_stream) {}
60635
70886
  virtual ~CScanner () {}
60636
70887
  void configure (const Config &);
60637
 
  public: inline void __exec_old_fill_unit(::Puma::Source & in,::Puma::Unit & unit);
 
70888
  
 
70889
#line 70890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70890
public: inline void __exec_old_fill_unit(::Puma::Source & in,::Puma::Unit & unit);
 
70891
 
 
70892
#line 49 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
60638
70893
void fill_unit (Source &in, Unit &unit);
60639
 
  public: inline void __exec_old_fill_unit(const char * in,::Puma::Unit & unit);
 
70894
  
 
70895
#line 70896 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70896
public: inline void __exec_old_fill_unit(const char * in,::Puma::Unit & unit);
 
70897
 
 
70898
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CScanner.h"
60640
70899
void fill_unit (const char *in, Unit &unit);
60641
70900
};
60642
70901
 
60644
70903
} // namespace Puma
60645
70904
 
60646
70905
#endif /* __c_scanner_h__ */
 
70906
 
 
70907
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnit.h"
60647
70908
using namespace std;
60648
70909
 
60649
70910
namespace Puma {
60650
70911
 
60651
70912
 
 
70913
 
 
70914
#line 70915 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60652
70915
} // closed Puma
60653
70916
class WinIfExists;
60654
70917
class WinImportHandler;
60669
70932
class CCExprResolve;
60670
70933
class CExprResolve;
60671
70934
namespace Puma {
60672
 
class CUnit : public Unit, public std::ostringstream {  friend class ::WinIfExists;
 
70935
 
 
70936
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnit.h"
 
70937
class CUnit : public Unit, public std::ostringstream {
 
70938
#line 70939 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
70939
  friend class ::WinIfExists;
60673
70940
  friend class ::WinImportHandler;
60674
70941
  friend class ::WinMacros;
60675
70942
  friend class ::CMatchSyntax;
60688
70955
  friend class ::CCExprResolve;
60689
70956
  friend class ::CExprResolve;
60690
70957
 
 
70958
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnit.h"
 
70959
 
60691
70960
  CScanner _scanner;
60692
70961
 
60693
70962
public:
60707
70976
} // namespace Puma
60708
70977
 
60709
70978
#endif /* __c_unit_h__ */
 
70979
 
 
70980
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitIterator.h"
60710
70981
// This file is part of PUMA.
60711
70982
// Copyright (C) 1999-2003  The PUMA developer team.
60712
70983
//                                                                
60730
71001
 
60731
71002
// Iterator for token units.
60732
71003
 
 
71004
 
 
71005
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitIterator.h"
60733
71006
namespace Puma {
60734
71007
 
60735
71008
 
60736
71009
class Token;
60737
71010
 
 
71011
 
 
71012
#line 71013 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
60738
71013
} // closed Puma
60739
71014
class WinIfExists;
60740
71015
class WinImportHandler;
60755
71030
class CCExprResolve;
60756
71031
class CExprResolve;
60757
71032
namespace Puma {
60758
 
class UnitIterator {  friend class ::WinIfExists;
 
71033
 
 
71034
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitIterator.h"
 
71035
class UnitIterator {
 
71036
#line 71037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71037
  friend class ::WinIfExists;
60759
71038
  friend class ::WinImportHandler;
60760
71039
  friend class ::WinMacros;
60761
71040
  friend class ::CMatchSyntax;
60774
71053
  friend class ::CCExprResolve;
60775
71054
  friend class ::CExprResolve;
60776
71055
 
 
71056
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/UnitIterator.h"
 
71057
 
60777
71058
  Unit  *_unit;           // Unit to iterate.
60778
71059
  Token *_current;        // The current token.
60779
71060
 
60800
71081
 
60801
71082
#endif /* __unit_iterator__ */
60802
71083
 
 
71084
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
 
71085
 
 
71086
#line 71087 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71087
 
60803
71088
#ifndef __ac_fwd_WinDeclSpecs__
60804
71089
#define __ac_fwd_WinDeclSpecs__
60805
71090
class WinDeclSpecs;
60815
71100
}
60816
71101
#endif
60817
71102
 
60818
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__
60819
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__
 
71103
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__
 
71104
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__
60820
71105
#endif
60821
71106
 
60822
71107
#ifndef __ac_fwd_ExtGnu__
60858
71143
}
60859
71144
#endif
60860
71145
 
60861
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
60862
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
60863
 
#endif
60864
 
 
60865
 
#ifndef __ac_fwd_WinAsm__
60866
 
#define __ac_fwd_WinAsm__
60867
 
class WinAsm;
60868
 
namespace AC {
60869
 
  template <class JoinPoint>
60870
 
  inline void invoke_WinAsm_WinAsm_a0_after (JoinPoint *tjp);
60871
 
}
60872
 
#endif
60873
 
 
60874
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinAsm_ah__
60875
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinAsm_ah__
 
71146
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
71147
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
60876
71148
#endif
60877
71149
 
60878
71150
#ifndef __ac_fwd_CMatchSyntax__
60934
71206
}
60935
71207
#endif
60936
71208
 
60937
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
60938
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
 
71209
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
 
71210
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
60939
71211
#endif
60940
71212
 
60941
71213
#ifndef __ac_fwd_ExtACSyntaxCoupling__
60951
71223
}
60952
71224
#endif
60953
71225
 
60954
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__
60955
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__
 
71226
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__
 
71227
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__
 
71228
#endif
 
71229
 
 
71230
#ifndef __ac_fwd_WinAsm__
 
71231
#define __ac_fwd_WinAsm__
 
71232
class WinAsm;
 
71233
namespace AC {
 
71234
  template <class JoinPoint>
 
71235
  inline void invoke_WinAsm_WinAsm_a0_after (JoinPoint *tjp);
 
71236
}
 
71237
#endif
 
71238
 
 
71239
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinAsm_ah__
 
71240
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinAsm_ah__
60956
71241
#endif
60957
71242
 
60958
71243
#ifndef __ac_fwd_WinTypeKeywords__
60964
71249
}
60965
71250
#endif
60966
71251
 
60967
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__
60968
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__
60969
 
#endif
60970
 
// This file is part of PUMA.
60971
 
// Copyright (C) 1999-2003  The PUMA developer team.
60972
 
//                                                                
60973
 
// This program is free software;  you can redistribute it and/or 
60974
 
// modify it under the terms of the GNU General Public License as 
60975
 
// published by the Free Software Foundation; either version 2 of 
60976
 
// the License, or (at your option) any later version.            
60977
 
//                                                                
60978
 
// This program is distributed in the hope that it will be useful,
60979
 
// but WITHOUT ANY WARRANTY; without even the implied warranty of 
60980
 
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
60981
 
// GNU General Public License for more details.                   
60982
 
//                                                                
60983
 
// You should have received a copy of the GNU General Public      
60984
 
// License along with this program; if not, write to the Free     
60985
 
// Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
60986
 
// MA  02111-1307  USA                                            
60987
 
 
60988
 
#ifndef __WinAsm__
60989
 
#define __WinAsm__
60990
 
 
60991
 
/********************************************************/
60992
 
/* Win asm support aspect                               */
60993
 
/********************************************************/
60994
 
 
60995
 
// This file is part of PUMA.
60996
 
// Copyright (C) 1999-2003  The PUMA developer team.
60997
 
//                                                                
60998
 
// This program is free software;  you can redistribute it and/or 
60999
 
// modify it under the terms of the GNU General Public License as 
61000
 
// published by the Free Software Foundation; either version 2 of 
61001
 
// the License, or (at your option) any later version.            
61002
 
//                                                                
61003
 
// This program is distributed in the hope that it will be useful,
61004
 
// but WITHOUT ANY WARRANTY; without even the implied warranty of 
61005
 
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
61006
 
// GNU General Public License for more details.                   
61007
 
//                                                                
61008
 
// You should have received a copy of the GNU General Public      
61009
 
// License along with this program; if not, write to the Free     
61010
 
// Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
61011
 
// MA  02111-1307  USA                                            
61012
 
 
61013
 
#ifndef __win_c_tree_h__
61014
 
#define __win_c_tree_h__
61015
 
 
61016
 
namespace Puma {
61017
 
 
61018
 
 
61019
 
// Syntax tree node hierarchy:
61020
 
class CTree;
61021
 
class   CT_Statement;
61022
 
class     CT_AsmBlock;
61023
 
 
61024
 
 
61025
 
} // namespace Puma
61026
 
 
61027
 
 
61028
 
#ifndef __ac_fwd_ExtACTree__
61029
 
#define __ac_fwd_ExtACTree__
61030
 
class ExtACTree;
61031
 
namespace AC {
61032
 
  template <class JoinPoint>
61033
 
  inline void invoke_ExtACTree_ExtACTree_a0_after (JoinPoint *tjp);
61034
 
  template <class JoinPoint>
61035
 
  inline void invoke_ExtACTree_ExtACTree_a1_before (JoinPoint *tjp);
61036
 
}
61037
 
#endif
61038
 
 
61039
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
61040
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
61041
 
#endif
61042
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
61043
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
61044
 
// This file is part of PUMA.
61045
 
// Copyright (C) 1999-2003  The PUMA developer team.
61046
 
//                                                                
61047
 
// This program is free software;  you can redistribute it and/or 
61048
 
// modify it under the terms of the GNU General Public License as 
61049
 
// published by the Free Software Foundation; either version 2 of 
61050
 
// the License, or (at your option) any later version.            
61051
 
//                                                                
61052
 
// This program is distributed in the hope that it will be useful,
61053
 
// but WITHOUT ANY WARRANTY; without even the implied warranty of 
61054
 
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
61055
 
// GNU General Public License for more details.                   
61056
 
//                                                                
61057
 
// You should have received a copy of the GNU General Public      
61058
 
// License along with this program; if not, write to the Free     
61059
 
// Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
61060
 
// MA  02111-1307  USA                                            
61061
 
 
61062
 
#ifndef __CTree_h__
61063
 
#define __CTree_h__
61064
 
 
61065
 
namespace Puma {
61066
 
 
61067
 
 
61068
 
// Syntax tree node hierarchy:
61069
 
class CTree;
61070
 
class   CT_Statement;          
61071
 
class     CT_LabelStmt;
61072
 
class     CT_IfStmt;
61073
 
class     CT_IfElseStmt;
61074
 
class     CT_SwitchStmt;
61075
 
class     CT_BreakStmt;
61076
 
class     CT_ExprStmt;
61077
 
class     CT_WhileStmt;
61078
 
class     CT_DoStmt;
61079
 
class     CT_ForStmt;
61080
 
class     CT_ContinueStmt;
61081
 
class     CT_ReturnStmt;
61082
 
class     CT_GotoStmt;
61083
 
class     CT_DeclStmt;
61084
 
class     CT_CaseStmt;
61085
 
class     CT_DefaultStmt;
61086
 
class     CT_TryStmt;
61087
 
class   CT_Expression;
61088
 
class     CT_ThrowExpr;
61089
 
class     CT_NewExpr;
61090
 
class     CT_DeleteExpr;
61091
 
class     CT_ConstructExpr;
61092
 
class     CT_Integer;
61093
 
class     CT_Character;
61094
 
class       CT_WideCharacter;
61095
 
class     CT_Float;
61096
 
class     CT_Bool;
61097
 
class     CT_BracedExpr;
61098
 
class     CT_BinaryExpr;
61099
 
class       CT_MembPtrExpr;
61100
 
class         CT_MembRefExpr;
61101
 
class     CT_UnaryExpr;
61102
 
class       CT_PostfixExpr;
61103
 
class       CT_AddrExpr;
61104
 
class       CT_DerefExpr;
61105
 
class     CT_IfThenExpr;
61106
 
class     CT_CmpdLiteral;
61107
 
class     CT_IndexExpr;
61108
 
class     CT_CallExpr;
61109
 
class     CT_CastExpr;
61110
 
class     CT_StaticCast;
61111
 
class       CT_ConstCast;
61112
 
class       CT_ReintCast;
61113
 
class       CT_DynamicCast;
61114
 
class     CT_TypeidExpr;
61115
 
class     CT_SizeofExpr;
61116
 
class     CT_MembDesignator;
61117
 
class     CT_IndexDesignator;
61118
 
class     CT_ImplicitCast;
61119
 
class   CT_DeclSpec;
61120
 
class     CT_PrimDeclSpec;
61121
 
class     CT_NamedType;
61122
 
class     CT_ClassSpec;
61123
 
class       CT_UnionSpec;
61124
 
class       CT_EnumSpec;
61125
 
class     CT_ExceptionSpec;
61126
 
class   CT_Declarator;
61127
 
class     CT_InitDeclarator;
61128
 
class     CT_BracedDeclarator;
61129
 
class     CT_ArrayDeclarator;
61130
 
class     CT_FctDeclarator;
61131
 
class     CT_RefDeclarator;
61132
 
class     CT_PtrDeclarator;
61133
 
class     CT_MembPtrDeclarator;
61134
 
class     CT_BitFieldDeclarator;
61135
 
class   CT_Decl;
61136
 
class     CT_ObjDecl;
61137
 
class     CT_ArgDecl;
61138
 
class     CT_AccessDecl;
61139
 
class       CT_UsingDecl;
61140
 
class     CT_FctDef;
61141
 
class     CT_AsmDef;
61142
 
class     CT_EnumDef;
61143
 
class     CT_ClassDef;
61144
 
class       CT_UnionDef;
61145
 
class     CT_Enumerator;
61146
 
class     CT_LinkageSpec;
61147
 
class     CT_Handler;
61148
 
class     CT_TemplateDecl;
61149
 
class     CT_TemplateParamDecl;
61150
 
class       CT_TypeParamDecl;
61151
 
class       CT_NonTypeParamDecl;
61152
 
class     CT_NamespaceDef;
61153
 
class     CT_NamespaceAliasDef;
61154
 
class     CT_UsingDirective;
61155
 
class   CT_List;
61156
 
class     CT_CmpdStmt;
61157
 
class     CT_DeclSpecSeq;
61158
 
class     CT_HandlerSeq;
61159
 
class     CT_DesignatorSeq;
61160
 
class     CT_DeclList;
61161
 
class       CT_Program;
61162
 
class       CT_ArgDeclList;
61163
 
class         CT_ArgNameList;
61164
 
class       CT_ArgDeclSeq;
61165
 
class       CT_MembList;
61166
 
class     CT_ExprList;
61167
 
class     CT_DeclaratorList;
61168
 
class     CT_BaseSpecList;
61169
 
class     CT_MembInitList;
61170
 
class     CT_SimpleName;
61171
 
class       CT_SpecialName;
61172
 
class         CT_PrivateName;
61173
 
class         CT_OperatorName;
61174
 
class         CT_DestructorName;
61175
 
class         CT_ConversionName;
61176
 
class         CT_TemplateName;
61177
 
class       CT_QualName;
61178
 
class         CT_RootQualName;
61179
 
class     CT_String;
61180
 
class       CT_WideString;
61181
 
class     CT_TemplateParamList;
61182
 
class     CT_TemplateArgList;
61183
 
class   CT_Token;
61184
 
class   CT_Error;
61185
 
class   CT_Condition;
61186
 
class   CT_BaseSpec;
61187
 
class   CT_AccessSpec;
61188
 
class   CT_ArrayDelimiter;
61189
 
class   CT_Any;
61190
 
class   CT_AnyList;
61191
 
class   CT_AnyExtension;
61192
 
class   CT_AnyCondition;
61193
 
 
61194
 
 
61195
 
} // namespace Puma
61196
 
 
61197
 
#include "Puma/ErrorSeverity.h"
61198
 
#include "Puma/CSemObject.h"
61199
 
#include "Puma/CSemScope.h"
61200
 
#include "Puma/CSemValue.h"
61201
 
#include "Puma/CExprValue.h"
61202
 
#include "Puma/CStrLiteral.h"
61203
 
#include "Puma/CTypeInfo.h"
61204
 
#include "Puma/Printable.h"
61205
 
#include "Puma/CTokens.h"
61206
 
#include "Puma/Token.h"
61207
 
 
61208
 
#include <iostream>
61209
 
#include <string.h>
61210
 
using namespace std;
61211
 
 
61212
 
namespace Puma {
61213
 
 
61214
 
 
61215
 
class ErrorStream;
61216
 
class CObjectInfo;
61217
 
class CStructure;
61218
 
 
61219
 
/*****************************************************************************/
61220
 
/*                                                                           */
61221
 
/*                    S y n t a x  t r e e  n o d e s                        */
61222
 
/*                                                                           */
61223
 
/*****************************************************************************/
61224
 
 
61225
 
} // closed Puma
61226
 
class WinIfExists;
61227
 
class WinImportHandler;
61228
 
class WinMacros;
61229
 
class CMatchSyntax;
61230
 
class ExtGnu;
61231
 
class ExtAC;
61232
 
class ExtACBuilderCoupling;
61233
 
class ExtACSyntaxCoupling;
61234
 
class ExtACTree;
61235
 
class ExtACKeywords;
61236
 
class WinAsm;
61237
 
class WinDeclSpecs;
61238
 
class WinMemberExplSpec;
61239
 
class WinTypeKeywords;
61240
 
class PragmaOnceUnitState;
61241
 
class PragmaOnce;
61242
 
class CCExprResolve;
61243
 
class CExprResolve;
61244
 
namespace Puma {
61245
 
class CTree {  friend class ::WinIfExists;
61246
 
  friend class ::WinImportHandler;
61247
 
  friend class ::WinMacros;
61248
 
  friend class ::CMatchSyntax;
61249
 
  friend class ::ExtGnu;
61250
 
  friend class ::ExtAC;
61251
 
  friend class ::ExtACBuilderCoupling;
61252
 
  friend class ::ExtACSyntaxCoupling;
61253
 
  friend class ::ExtACTree;
61254
 
  friend class ::ExtACKeywords;
61255
 
  friend class ::WinAsm;
61256
 
  friend class ::WinDeclSpecs;
61257
 
  friend class ::WinMemberExplSpec;
61258
 
  friend class ::WinTypeKeywords;
61259
 
  friend class ::PragmaOnceUnitState;
61260
 
  friend class ::PragmaOnce;
61261
 
  friend class ::CCExprResolve;
61262
 
  friend class ::CExprResolve;
61263
 
 
61264
 
public:
61265
 
  /*DEBUG*/static int alloc;
61266
 
  /*DEBUG*/static int release;
61267
 
 
61268
 
protected:
61269
 
  CTree *Son (CTree * const *, int, int) const;
61270
 
  int Sons (CTree * const *, int) const;
61271
 
  void ReplaceSon (CTree * const *, int, CTree *, CTree *) const;
61272
 
  
61273
 
protected:
61274
 
  CTree () { /*DEBUG*/alloc++; }
61275
 
 
61276
 
public:
61277
 
  virtual ~CTree () { /*DEBUG*/release++; }
61278
 
  virtual int Sons () const = 0;
61279
 
  virtual CTree *Son (int n) const { return (CTree*)0; }
61280
 
  virtual const char *NodeName () const = 0;
61281
 
  virtual Token *token () const;
61282
 
  virtual Token *end_token () const;
61283
 
  virtual CT_Token *token_node () const;
61284
 
  virtual CT_Token *end_token_node () const;
61285
 
  virtual void ReplaceSon (CTree *, CTree *) {}
61286
 
 
61287
 
public: // semantic information
61288
 
  virtual CTypeInfo *Type () const { return (CTypeInfo*)0; }
61289
 
  virtual CExprValue *Value () const { return (CExprValue*)0; }
61290
 
  
61291
 
  virtual CSemValue *SemValue () const { return (CSemValue*)0; }
61292
 
  virtual CSemObject *SemObject () const { return (CSemObject*)0; }
61293
 
  
61294
 
public: // node classification function
61295
 
  virtual CT_SimpleName *IsSimpleName () { return 0; }
61296
 
  virtual CT_Declarator *IsDeclarator () { return 0; }
61297
 
   private:
61298
 
  typedef CTree CCExprResolveCTree;
61299
 
 public :
61300
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
61301
 
  typedef CTree CExprResolveCTree;
61302
 
 public :
61303
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
61304
 
 
61305
 
} // closed Puma
61306
 
class WinIfExists;
61307
 
class WinImportHandler;
61308
 
class WinMacros;
61309
 
class CMatchSyntax;
61310
 
class ExtGnu;
61311
 
class ExtAC;
61312
 
class ExtACBuilderCoupling;
61313
 
class ExtACSyntaxCoupling;
61314
 
class ExtACTree;
61315
 
class ExtACKeywords;
61316
 
class WinAsm;
61317
 
class WinDeclSpecs;
61318
 
class WinMemberExplSpec;
61319
 
class WinTypeKeywords;
61320
 
class PragmaOnceUnitState;
61321
 
class PragmaOnce;
61322
 
class CCExprResolve;
61323
 
class CExprResolve;
61324
 
namespace Puma {
61325
 
class CT_Error : public CTree {  friend class ::WinIfExists;
61326
 
  friend class ::WinImportHandler;
61327
 
  friend class ::WinMacros;
61328
 
  friend class ::CMatchSyntax;
61329
 
  friend class ::ExtGnu;
61330
 
  friend class ::ExtAC;
61331
 
  friend class ::ExtACBuilderCoupling;
61332
 
  friend class ::ExtACSyntaxCoupling;
61333
 
  friend class ::ExtACTree;
61334
 
  friend class ::ExtACKeywords;
61335
 
  friend class ::WinAsm;
61336
 
  friend class ::WinDeclSpecs;
61337
 
  friend class ::WinMemberExplSpec;
61338
 
  friend class ::WinTypeKeywords;
61339
 
  friend class ::PragmaOnceUnitState;
61340
 
  friend class ::PragmaOnce;
61341
 
  friend class ::CCExprResolve;
61342
 
  friend class ::CExprResolve;
61343
 
 
61344
 
public:
61345
 
  static const char *NodeId ();
61346
 
  const char *NodeName () const { return NodeId (); }
61347
 
  int Sons () const { return 0; }
61348
 
};
61349
 
 
61350
 
} // closed Puma
61351
 
class WinIfExists;
61352
 
class WinImportHandler;
61353
 
class WinMacros;
61354
 
class CMatchSyntax;
61355
 
class ExtGnu;
61356
 
class ExtAC;
61357
 
class ExtACBuilderCoupling;
61358
 
class ExtACSyntaxCoupling;
61359
 
class ExtACTree;
61360
 
class ExtACKeywords;
61361
 
class WinAsm;
61362
 
class WinDeclSpecs;
61363
 
class WinMemberExplSpec;
61364
 
class WinTypeKeywords;
61365
 
class PragmaOnceUnitState;
61366
 
class PragmaOnce;
61367
 
class CCExprResolve;
61368
 
class CExprResolve;
61369
 
namespace Puma {
61370
 
class CT_Token : public CTree {  friend class ::WinIfExists;
61371
 
  friend class ::WinImportHandler;
61372
 
  friend class ::WinMacros;
61373
 
  friend class ::CMatchSyntax;
61374
 
  friend class ::ExtGnu;
61375
 
  friend class ::ExtAC;
61376
 
  friend class ::ExtACBuilderCoupling;
61377
 
  friend class ::ExtACSyntaxCoupling;
61378
 
  friend class ::ExtACTree;
61379
 
  friend class ::ExtACKeywords;
61380
 
  friend class ::WinAsm;
61381
 
  friend class ::WinDeclSpecs;
61382
 
  friend class ::WinMemberExplSpec;
61383
 
  friend class ::WinTypeKeywords;
61384
 
  friend class ::PragmaOnceUnitState;
61385
 
  friend class ::PragmaOnce;
61386
 
  friend class ::CCExprResolve;
61387
 
  friend class ::CExprResolve;
61388
 
 
61389
 
  Token *_token;
61390
 
  unsigned long int _number;
61391
 
  
61392
 
public:
61393
 
  CT_Token (Token *t, unsigned long int n = 0) : 
61394
 
    _token (t), _number (n) {}
61395
 
  static const char *NodeId ();
61396
 
  const char *NodeName () const { return NodeId (); }
61397
 
  int Sons () const { return 0; }
61398
 
  Token *token () const { return _token; }
61399
 
  Token *end_token () const { return _token; }
61400
 
  CT_Token *token_node () const { return (CT_Token*)this; }
61401
 
  CT_Token *end_token_node () const { return (CT_Token*)this; }
61402
 
  void Number (unsigned long int n) { _number = n; }
61403
 
  unsigned long int Number () const { return _number; }
61404
 
  // special new / delete with reusing memory
61405
 
  void *operator new (size_t);
61406
 
  void  operator delete (void *);
61407
 
};
61408
 
 
61409
 
/*****************************************************************************/
61410
 
/*                                                                           */
61411
 
/*                              List nodes                                   */
61412
 
/*                                                                           */
61413
 
/*****************************************************************************/
61414
 
 
61415
 
} // closed Puma
61416
 
class WinIfExists;
61417
 
class WinImportHandler;
61418
 
class WinMacros;
61419
 
class CMatchSyntax;
61420
 
class ExtGnu;
61421
 
class ExtAC;
61422
 
class ExtACBuilderCoupling;
61423
 
class ExtACSyntaxCoupling;
61424
 
class ExtACTree;
61425
 
class ExtACKeywords;
61426
 
class WinAsm;
61427
 
class WinDeclSpecs;
61428
 
class WinMemberExplSpec;
61429
 
class WinTypeKeywords;
61430
 
class PragmaOnceUnitState;
61431
 
class PragmaOnce;
61432
 
class CCExprResolve;
61433
 
class CExprResolve;
61434
 
namespace Puma {
61435
 
class CT_List : public CTree {  friend class ::WinIfExists;
61436
 
  friend class ::WinImportHandler;
61437
 
  friend class ::WinMacros;
61438
 
  friend class ::CMatchSyntax;
61439
 
  friend class ::ExtGnu;
61440
 
  friend class ::ExtAC;
61441
 
  friend class ::ExtACBuilderCoupling;
61442
 
  friend class ::ExtACSyntaxCoupling;
61443
 
  friend class ::ExtACTree;
61444
 
  friend class ::ExtACKeywords;
61445
 
  friend class ::WinAsm;
61446
 
  friend class ::WinDeclSpecs;
61447
 
  friend class ::WinMemberExplSpec;
61448
 
  friend class ::WinTypeKeywords;
61449
 
  friend class ::PragmaOnceUnitState;
61450
 
  friend class ::PragmaOnce;
61451
 
  friend class ::CCExprResolve;
61452
 
  friend class ::CExprResolve;
61453
 
 
61454
 
  Array<CTree*> _sons;
61455
 
  int _properties;
61456
 
 
61457
 
protected:
61458
 
  CT_List(int size = 5, int incr = 5, int props = 0) : 
61459
 
    _sons (size, incr), _properties (props) {}
61460
 
 
61461
 
public:
61462
 
  enum {
61463
 
    OPEN = 1,         // has a start token like ':' in ":a(1),b(2)"
61464
 
    CLOSE = 2,
61465
 
    OPEN_CLOSE = 3,   // has opening and closing delimiters, e.g. '(' ')'
61466
 
    SEPARATORS = 4,   // the list has separators like ','
61467
 
    FORCE_EMPTY = 8,  // pretend to be empty, e.g. for "(void)"
61468
 
    END_SEP = 16,     // has separator after last element, e.g. "a,b,c,"
61469
 
    NO_LAST_SEP = 32, // no separator before last element, e.g. "(a,b...)"
61470
 
    INTRO = 64        // has an introduction char, e.g. "=" in "={a,b}"
61471
 
  };
61472
 
 
61473
 
  int Entries () const;
61474
 
  CTree *Entry (int no) const;
61475
 
  int Sons () const { return _sons.length (); }
61476
 
  CTree *Son (int n) const { return _sons.lookup (n); }
61477
 
  int GetProperties () const { return _properties; }
61478
 
  void AddProperties (int p) { _properties |= p; }
61479
 
  void AddSon (CTree *s) { if (s) _sons.append (s); }
61480
 
  void PrefixSon (CTree *s) { if (s) _sons.prepend (s); }
61481
 
  void InsertSon (CTree *, CTree *);  // before given son
61482
 
  void ReplaceSon (CTree *, CTree *);
61483
 
  void RemoveSon (CTree *);
61484
 
  void InsertSon (int idx, CTree *s)
61485
 
   { if (idx <= Sons ()) _sons.insert (idx, s); }
61486
 
  void ReplaceSon (int idx, CTree *s) 
61487
 
   { if (idx < Sons ()) _sons[idx] = s; }
61488
 
  void RemoveSon (int idx) 
61489
 
   { if (idx < Sons ()) _sons.remove (idx); }
61490
 
};
61491
 
 
61492
 
} // closed Puma
61493
 
class WinIfExists;
61494
 
class WinImportHandler;
61495
 
class WinMacros;
61496
 
class CMatchSyntax;
61497
 
class ExtGnu;
61498
 
class ExtAC;
61499
 
class ExtACBuilderCoupling;
61500
 
class ExtACSyntaxCoupling;
61501
 
class ExtACTree;
61502
 
class ExtACKeywords;
61503
 
class WinAsm;
61504
 
class WinDeclSpecs;
61505
 
class WinMemberExplSpec;
61506
 
class WinTypeKeywords;
61507
 
class PragmaOnceUnitState;
61508
 
class PragmaOnce;
61509
 
class CCExprResolve;
61510
 
class CExprResolve;
61511
 
namespace Puma {
61512
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
61513
 
  friend class ::WinImportHandler;
61514
 
  friend class ::WinMacros;
61515
 
  friend class ::CMatchSyntax;
61516
 
  friend class ::ExtGnu;
61517
 
  friend class ::ExtAC;
61518
 
  friend class ::ExtACBuilderCoupling;
61519
 
  friend class ::ExtACSyntaxCoupling;
61520
 
  friend class ::ExtACTree;
61521
 
  friend class ::ExtACKeywords;
61522
 
  friend class ::WinAsm;
61523
 
  friend class ::WinDeclSpecs;
61524
 
  friend class ::WinMemberExplSpec;
61525
 
  friend class ::WinTypeKeywords;
61526
 
  friend class ::PragmaOnceUnitState;
61527
 
  friend class ::PragmaOnce;
61528
 
  friend class ::CCExprResolve;
61529
 
  friend class ::CExprResolve;
61530
 
 
61531
 
public:
61532
 
  CT_ExprList () { AddProperties (SEPARATORS); }
61533
 
  static const char *NodeId ();
61534
 
  const char *NodeName () const { return NodeId (); }
61535
 
 
61536
 
  CTypeInfo *Type () const { return type; }
61537
 
  CExprValue *Value () const { return value; }
61538
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
61539
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
61540
 
};
61541
 
 
61542
 
} // closed Puma
61543
 
class WinIfExists;
61544
 
class WinImportHandler;
61545
 
class WinMacros;
61546
 
class CMatchSyntax;
61547
 
class ExtGnu;
61548
 
class ExtAC;
61549
 
class ExtACBuilderCoupling;
61550
 
class ExtACSyntaxCoupling;
61551
 
class ExtACTree;
61552
 
class ExtACKeywords;
61553
 
class WinAsm;
61554
 
class WinDeclSpecs;
61555
 
class WinMemberExplSpec;
61556
 
class WinTypeKeywords;
61557
 
class PragmaOnceUnitState;
61558
 
class PragmaOnce;
61559
 
class CCExprResolve;
61560
 
class CExprResolve;
61561
 
namespace Puma {
61562
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
61563
 
  friend class ::WinImportHandler;
61564
 
  friend class ::WinMacros;
61565
 
  friend class ::CMatchSyntax;
61566
 
  friend class ::ExtGnu;
61567
 
  friend class ::ExtAC;
61568
 
  friend class ::ExtACBuilderCoupling;
61569
 
  friend class ::ExtACSyntaxCoupling;
61570
 
  friend class ::ExtACTree;
61571
 
  friend class ::ExtACKeywords;
61572
 
  friend class ::WinAsm;
61573
 
  friend class ::WinDeclSpecs;
61574
 
  friend class ::WinMemberExplSpec;
61575
 
  friend class ::WinTypeKeywords;
61576
 
  friend class ::PragmaOnceUnitState;
61577
 
  friend class ::PragmaOnce;
61578
 
  friend class ::CCExprResolve;
61579
 
  friend class ::CExprResolve;
61580
 
 
61581
 
public:
61582
 
  static const char *NodeId ();
61583
 
  const char *NodeName () const { return NodeId (); }
61584
 
};
61585
 
 
61586
 
} // closed Puma
61587
 
class WinIfExists;
61588
 
class WinImportHandler;
61589
 
class WinMacros;
61590
 
class CMatchSyntax;
61591
 
class ExtGnu;
61592
 
class ExtAC;
61593
 
class ExtACBuilderCoupling;
61594
 
class ExtACSyntaxCoupling;
61595
 
class ExtACTree;
61596
 
class ExtACKeywords;
61597
 
class WinAsm;
61598
 
class WinDeclSpecs;
61599
 
class WinMemberExplSpec;
61600
 
class WinTypeKeywords;
61601
 
class PragmaOnceUnitState;
61602
 
class PragmaOnce;
61603
 
class CCExprResolve;
61604
 
class CExprResolve;
61605
 
namespace Puma {
61606
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
61607
 
  friend class ::WinImportHandler;
61608
 
  friend class ::WinMacros;
61609
 
  friend class ::CMatchSyntax;
61610
 
  friend class ::ExtGnu;
61611
 
  friend class ::ExtAC;
61612
 
  friend class ::ExtACBuilderCoupling;
61613
 
  friend class ::ExtACSyntaxCoupling;
61614
 
  friend class ::ExtACTree;
61615
 
  friend class ::ExtACKeywords;
61616
 
  friend class ::WinAsm;
61617
 
  friend class ::WinDeclSpecs;
61618
 
  friend class ::WinMemberExplSpec;
61619
 
  friend class ::WinTypeKeywords;
61620
 
  friend class ::PragmaOnceUnitState;
61621
 
  friend class ::PragmaOnce;
61622
 
  friend class ::CCExprResolve;
61623
 
  friend class ::CExprResolve;
61624
 
 
61625
 
public:
61626
 
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
61627
 
  static const char *NodeId ();
61628
 
  const char *NodeName () const { return NodeId (); }
61629
 
};
61630
 
   
61631
 
} // closed Puma
61632
 
class WinIfExists;
61633
 
class WinImportHandler;
61634
 
class WinMacros;
61635
 
class CMatchSyntax;
61636
 
class ExtGnu;
61637
 
class ExtAC;
61638
 
class ExtACBuilderCoupling;
61639
 
class ExtACSyntaxCoupling;
61640
 
class ExtACTree;
61641
 
class ExtACKeywords;
61642
 
class WinAsm;
61643
 
class WinDeclSpecs;
61644
 
class WinMemberExplSpec;
61645
 
class WinTypeKeywords;
61646
 
class PragmaOnceUnitState;
61647
 
class PragmaOnce;
61648
 
class CCExprResolve;
61649
 
class CExprResolve;
61650
 
namespace Puma {
61651
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
61652
 
  friend class ::WinImportHandler;
61653
 
  friend class ::WinMacros;
61654
 
  friend class ::CMatchSyntax;
61655
 
  friend class ::ExtGnu;
61656
 
  friend class ::ExtAC;
61657
 
  friend class ::ExtACBuilderCoupling;
61658
 
  friend class ::ExtACSyntaxCoupling;
61659
 
  friend class ::ExtACTree;
61660
 
  friend class ::ExtACKeywords;
61661
 
  friend class ::WinAsm;
61662
 
  friend class ::WinDeclSpecs;
61663
 
  friend class ::WinMemberExplSpec;
61664
 
  friend class ::WinTypeKeywords;
61665
 
  friend class ::PragmaOnceUnitState;
61666
 
  friend class ::PragmaOnce;
61667
 
  friend class ::CCExprResolve;
61668
 
  friend class ::CExprResolve;
61669
 
 
61670
 
public:
61671
 
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
61672
 
  static const char *NodeId ();
61673
 
  const char *NodeName () const { return NodeId (); }
61674
 
  void Linkage (CT_LinkageSpec *l);
61675
 
};
61676
 
 
61677
 
} // closed Puma
61678
 
class WinIfExists;
61679
 
class WinImportHandler;
61680
 
class WinMacros;
61681
 
class CMatchSyntax;
61682
 
class ExtGnu;
61683
 
class ExtAC;
61684
 
class ExtACBuilderCoupling;
61685
 
class ExtACSyntaxCoupling;
61686
 
class ExtACTree;
61687
 
class ExtACKeywords;
61688
 
class WinAsm;
61689
 
class WinDeclSpecs;
61690
 
class WinMemberExplSpec;
61691
 
class WinTypeKeywords;
61692
 
class PragmaOnceUnitState;
61693
 
class PragmaOnce;
61694
 
class CCExprResolve;
61695
 
class CExprResolve;
61696
 
namespace Puma {
61697
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
61698
 
  friend class ::WinImportHandler;
61699
 
  friend class ::WinMacros;
61700
 
  friend class ::CMatchSyntax;
61701
 
  friend class ::ExtGnu;
61702
 
  friend class ::ExtAC;
61703
 
  friend class ::ExtACBuilderCoupling;
61704
 
  friend class ::ExtACSyntaxCoupling;
61705
 
  friend class ::ExtACTree;
61706
 
  friend class ::ExtACKeywords;
61707
 
  friend class ::WinAsm;
61708
 
  friend class ::WinDeclSpecs;
61709
 
  friend class ::WinMemberExplSpec;
61710
 
  friend class ::WinTypeKeywords;
61711
 
  friend class ::PragmaOnceUnitState;
61712
 
  friend class ::PragmaOnce;
61713
 
  friend class ::CCExprResolve;
61714
 
  friend class ::CExprResolve;
61715
 
 
61716
 
public:
61717
 
  static const char *NodeId ();
61718
 
  const char *NodeName () const { return NodeId (); }
61719
 
};
61720
 
 
61721
 
} // closed Puma
61722
 
class WinIfExists;
61723
 
class WinImportHandler;
61724
 
class WinMacros;
61725
 
class CMatchSyntax;
61726
 
class ExtGnu;
61727
 
class ExtAC;
61728
 
class ExtACBuilderCoupling;
61729
 
class ExtACSyntaxCoupling;
61730
 
class ExtACTree;
61731
 
class ExtACKeywords;
61732
 
class WinAsm;
61733
 
class WinDeclSpecs;
61734
 
class WinMemberExplSpec;
61735
 
class WinTypeKeywords;
61736
 
class PragmaOnceUnitState;
61737
 
class PragmaOnce;
61738
 
class CCExprResolve;
61739
 
class CExprResolve;
61740
 
namespace Puma {
61741
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
61742
 
  friend class ::WinImportHandler;
61743
 
  friend class ::WinMacros;
61744
 
  friend class ::CMatchSyntax;
61745
 
  friend class ::ExtGnu;
61746
 
  friend class ::ExtAC;
61747
 
  friend class ::ExtACBuilderCoupling;
61748
 
  friend class ::ExtACSyntaxCoupling;
61749
 
  friend class ::ExtACTree;
61750
 
  friend class ::ExtACKeywords;
61751
 
  friend class ::WinAsm;
61752
 
  friend class ::WinDeclSpecs;
61753
 
  friend class ::WinMemberExplSpec;
61754
 
  friend class ::WinTypeKeywords;
61755
 
  friend class ::PragmaOnceUnitState;
61756
 
  friend class ::PragmaOnce;
61757
 
  friend class ::CCExprResolve;
61758
 
  friend class ::CExprResolve;
61759
 
 
61760
 
public:
61761
 
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
61762
 
  static const char *NodeId ();
61763
 
  const char *NodeName () const { return NodeId (); }
61764
 
};
61765
 
 
61766
 
} // closed Puma
61767
 
class WinIfExists;
61768
 
class WinImportHandler;
61769
 
class WinMacros;
61770
 
class CMatchSyntax;
61771
 
class ExtGnu;
61772
 
class ExtAC;
61773
 
class ExtACBuilderCoupling;
61774
 
class ExtACSyntaxCoupling;
61775
 
class ExtACTree;
61776
 
class ExtACKeywords;
61777
 
class WinAsm;
61778
 
class WinDeclSpecs;
61779
 
class WinMemberExplSpec;
61780
 
class WinTypeKeywords;
61781
 
class PragmaOnceUnitState;
61782
 
class PragmaOnce;
61783
 
class CCExprResolve;
61784
 
class CExprResolve;
61785
 
namespace Puma {
61786
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
61787
 
  friend class ::WinImportHandler;
61788
 
  friend class ::WinMacros;
61789
 
  friend class ::CMatchSyntax;
61790
 
  friend class ::ExtGnu;
61791
 
  friend class ::ExtAC;
61792
 
  friend class ::ExtACBuilderCoupling;
61793
 
  friend class ::ExtACSyntaxCoupling;
61794
 
  friend class ::ExtACTree;
61795
 
  friend class ::ExtACKeywords;
61796
 
  friend class ::WinAsm;
61797
 
  friend class ::WinDeclSpecs;
61798
 
  friend class ::WinMemberExplSpec;
61799
 
  friend class ::WinTypeKeywords;
61800
 
  friend class ::PragmaOnceUnitState;
61801
 
  friend class ::PragmaOnce;
61802
 
  friend class ::CCExprResolve;
61803
 
  friend class ::CExprResolve;
61804
 
 
61805
 
public:
61806
 
  static const char *NodeId ();
61807
 
  const char *NodeName () const { return NodeId (); }
61808
 
};
61809
 
 
61810
 
} // closed Puma
61811
 
class WinIfExists;
61812
 
class WinImportHandler;
61813
 
class WinMacros;
61814
 
class CMatchSyntax;
61815
 
class ExtGnu;
61816
 
class ExtAC;
61817
 
class ExtACBuilderCoupling;
61818
 
class ExtACSyntaxCoupling;
61819
 
class ExtACTree;
61820
 
class ExtACKeywords;
61821
 
class WinAsm;
61822
 
class WinDeclSpecs;
61823
 
class WinMemberExplSpec;
61824
 
class WinTypeKeywords;
61825
 
class PragmaOnceUnitState;
61826
 
class PragmaOnce;
61827
 
class CCExprResolve;
61828
 
class CExprResolve;
61829
 
namespace Puma {
61830
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
61831
 
  friend class ::WinImportHandler;
61832
 
  friend class ::WinMacros;
61833
 
  friend class ::CMatchSyntax;
61834
 
  friend class ::ExtGnu;
61835
 
  friend class ::ExtAC;
61836
 
  friend class ::ExtACBuilderCoupling;
61837
 
  friend class ::ExtACSyntaxCoupling;
61838
 
  friend class ::ExtACTree;
61839
 
  friend class ::ExtACKeywords;
61840
 
  friend class ::WinAsm;
61841
 
  friend class ::WinDeclSpecs;
61842
 
  friend class ::WinMemberExplSpec;
61843
 
  friend class ::WinTypeKeywords;
61844
 
  friend class ::PragmaOnceUnitState;
61845
 
  friend class ::PragmaOnce;
61846
 
  friend class ::CCExprResolve;
61847
 
  friend class ::CExprResolve;
61848
 
 
61849
 
public:
61850
 
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
61851
 
  static const char *NodeId ();
61852
 
  const char *NodeName () const { return NodeId (); }
61853
 
};
61854
 
 
61855
 
} // closed Puma
61856
 
class WinIfExists;
61857
 
class WinImportHandler;
61858
 
class WinMacros;
61859
 
class CMatchSyntax;
61860
 
class ExtGnu;
61861
 
class ExtAC;
61862
 
class ExtACBuilderCoupling;
61863
 
class ExtACSyntaxCoupling;
61864
 
class ExtACTree;
61865
 
class ExtACKeywords;
61866
 
class WinAsm;
61867
 
class WinDeclSpecs;
61868
 
class WinMemberExplSpec;
61869
 
class WinTypeKeywords;
61870
 
class PragmaOnceUnitState;
61871
 
class PragmaOnce;
61872
 
class CCExprResolve;
61873
 
class CExprResolve;
61874
 
namespace Puma {
61875
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
61876
 
  friend class ::WinImportHandler;
61877
 
  friend class ::WinMacros;
61878
 
  friend class ::CMatchSyntax;
61879
 
  friend class ::ExtGnu;
61880
 
  friend class ::ExtAC;
61881
 
  friend class ::ExtACBuilderCoupling;
61882
 
  friend class ::ExtACSyntaxCoupling;
61883
 
  friend class ::ExtACTree;
61884
 
  friend class ::ExtACKeywords;
61885
 
  friend class ::WinAsm;
61886
 
  friend class ::WinDeclSpecs;
61887
 
  friend class ::WinMemberExplSpec;
61888
 
  friend class ::WinTypeKeywords;
61889
 
  friend class ::PragmaOnceUnitState;
61890
 
  friend class ::PragmaOnce;
61891
 
  friend class ::CCExprResolve;
61892
 
  friend class ::CExprResolve;
61893
 
 
61894
 
public:
61895
 
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
61896
 
  static const char *NodeId ();
61897
 
  const char *NodeName () const { return NodeId (); }
61898
 
};
61899
 
 
61900
 
/*****************************************************************************/
61901
 
/*                                                                           */
61902
 
/*                              Expressions                                  */
61903
 
/*                                                                           */
61904
 
/*****************************************************************************/
61905
 
 
61906
 
} // closed Puma
61907
 
class WinIfExists;
61908
 
class WinImportHandler;
61909
 
class WinMacros;
61910
 
class CMatchSyntax;
61911
 
class ExtGnu;
61912
 
class ExtAC;
61913
 
class ExtACBuilderCoupling;
61914
 
class ExtACSyntaxCoupling;
61915
 
class ExtACTree;
61916
 
class ExtACKeywords;
61917
 
class WinAsm;
61918
 
class WinDeclSpecs;
61919
 
class WinMemberExplSpec;
61920
 
class WinTypeKeywords;
61921
 
class PragmaOnceUnitState;
61922
 
class PragmaOnce;
61923
 
class CCExprResolve;
61924
 
class CExprResolve;
61925
 
namespace Puma {
61926
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
61927
 
  friend class ::WinImportHandler;
61928
 
  friend class ::WinMacros;
61929
 
  friend class ::CMatchSyntax;
61930
 
  friend class ::ExtGnu;
61931
 
  friend class ::ExtAC;
61932
 
  friend class ::ExtACBuilderCoupling;
61933
 
  friend class ::ExtACSyntaxCoupling;
61934
 
  friend class ::ExtACTree;
61935
 
  friend class ::ExtACKeywords;
61936
 
  friend class ::WinAsm;
61937
 
  friend class ::WinDeclSpecs;
61938
 
  friend class ::WinMemberExplSpec;
61939
 
  friend class ::WinTypeKeywords;
61940
 
  friend class ::PragmaOnceUnitState;
61941
 
  friend class ::PragmaOnce;
61942
 
  friend class ::CCExprResolve;
61943
 
  friend class ::CExprResolve;
61944
 
 
61945
 
protected:
61946
 
  CT_Expression () {}
61947
 
 
61948
 
public:
61949
 
  static const char *NodeId ();
61950
 
  const char *NodeName () const { return NodeId (); }
61951
 
  CTypeInfo *Type () const { return type; }
61952
 
  CExprValue *Value () const { return value; }
61953
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
61954
 
   private:
61955
 
  typedef CT_Expression CCExprResolveExpr;
61956
 
 public :
61957
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
61958
 
  typedef CT_Expression CExprResolveExpr;
61959
 
 public :
61960
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
61961
 
 
61962
 
} // closed Puma
61963
 
class WinIfExists;
61964
 
class WinImportHandler;
61965
 
class WinMacros;
61966
 
class CMatchSyntax;
61967
 
class ExtGnu;
61968
 
class ExtAC;
61969
 
class ExtACBuilderCoupling;
61970
 
class ExtACSyntaxCoupling;
61971
 
class ExtACTree;
61972
 
class ExtACKeywords;
61973
 
class WinAsm;
61974
 
class WinDeclSpecs;
61975
 
class WinMemberExplSpec;
61976
 
class WinTypeKeywords;
61977
 
class PragmaOnceUnitState;
61978
 
class PragmaOnce;
61979
 
class CCExprResolve;
61980
 
class CExprResolve;
61981
 
namespace Puma {
61982
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
61983
 
  friend class ::WinImportHandler;
61984
 
  friend class ::WinMacros;
61985
 
  friend class ::CMatchSyntax;
61986
 
  friend class ::ExtGnu;
61987
 
  friend class ::ExtAC;
61988
 
  friend class ::ExtACBuilderCoupling;
61989
 
  friend class ::ExtACSyntaxCoupling;
61990
 
  friend class ::ExtACTree;
61991
 
  friend class ::ExtACKeywords;
61992
 
  friend class ::WinAsm;
61993
 
  friend class ::WinDeclSpecs;
61994
 
  friend class ::WinMemberExplSpec;
61995
 
  friend class ::WinTypeKeywords;
61996
 
  friend class ::PragmaOnceUnitState;
61997
 
  friend class ::PragmaOnce;
61998
 
  friend class ::CCExprResolve;
61999
 
  friend class ::CExprResolve;
62000
 
 
62001
 
public:
62002
 
  CT_String (int size) : CT_List (size, 1) {}
62003
 
  static const char *NodeId ();
62004
 
  const char *NodeName () const { return NodeId (); }
62005
 
 
62006
 
  CTypeInfo *Type () const { return type; }
62007
 
  CExprValue *Value () const { return value; }
62008
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
62009
 
   private:
62010
 
  typedef CT_String CCExprResolveExpr;
62011
 
 public :
62012
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62013
 
  typedef CT_String CExprResolveExpr;
62014
 
 public :
62015
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62016
 
 
62017
 
} // closed Puma
62018
 
class WinIfExists;
62019
 
class WinImportHandler;
62020
 
class WinMacros;
62021
 
class CMatchSyntax;
62022
 
class ExtGnu;
62023
 
class ExtAC;
62024
 
class ExtACBuilderCoupling;
62025
 
class ExtACSyntaxCoupling;
62026
 
class ExtACTree;
62027
 
class ExtACKeywords;
62028
 
class WinAsm;
62029
 
class WinDeclSpecs;
62030
 
class WinMemberExplSpec;
62031
 
class WinTypeKeywords;
62032
 
class PragmaOnceUnitState;
62033
 
class PragmaOnce;
62034
 
class CCExprResolve;
62035
 
class CExprResolve;
62036
 
namespace Puma {
62037
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
62038
 
  friend class ::WinImportHandler;
62039
 
  friend class ::WinMacros;
62040
 
  friend class ::CMatchSyntax;
62041
 
  friend class ::ExtGnu;
62042
 
  friend class ::ExtAC;
62043
 
  friend class ::ExtACBuilderCoupling;
62044
 
  friend class ::ExtACSyntaxCoupling;
62045
 
  friend class ::ExtACTree;
62046
 
  friend class ::ExtACKeywords;
62047
 
  friend class ::WinAsm;
62048
 
  friend class ::WinDeclSpecs;
62049
 
  friend class ::WinMemberExplSpec;
62050
 
  friend class ::WinTypeKeywords;
62051
 
  friend class ::PragmaOnceUnitState;
62052
 
  friend class ::PragmaOnce;
62053
 
  friend class ::CCExprResolve;
62054
 
  friend class ::CExprResolve;
62055
 
 
62056
 
public:
62057
 
  CT_WideString (int size) : CT_String (size) {}
62058
 
  static const char *NodeId ();
62059
 
  const char *NodeName () const { return NodeId (); }
62060
 
   private:
62061
 
  typedef CT_WideString CCExprResolveExpr;
62062
 
 public :
62063
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62064
 
  typedef CT_WideString CExprResolveExpr;
62065
 
 public :
62066
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62067
 
 
62068
 
} // closed Puma
62069
 
class WinIfExists;
62070
 
class WinImportHandler;
62071
 
class WinMacros;
62072
 
class CMatchSyntax;
62073
 
class ExtGnu;
62074
 
class ExtAC;
62075
 
class ExtACBuilderCoupling;
62076
 
class ExtACSyntaxCoupling;
62077
 
class ExtACTree;
62078
 
class ExtACKeywords;
62079
 
class WinAsm;
62080
 
class WinDeclSpecs;
62081
 
class WinMemberExplSpec;
62082
 
class WinTypeKeywords;
62083
 
class PragmaOnceUnitState;
62084
 
class PragmaOnce;
62085
 
class CCExprResolve;
62086
 
class CExprResolve;
62087
 
namespace Puma {
62088
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
62089
 
  friend class ::WinImportHandler;
62090
 
  friend class ::WinMacros;
62091
 
  friend class ::CMatchSyntax;
62092
 
  friend class ::ExtGnu;
62093
 
  friend class ::ExtAC;
62094
 
  friend class ::ExtACBuilderCoupling;
62095
 
  friend class ::ExtACSyntaxCoupling;
62096
 
  friend class ::ExtACTree;
62097
 
  friend class ::ExtACKeywords;
62098
 
  friend class ::WinAsm;
62099
 
  friend class ::WinDeclSpecs;
62100
 
  friend class ::WinMemberExplSpec;
62101
 
  friend class ::WinTypeKeywords;
62102
 
  friend class ::PragmaOnceUnitState;
62103
 
  friend class ::PragmaOnce;
62104
 
  friend class ::CCExprResolve;
62105
 
  friend class ::CExprResolve;
62106
 
 
62107
 
  CTree *_value;  // CT_Token
62108
 
 
62109
 
public:
62110
 
  CT_Integer (CTree *t) : _value (t) {}
62111
 
  static const char *NodeId ();
62112
 
  const char *NodeName () const { return NodeId (); }
62113
 
  int Sons () const { return _value ? 1 : 0; }
62114
 
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
62115
 
  void ReplaceSon (CTree *old_son, CTree *new_son) 
62116
 
   { if (old_son == _value) _value = new_son; }
62117
 
   private:
62118
 
  typedef CT_Integer CCExprResolveExpr;
62119
 
 public :
62120
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62121
 
  typedef CT_Integer CExprResolveExpr;
62122
 
 public :
62123
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62124
 
 
62125
 
} // closed Puma
62126
 
class WinIfExists;
62127
 
class WinImportHandler;
62128
 
class WinMacros;
62129
 
class CMatchSyntax;
62130
 
class ExtGnu;
62131
 
class ExtAC;
62132
 
class ExtACBuilderCoupling;
62133
 
class ExtACSyntaxCoupling;
62134
 
class ExtACTree;
62135
 
class ExtACKeywords;
62136
 
class WinAsm;
62137
 
class WinDeclSpecs;
62138
 
class WinMemberExplSpec;
62139
 
class WinTypeKeywords;
62140
 
class PragmaOnceUnitState;
62141
 
class PragmaOnce;
62142
 
class CCExprResolve;
62143
 
class CExprResolve;
62144
 
namespace Puma {
62145
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
62146
 
  friend class ::WinImportHandler;
62147
 
  friend class ::WinMacros;
62148
 
  friend class ::CMatchSyntax;
62149
 
  friend class ::ExtGnu;
62150
 
  friend class ::ExtAC;
62151
 
  friend class ::ExtACBuilderCoupling;
62152
 
  friend class ::ExtACSyntaxCoupling;
62153
 
  friend class ::ExtACTree;
62154
 
  friend class ::ExtACKeywords;
62155
 
  friend class ::WinAsm;
62156
 
  friend class ::WinDeclSpecs;
62157
 
  friend class ::WinMemberExplSpec;
62158
 
  friend class ::WinTypeKeywords;
62159
 
  friend class ::PragmaOnceUnitState;
62160
 
  friend class ::PragmaOnce;
62161
 
  friend class ::CCExprResolve;
62162
 
  friend class ::CExprResolve;
62163
 
 
62164
 
  CTree *_value;  // CT_Token
62165
 
 
62166
 
public:
62167
 
  CT_Character (CTree *t) : _value (t) {}
62168
 
  static const char *NodeId ();
62169
 
  const char *NodeName () const { return NodeId (); }
62170
 
  int Sons () const { return 1; }
62171
 
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
62172
 
  void ReplaceSon (CTree *old_son, CTree *new_son) 
62173
 
   { if (old_son == _value) _value = new_son; }
62174
 
   private:
62175
 
  typedef CT_Character CCExprResolveExpr;
62176
 
 public :
62177
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62178
 
  typedef CT_Character CExprResolveExpr;
62179
 
 public :
62180
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62181
 
 
62182
 
} // closed Puma
62183
 
class WinIfExists;
62184
 
class WinImportHandler;
62185
 
class WinMacros;
62186
 
class CMatchSyntax;
62187
 
class ExtGnu;
62188
 
class ExtAC;
62189
 
class ExtACBuilderCoupling;
62190
 
class ExtACSyntaxCoupling;
62191
 
class ExtACTree;
62192
 
class ExtACKeywords;
62193
 
class WinAsm;
62194
 
class WinDeclSpecs;
62195
 
class WinMemberExplSpec;
62196
 
class WinTypeKeywords;
62197
 
class PragmaOnceUnitState;
62198
 
class PragmaOnce;
62199
 
class CCExprResolve;
62200
 
class CExprResolve;
62201
 
namespace Puma {
62202
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
62203
 
  friend class ::WinImportHandler;
62204
 
  friend class ::WinMacros;
62205
 
  friend class ::CMatchSyntax;
62206
 
  friend class ::ExtGnu;
62207
 
  friend class ::ExtAC;
62208
 
  friend class ::ExtACBuilderCoupling;
62209
 
  friend class ::ExtACSyntaxCoupling;
62210
 
  friend class ::ExtACTree;
62211
 
  friend class ::ExtACKeywords;
62212
 
  friend class ::WinAsm;
62213
 
  friend class ::WinDeclSpecs;
62214
 
  friend class ::WinMemberExplSpec;
62215
 
  friend class ::WinTypeKeywords;
62216
 
  friend class ::PragmaOnceUnitState;
62217
 
  friend class ::PragmaOnce;
62218
 
  friend class ::CCExprResolve;
62219
 
  friend class ::CExprResolve;
62220
 
 
62221
 
  CTree *_value;  // CT_Token
62222
 
 
62223
 
public:
62224
 
  CT_WideCharacter (CTree *t) : CT_Character (t) {}
62225
 
  static const char *NodeId ();
62226
 
  const char *NodeName () const { return NodeId (); }
62227
 
  void ReplaceSon (CTree *old_son, CTree *new_son) 
62228
 
   { if (old_son == _value) _value = new_son; }
62229
 
   private:
62230
 
  typedef CT_WideCharacter CCExprResolveExpr;
62231
 
 public :
62232
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62233
 
  typedef CT_WideCharacter CExprResolveExpr;
62234
 
 public :
62235
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62236
 
 
62237
 
} // closed Puma
62238
 
class WinIfExists;
62239
 
class WinImportHandler;
62240
 
class WinMacros;
62241
 
class CMatchSyntax;
62242
 
class ExtGnu;
62243
 
class ExtAC;
62244
 
class ExtACBuilderCoupling;
62245
 
class ExtACSyntaxCoupling;
62246
 
class ExtACTree;
62247
 
class ExtACKeywords;
62248
 
class WinAsm;
62249
 
class WinDeclSpecs;
62250
 
class WinMemberExplSpec;
62251
 
class WinTypeKeywords;
62252
 
class PragmaOnceUnitState;
62253
 
class PragmaOnce;
62254
 
class CCExprResolve;
62255
 
class CExprResolve;
62256
 
namespace Puma {
62257
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
62258
 
  friend class ::WinImportHandler;
62259
 
  friend class ::WinMacros;
62260
 
  friend class ::CMatchSyntax;
62261
 
  friend class ::ExtGnu;
62262
 
  friend class ::ExtAC;
62263
 
  friend class ::ExtACBuilderCoupling;
62264
 
  friend class ::ExtACSyntaxCoupling;
62265
 
  friend class ::ExtACTree;
62266
 
  friend class ::ExtACKeywords;
62267
 
  friend class ::WinAsm;
62268
 
  friend class ::WinDeclSpecs;
62269
 
  friend class ::WinMemberExplSpec;
62270
 
  friend class ::WinTypeKeywords;
62271
 
  friend class ::PragmaOnceUnitState;
62272
 
  friend class ::PragmaOnce;
62273
 
  friend class ::CCExprResolve;
62274
 
  friend class ::CExprResolve;
62275
 
 
62276
 
  CTree *_value;  // CT_Token
62277
 
 
62278
 
public:
62279
 
  CT_Float (CTree *t) : _value (t) {}
62280
 
  static const char *NodeId ();
62281
 
  const char *NodeName () const { return NodeId (); }
62282
 
  int Sons () const { return 1; }
62283
 
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
62284
 
  void ReplaceSon (CTree *old_son, CTree *new_son) 
62285
 
   { if (old_son == _value) _value = new_son; }
62286
 
   private:
62287
 
  typedef CT_Float CCExprResolveExpr;
62288
 
 public :
62289
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62290
 
  typedef CT_Float CExprResolveExpr;
62291
 
 public :
62292
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62293
 
 
62294
 
} // closed Puma
62295
 
class WinIfExists;
62296
 
class WinImportHandler;
62297
 
class WinMacros;
62298
 
class CMatchSyntax;
62299
 
class ExtGnu;
62300
 
class ExtAC;
62301
 
class ExtACBuilderCoupling;
62302
 
class ExtACSyntaxCoupling;
62303
 
class ExtACTree;
62304
 
class ExtACKeywords;
62305
 
class WinAsm;
62306
 
class WinDeclSpecs;
62307
 
class WinMemberExplSpec;
62308
 
class WinTypeKeywords;
62309
 
class PragmaOnceUnitState;
62310
 
class PragmaOnce;
62311
 
class CCExprResolve;
62312
 
class CExprResolve;
62313
 
namespace Puma {
62314
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
62315
 
  friend class ::WinImportHandler;
62316
 
  friend class ::WinMacros;
62317
 
  friend class ::CMatchSyntax;
62318
 
  friend class ::ExtGnu;
62319
 
  friend class ::ExtAC;
62320
 
  friend class ::ExtACBuilderCoupling;
62321
 
  friend class ::ExtACSyntaxCoupling;
62322
 
  friend class ::ExtACTree;
62323
 
  friend class ::ExtACKeywords;
62324
 
  friend class ::WinAsm;
62325
 
  friend class ::WinDeclSpecs;
62326
 
  friend class ::WinMemberExplSpec;
62327
 
  friend class ::WinTypeKeywords;
62328
 
  friend class ::PragmaOnceUnitState;
62329
 
  friend class ::PragmaOnce;
62330
 
  friend class ::CCExprResolve;
62331
 
  friend class ::CExprResolve;
62332
 
 
62333
 
  CTree *_value;  // CT_Token
62334
 
 
62335
 
public:
62336
 
  CT_Bool (CTree *t) : _value (t) {}
62337
 
  static const char *NodeId ();
62338
 
  const char *NodeName () const { return NodeId (); }
62339
 
  int Sons () const { return 1; }
62340
 
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
62341
 
  void ReplaceSon (CTree *old_son, CTree *new_son) 
62342
 
   { if (old_son == _value) _value = new_son; }
62343
 
   private:
62344
 
  typedef CT_Bool CCExprResolveExpr;
62345
 
 public :
62346
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62347
 
  typedef CT_Bool CExprResolveExpr;
62348
 
 public :
62349
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62350
 
 
62351
 
} // closed Puma
62352
 
class WinIfExists;
62353
 
class WinImportHandler;
62354
 
class WinMacros;
62355
 
class CMatchSyntax;
62356
 
class ExtGnu;
62357
 
class ExtAC;
62358
 
class ExtACBuilderCoupling;
62359
 
class ExtACSyntaxCoupling;
62360
 
class ExtACTree;
62361
 
class ExtACKeywords;
62362
 
class WinAsm;
62363
 
class WinDeclSpecs;
62364
 
class WinMemberExplSpec;
62365
 
class WinTypeKeywords;
62366
 
class PragmaOnceUnitState;
62367
 
class PragmaOnce;
62368
 
class CCExprResolve;
62369
 
class CExprResolve;
62370
 
namespace Puma {
62371
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
62372
 
  friend class ::WinImportHandler;
62373
 
  friend class ::WinMacros;
62374
 
  friend class ::CMatchSyntax;
62375
 
  friend class ::ExtGnu;
62376
 
  friend class ::ExtAC;
62377
 
  friend class ::ExtACBuilderCoupling;
62378
 
  friend class ::ExtACSyntaxCoupling;
62379
 
  friend class ::ExtACTree;
62380
 
  friend class ::ExtACKeywords;
62381
 
  friend class ::WinAsm;
62382
 
  friend class ::WinDeclSpecs;
62383
 
  friend class ::WinMemberExplSpec;
62384
 
  friend class ::WinTypeKeywords;
62385
 
  friend class ::PragmaOnceUnitState;
62386
 
  friend class ::PragmaOnce;
62387
 
  friend class ::CCExprResolve;
62388
 
  friend class ::CExprResolve;
62389
 
 
62390
 
  CTree *sons[3]; // open, expr, close
62391
 
 
62392
 
public:
62393
 
  CT_BracedExpr (CTree *o, CTree *e, CTree *c) { 
62394
 
    sons[0] = o; sons[1] = e; sons[2] = c; 
62395
 
  }
62396
 
  static const char *NodeId ();
62397
 
  const char *NodeName () const { return NodeId (); }
62398
 
  int Sons () const { return 3; }
62399
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
62400
 
  CTree *Expr () const { return sons[1]; }
62401
 
  CTypeInfo *Type () const { return Expr ()->Type (); }
62402
 
  CExprValue *Value () const { return Expr ()->Value (); }
62403
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
62404
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
62405
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
62406
 
  }
62407
 
   private:
62408
 
  typedef CT_BracedExpr CCExprResolveExpr;
62409
 
 public :
62410
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62411
 
  typedef CT_BracedExpr CExprResolveExpr;
62412
 
 public :
62413
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62414
 
 
62415
 
} // closed Puma
62416
 
class WinIfExists;
62417
 
class WinImportHandler;
62418
 
class WinMacros;
62419
 
class CMatchSyntax;
62420
 
class ExtGnu;
62421
 
class ExtAC;
62422
 
class ExtACBuilderCoupling;
62423
 
class ExtACSyntaxCoupling;
62424
 
class ExtACTree;
62425
 
class ExtACKeywords;
62426
 
class WinAsm;
62427
 
class WinDeclSpecs;
62428
 
class WinMemberExplSpec;
62429
 
class WinTypeKeywords;
62430
 
class PragmaOnceUnitState;
62431
 
class PragmaOnce;
62432
 
class CCExprResolve;
62433
 
class CExprResolve;
62434
 
namespace Puma {
62435
 
class CT_SimpleName : public CT_List, public Printable, 
62436
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
62437
 
  friend class ::WinImportHandler;
62438
 
  friend class ::WinMacros;
62439
 
  friend class ::CMatchSyntax;
62440
 
  friend class ::ExtGnu;
62441
 
  friend class ::ExtAC;
62442
 
  friend class ::ExtACBuilderCoupling;
62443
 
  friend class ::ExtACSyntaxCoupling;
62444
 
  friend class ::ExtACTree;
62445
 
  friend class ::ExtACKeywords;
62446
 
  friend class ::WinAsm;
62447
 
  friend class ::WinDeclSpecs;
62448
 
  friend class ::WinMemberExplSpec;
62449
 
  friend class ::WinTypeKeywords;
62450
 
  friend class ::PragmaOnceUnitState;
62451
 
  friend class ::PragmaOnce;
62452
 
  friend class ::CCExprResolve;
62453
 
  friend class ::CExprResolve;
62454
 
 
62455
 
protected:
62456
 
  CT_SimpleName (int size) : CT_List (size, 1) {}
62457
 
  CT_SimpleName (int size, int properties) : 
62458
 
    CT_List (size, 2, properties) {}
62459
 
  
62460
 
public:
62461
 
  CT_SimpleName (CTree *n) : CT_List (1, 1) { AddSon (n); }
62462
 
  static const char *NodeId ();
62463
 
  const char *NodeName () const { return NodeId (); }
62464
 
  virtual const char *Text () const 
62465
 
   { return Son (Sons ()-1)->token ()->text (); }
62466
 
  virtual void print (ostream &os) const { os << Text (); }
62467
 
  virtual CT_SimpleName *Name () const { return (CT_SimpleName*)this; }
62468
 
  CTypeInfo *Type () const { return type; }
62469
 
  CExprValue *Value () const { return value; }
62470
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
62471
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
62472
 
  // special new / delete with reusing memory
62473
 
  void *operator new (size_t);
62474
 
  void  operator delete (void *);
62475
 
  // classification function
62476
 
  virtual CT_SimpleName *IsSimpleName () { return this; }  
62477
 
   private:
62478
 
  typedef CT_SimpleName CCExprResolveExpr;
62479
 
 public :
62480
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62481
 
  typedef CT_SimpleName CExprResolveExpr;
62482
 
 public :
62483
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62484
 
 
62485
 
} // closed Puma
62486
 
class WinIfExists;
62487
 
class WinImportHandler;
62488
 
class WinMacros;
62489
 
class CMatchSyntax;
62490
 
class ExtGnu;
62491
 
class ExtAC;
62492
 
class ExtACBuilderCoupling;
62493
 
class ExtACSyntaxCoupling;
62494
 
class ExtACTree;
62495
 
class ExtACKeywords;
62496
 
class WinAsm;
62497
 
class WinDeclSpecs;
62498
 
class WinMemberExplSpec;
62499
 
class WinTypeKeywords;
62500
 
class PragmaOnceUnitState;
62501
 
class PragmaOnce;
62502
 
class CCExprResolve;
62503
 
class CExprResolve;
62504
 
namespace Puma {
62505
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
62506
 
  friend class ::WinImportHandler;
62507
 
  friend class ::WinMacros;
62508
 
  friend class ::CMatchSyntax;
62509
 
  friend class ::ExtGnu;
62510
 
  friend class ::ExtAC;
62511
 
  friend class ::ExtACBuilderCoupling;
62512
 
  friend class ::ExtACSyntaxCoupling;
62513
 
  friend class ::ExtACTree;
62514
 
  friend class ::ExtACKeywords;
62515
 
  friend class ::WinAsm;
62516
 
  friend class ::WinDeclSpecs;
62517
 
  friend class ::WinMemberExplSpec;
62518
 
  friend class ::WinTypeKeywords;
62519
 
  friend class ::PragmaOnceUnitState;
62520
 
  friend class ::PragmaOnce;
62521
 
  friend class ::CCExprResolve;
62522
 
  friend class ::CExprResolve;
62523
 
 
62524
 
  char *_name;
62525
 
  
62526
 
protected:
62527
 
  CT_SpecialName (int size = 1) : CT_SimpleName (size), _name (0) {}
62528
 
  
62529
 
public:
62530
 
  ~CT_SpecialName () { if (_name) delete[] _name; }
62531
 
  const char *Text () const { return _name; }
62532
 
  void Name (const char *n) { 
62533
 
    if (n) { 
62534
 
      _name = new char[strlen(n) + 1];
62535
 
      strcpy (_name,n);
62536
 
    }
62537
 
  }
62538
 
  // special new / delete with reusing memory
62539
 
  void *operator new (size_t);
62540
 
  void  operator delete (void *);
62541
 
   private:
62542
 
  typedef CT_SpecialName CCExprResolveExpr;
62543
 
 public :
62544
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62545
 
  typedef CT_SpecialName CExprResolveExpr;
62546
 
 public :
62547
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62548
 
 
62549
 
} // closed Puma
62550
 
class WinIfExists;
62551
 
class WinImportHandler;
62552
 
class WinMacros;
62553
 
class CMatchSyntax;
62554
 
class ExtGnu;
62555
 
class ExtAC;
62556
 
class ExtACBuilderCoupling;
62557
 
class ExtACSyntaxCoupling;
62558
 
class ExtACTree;
62559
 
class ExtACKeywords;
62560
 
class WinAsm;
62561
 
class WinDeclSpecs;
62562
 
class WinMemberExplSpec;
62563
 
class WinTypeKeywords;
62564
 
class PragmaOnceUnitState;
62565
 
class PragmaOnce;
62566
 
class CCExprResolve;
62567
 
class CExprResolve;
62568
 
namespace Puma {
62569
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
62570
 
  friend class ::WinImportHandler;
62571
 
  friend class ::WinMacros;
62572
 
  friend class ::CMatchSyntax;
62573
 
  friend class ::ExtGnu;
62574
 
  friend class ::ExtAC;
62575
 
  friend class ::ExtACBuilderCoupling;
62576
 
  friend class ::ExtACSyntaxCoupling;
62577
 
  friend class ::ExtACTree;
62578
 
  friend class ::ExtACKeywords;
62579
 
  friend class ::WinAsm;
62580
 
  friend class ::WinDeclSpecs;
62581
 
  friend class ::WinMemberExplSpec;
62582
 
  friend class ::WinTypeKeywords;
62583
 
  friend class ::PragmaOnceUnitState;
62584
 
  friend class ::PragmaOnce;
62585
 
  friend class ::CCExprResolve;
62586
 
  friend class ::CExprResolve;
62587
 
 
62588
 
public:
62589
 
  CT_PrivateName (const char *n) { Name (n); }
62590
 
  static const char *NodeId ();
62591
 
  const char *NodeName () const { return NodeId (); }
62592
 
  int Sons () const { return 0; }
62593
 
  CTree *Son (int n) const { return (CTree*)0; }
62594
 
  // special new / delete with reusing memory
62595
 
  void *operator new (size_t);
62596
 
  void  operator delete (void *);
62597
 
   private:
62598
 
  typedef CT_PrivateName CCExprResolveExpr;
62599
 
 public :
62600
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62601
 
  typedef CT_PrivateName CExprResolveExpr;
62602
 
 public :
62603
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62604
 
 
62605
 
} // closed Puma
62606
 
class WinIfExists;
62607
 
class WinImportHandler;
62608
 
class WinMacros;
62609
 
class CMatchSyntax;
62610
 
class ExtGnu;
62611
 
class ExtAC;
62612
 
class ExtACBuilderCoupling;
62613
 
class ExtACSyntaxCoupling;
62614
 
class ExtACTree;
62615
 
class ExtACKeywords;
62616
 
class WinAsm;
62617
 
class WinDeclSpecs;
62618
 
class WinMemberExplSpec;
62619
 
class WinTypeKeywords;
62620
 
class PragmaOnceUnitState;
62621
 
class PragmaOnce;
62622
 
class CCExprResolve;
62623
 
class CExprResolve;
62624
 
namespace Puma {
62625
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
62626
 
  friend class ::WinImportHandler;
62627
 
  friend class ::WinMacros;
62628
 
  friend class ::CMatchSyntax;
62629
 
  friend class ::ExtGnu;
62630
 
  friend class ::ExtAC;
62631
 
  friend class ::ExtACBuilderCoupling;
62632
 
  friend class ::ExtACSyntaxCoupling;
62633
 
  friend class ::ExtACTree;
62634
 
  friend class ::ExtACKeywords;
62635
 
  friend class ::WinAsm;
62636
 
  friend class ::WinDeclSpecs;
62637
 
  friend class ::WinMemberExplSpec;
62638
 
  friend class ::WinTypeKeywords;
62639
 
  friend class ::PragmaOnceUnitState;
62640
 
  friend class ::PragmaOnce;
62641
 
  friend class ::CCExprResolve;
62642
 
  friend class ::CExprResolve;
62643
 
 
62644
 
public:
62645
 
  CT_DestructorName (CTree *, CTree *);
62646
 
  static const char *NodeId ();
62647
 
  const char *NodeName () const { return NodeId (); }
62648
 
  // special new / delete with reusing memory
62649
 
  void *operator new (size_t);
62650
 
  void  operator delete (void *);
62651
 
   private:
62652
 
  typedef CT_DestructorName CCExprResolveExpr;
62653
 
 public :
62654
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62655
 
  typedef CT_DestructorName CExprResolveExpr;
62656
 
 public :
62657
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62658
 
 
62659
 
} // closed Puma
62660
 
class WinIfExists;
62661
 
class WinImportHandler;
62662
 
class WinMacros;
62663
 
class CMatchSyntax;
62664
 
class ExtGnu;
62665
 
class ExtAC;
62666
 
class ExtACBuilderCoupling;
62667
 
class ExtACSyntaxCoupling;
62668
 
class ExtACTree;
62669
 
class ExtACKeywords;
62670
 
class WinAsm;
62671
 
class WinDeclSpecs;
62672
 
class WinMemberExplSpec;
62673
 
class WinTypeKeywords;
62674
 
class PragmaOnceUnitState;
62675
 
class PragmaOnce;
62676
 
class CCExprResolve;
62677
 
class CExprResolve;
62678
 
namespace Puma {
62679
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
62680
 
  friend class ::WinImportHandler;
62681
 
  friend class ::WinMacros;
62682
 
  friend class ::CMatchSyntax;
62683
 
  friend class ::ExtGnu;
62684
 
  friend class ::ExtAC;
62685
 
  friend class ::ExtACBuilderCoupling;
62686
 
  friend class ::ExtACSyntaxCoupling;
62687
 
  friend class ::ExtACTree;
62688
 
  friend class ::ExtACKeywords;
62689
 
  friend class ::WinAsm;
62690
 
  friend class ::WinDeclSpecs;
62691
 
  friend class ::WinMemberExplSpec;
62692
 
  friend class ::WinTypeKeywords;
62693
 
  friend class ::PragmaOnceUnitState;
62694
 
  friend class ::PragmaOnce;
62695
 
  friend class ::CCExprResolve;
62696
 
  friend class ::CExprResolve;
62697
 
 
62698
 
public:
62699
 
  CT_TemplateName (CTree *n, CTree *a) 
62700
 
   { AddSon (n); AddSon (a); }
62701
 
  static const char *NodeId ();
62702
 
  const char *NodeName () const { return NodeId (); }
62703
 
  CT_TemplateArgList *Arguments () const 
62704
 
   { return (CT_TemplateArgList*)Son (Sons ()-1); }
62705
 
  CT_SimpleName *TemplateName () const 
62706
 
   { return (CT_SimpleName*)Son (Sons ()-2); }
62707
 
  // may change in the future
62708
 
  const char *Text () const { return TemplateName ()->Text (); }
62709
 
  // special new / delete with reusing memory
62710
 
  void *operator new (size_t);
62711
 
  void  operator delete (void *);
62712
 
   private:
62713
 
  typedef CT_TemplateName CCExprResolveExpr;
62714
 
 public :
62715
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62716
 
  typedef CT_TemplateName CExprResolveExpr;
62717
 
 public :
62718
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62719
 
 
62720
 
} // closed Puma
62721
 
class WinIfExists;
62722
 
class WinImportHandler;
62723
 
class WinMacros;
62724
 
class CMatchSyntax;
62725
 
class ExtGnu;
62726
 
class ExtAC;
62727
 
class ExtACBuilderCoupling;
62728
 
class ExtACSyntaxCoupling;
62729
 
class ExtACTree;
62730
 
class ExtACKeywords;
62731
 
class WinAsm;
62732
 
class WinDeclSpecs;
62733
 
class WinMemberExplSpec;
62734
 
class WinTypeKeywords;
62735
 
class PragmaOnceUnitState;
62736
 
class PragmaOnce;
62737
 
class CCExprResolve;
62738
 
class CExprResolve;
62739
 
namespace Puma {
62740
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
62741
 
  friend class ::WinImportHandler;
62742
 
  friend class ::WinMacros;
62743
 
  friend class ::CMatchSyntax;
62744
 
  friend class ::ExtGnu;
62745
 
  friend class ::ExtAC;
62746
 
  friend class ::ExtACBuilderCoupling;
62747
 
  friend class ::ExtACSyntaxCoupling;
62748
 
  friend class ::ExtACTree;
62749
 
  friend class ::ExtACKeywords;
62750
 
  friend class ::WinAsm;
62751
 
  friend class ::WinDeclSpecs;
62752
 
  friend class ::WinMemberExplSpec;
62753
 
  friend class ::WinTypeKeywords;
62754
 
  friend class ::PragmaOnceUnitState;
62755
 
  friend class ::PragmaOnce;
62756
 
  friend class ::CCExprResolve;
62757
 
  friend class ::CExprResolve;
62758
 
 
62759
 
  int _oper;
62760
 
 
62761
 
public:
62762
 
  enum { // complex operators
62763
 
    FCT_CALL = -100,
62764
 
    SUBSCRIPT,
62765
 
    NEW_ARRAY,
62766
 
    DEL_ARRAY
62767
 
  };
62768
 
 
62769
 
public:
62770
 
  CT_OperatorName (CTree *);
62771
 
  CT_OperatorName (CTree *, CTree *, CTree *, CTree *);
62772
 
  static const char *NodeId ();
62773
 
  const char *NodeName () const { return NodeId (); }
62774
 
  int Operator () const { return _oper; }
62775
 
  // special new / delete with reusing memory
62776
 
  void *operator new (size_t);
62777
 
  void  operator delete (void *);
62778
 
   private:
62779
 
  typedef CT_OperatorName CCExprResolveExpr;
62780
 
 public :
62781
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62782
 
  typedef CT_OperatorName CExprResolveExpr;
62783
 
 public :
62784
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62785
 
 
62786
 
} // closed Puma
62787
 
class WinIfExists;
62788
 
class WinImportHandler;
62789
 
class WinMacros;
62790
 
class CMatchSyntax;
62791
 
class ExtGnu;
62792
 
class ExtAC;
62793
 
class ExtACBuilderCoupling;
62794
 
class ExtACSyntaxCoupling;
62795
 
class ExtACTree;
62796
 
class ExtACKeywords;
62797
 
class WinAsm;
62798
 
class WinDeclSpecs;
62799
 
class WinMemberExplSpec;
62800
 
class WinTypeKeywords;
62801
 
class PragmaOnceUnitState;
62802
 
class PragmaOnce;
62803
 
class CCExprResolve;
62804
 
class CExprResolve;
62805
 
namespace Puma {
62806
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
62807
 
  friend class ::WinImportHandler;
62808
 
  friend class ::WinMacros;
62809
 
  friend class ::CMatchSyntax;
62810
 
  friend class ::ExtGnu;
62811
 
  friend class ::ExtAC;
62812
 
  friend class ::ExtACBuilderCoupling;
62813
 
  friend class ::ExtACSyntaxCoupling;
62814
 
  friend class ::ExtACTree;
62815
 
  friend class ::ExtACKeywords;
62816
 
  friend class ::WinAsm;
62817
 
  friend class ::WinDeclSpecs;
62818
 
  friend class ::WinMemberExplSpec;
62819
 
  friend class ::WinTypeKeywords;
62820
 
  friend class ::PragmaOnceUnitState;
62821
 
  friend class ::PragmaOnce;
62822
 
  friend class ::CCExprResolve;
62823
 
  friend class ::CExprResolve;
62824
 
 
62825
 
public:
62826
 
  CT_ConversionName (CTree *, CTree *);
62827
 
  static const char *NodeId ();
62828
 
  const char *NodeName () const { return NodeId (); }
62829
 
  CT_NamedType *TypeName () const { return (CT_NamedType*)Son (Sons ()-1); }
62830
 
  // special new / delete with reusing memory
62831
 
  void *operator new (size_t);
62832
 
  void  operator delete (void *);
62833
 
   private:
62834
 
  typedef CT_ConversionName CCExprResolveExpr;
62835
 
 public :
62836
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62837
 
  typedef CT_ConversionName CExprResolveExpr;
62838
 
 public :
62839
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62840
 
 
62841
 
} // closed Puma
62842
 
class WinIfExists;
62843
 
class WinImportHandler;
62844
 
class WinMacros;
62845
 
class CMatchSyntax;
62846
 
class ExtGnu;
62847
 
class ExtAC;
62848
 
class ExtACBuilderCoupling;
62849
 
class ExtACSyntaxCoupling;
62850
 
class ExtACTree;
62851
 
class ExtACKeywords;
62852
 
class WinAsm;
62853
 
class WinDeclSpecs;
62854
 
class WinMemberExplSpec;
62855
 
class WinTypeKeywords;
62856
 
class PragmaOnceUnitState;
62857
 
class PragmaOnce;
62858
 
class CCExprResolve;
62859
 
class CExprResolve;
62860
 
namespace Puma {
62861
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
62862
 
  friend class ::WinImportHandler;
62863
 
  friend class ::WinMacros;
62864
 
  friend class ::CMatchSyntax;
62865
 
  friend class ::ExtGnu;
62866
 
  friend class ::ExtAC;
62867
 
  friend class ::ExtACBuilderCoupling;
62868
 
  friend class ::ExtACSyntaxCoupling;
62869
 
  friend class ::ExtACTree;
62870
 
  friend class ::ExtACKeywords;
62871
 
  friend class ::WinAsm;
62872
 
  friend class ::WinDeclSpecs;
62873
 
  friend class ::WinMemberExplSpec;
62874
 
  friend class ::WinTypeKeywords;
62875
 
  friend class ::PragmaOnceUnitState;
62876
 
  friend class ::PragmaOnce;
62877
 
  friend class ::CCExprResolve;
62878
 
  friend class ::CExprResolve;
62879
 
 
62880
 
public:
62881
 
  CT_QualName (int size = 3) : 
62882
 
    CT_SimpleName (size, CT_List::SEPARATORS) {}
62883
 
  static const char *NodeId ();
62884
 
  const char *NodeName () const { return NodeId (); }
62885
 
  void print (ostream &) const;
62886
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)Son (Sons ()-1); }
62887
 
  const char *Text () const { return Name ()->Text (); }
62888
 
  CTypeInfo *Type () const { return Name ()->Type (); }
62889
 
  CExprValue *Value () const { return Name ()->Value (); }
62890
 
  CSemValue *SemValue () const { return Name ()->SemValue (); }
62891
 
  CSemObject *SemObject () const { return Name ()->SemObject (); }
62892
 
  // special new / delete with reusing memory
62893
 
  void *operator new (size_t);
62894
 
  void  operator delete (void *);
62895
 
   private:
62896
 
  typedef CT_QualName CCExprResolveExpr;
62897
 
 public :
62898
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62899
 
  typedef CT_QualName CExprResolveExpr;
62900
 
 public :
62901
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62902
 
 
62903
 
} // closed Puma
62904
 
class WinIfExists;
62905
 
class WinImportHandler;
62906
 
class WinMacros;
62907
 
class CMatchSyntax;
62908
 
class ExtGnu;
62909
 
class ExtAC;
62910
 
class ExtACBuilderCoupling;
62911
 
class ExtACSyntaxCoupling;
62912
 
class ExtACTree;
62913
 
class ExtACKeywords;
62914
 
class WinAsm;
62915
 
class WinDeclSpecs;
62916
 
class WinMemberExplSpec;
62917
 
class WinTypeKeywords;
62918
 
class PragmaOnceUnitState;
62919
 
class PragmaOnce;
62920
 
class CCExprResolve;
62921
 
class CExprResolve;
62922
 
namespace Puma {
62923
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
62924
 
  friend class ::WinImportHandler;
62925
 
  friend class ::WinMacros;
62926
 
  friend class ::CMatchSyntax;
62927
 
  friend class ::ExtGnu;
62928
 
  friend class ::ExtAC;
62929
 
  friend class ::ExtACBuilderCoupling;
62930
 
  friend class ::ExtACSyntaxCoupling;
62931
 
  friend class ::ExtACTree;
62932
 
  friend class ::ExtACKeywords;
62933
 
  friend class ::WinAsm;
62934
 
  friend class ::WinDeclSpecs;
62935
 
  friend class ::WinMemberExplSpec;
62936
 
  friend class ::WinTypeKeywords;
62937
 
  friend class ::PragmaOnceUnitState;
62938
 
  friend class ::PragmaOnce;
62939
 
  friend class ::CCExprResolve;
62940
 
  friend class ::CExprResolve;
62941
 
 
62942
 
public:
62943
 
  CT_RootQualName (int size = 2) : 
62944
 
    CT_QualName (size) { AddProperties (INTRO); }
62945
 
  static const char *NodeId ();
62946
 
  const char *NodeName () const { return NodeId (); }
62947
 
  // special new / delete with reusing memory
62948
 
  void *operator new (size_t);
62949
 
  void  operator delete (void *);
62950
 
   private:
62951
 
  typedef CT_RootQualName CCExprResolveExpr;
62952
 
 public :
62953
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
62954
 
  typedef CT_RootQualName CExprResolveExpr;
62955
 
 public :
62956
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
62957
 
 
62958
 
} // closed Puma
62959
 
class WinIfExists;
62960
 
class WinImportHandler;
62961
 
class WinMacros;
62962
 
class CMatchSyntax;
62963
 
class ExtGnu;
62964
 
class ExtAC;
62965
 
class ExtACBuilderCoupling;
62966
 
class ExtACSyntaxCoupling;
62967
 
class ExtACTree;
62968
 
class ExtACKeywords;
62969
 
class WinAsm;
62970
 
class WinDeclSpecs;
62971
 
class WinMemberExplSpec;
62972
 
class WinTypeKeywords;
62973
 
class PragmaOnceUnitState;
62974
 
class PragmaOnce;
62975
 
class CCExprResolve;
62976
 
class CExprResolve;
62977
 
namespace Puma {
62978
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
62979
 
  friend class ::WinImportHandler;
62980
 
  friend class ::WinMacros;
62981
 
  friend class ::CMatchSyntax;
62982
 
  friend class ::ExtGnu;
62983
 
  friend class ::ExtAC;
62984
 
  friend class ::ExtACBuilderCoupling;
62985
 
  friend class ::ExtACSyntaxCoupling;
62986
 
  friend class ::ExtACTree;
62987
 
  friend class ::ExtACKeywords;
62988
 
  friend class ::WinAsm;
62989
 
  friend class ::WinDeclSpecs;
62990
 
  friend class ::WinMemberExplSpec;
62991
 
  friend class ::WinTypeKeywords;
62992
 
  friend class ::PragmaOnceUnitState;
62993
 
  friend class ::PragmaOnce;
62994
 
  friend class ::CCExprResolve;
62995
 
  friend class ::CExprResolve;
62996
 
 
62997
 
  CTree *sons[3]; // expr, oper, expr
62998
 
 
62999
 
public:
63000
 
  CT_BinaryExpr (CTree *l, CTree *o, CTree *r) {
63001
 
    sons[0] = l; sons[1] = o; sons[2] = r;
63002
 
  }
63003
 
  static const char *NodeId ();
63004
 
  const char *NodeName () const { return NodeId (); }
63005
 
  int Sons () const { return 3; }
63006
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
63007
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63008
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
63009
 
  }
63010
 
   private:
63011
 
  typedef CT_BinaryExpr CCExprResolveExpr;
63012
 
 public :
63013
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63014
 
  typedef CT_BinaryExpr CExprResolveExpr;
63015
 
 public :
63016
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63017
 
 
63018
 
} // closed Puma
63019
 
class WinIfExists;
63020
 
class WinImportHandler;
63021
 
class WinMacros;
63022
 
class CMatchSyntax;
63023
 
class ExtGnu;
63024
 
class ExtAC;
63025
 
class ExtACBuilderCoupling;
63026
 
class ExtACSyntaxCoupling;
63027
 
class ExtACTree;
63028
 
class ExtACKeywords;
63029
 
class WinAsm;
63030
 
class WinDeclSpecs;
63031
 
class WinMemberExplSpec;
63032
 
class WinTypeKeywords;
63033
 
class PragmaOnceUnitState;
63034
 
class PragmaOnce;
63035
 
class CCExprResolve;
63036
 
class CExprResolve;
63037
 
namespace Puma {
63038
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
63039
 
  friend class ::WinImportHandler;
63040
 
  friend class ::WinMacros;
63041
 
  friend class ::CMatchSyntax;
63042
 
  friend class ::ExtGnu;
63043
 
  friend class ::ExtAC;
63044
 
  friend class ::ExtACBuilderCoupling;
63045
 
  friend class ::ExtACSyntaxCoupling;
63046
 
  friend class ::ExtACTree;
63047
 
  friend class ::ExtACKeywords;
63048
 
  friend class ::WinAsm;
63049
 
  friend class ::WinDeclSpecs;
63050
 
  friend class ::WinMemberExplSpec;
63051
 
  friend class ::WinTypeKeywords;
63052
 
  friend class ::PragmaOnceUnitState;
63053
 
  friend class ::PragmaOnce;
63054
 
  friend class ::CCExprResolve;
63055
 
  friend class ::CExprResolve;
63056
 
 
63057
 
public:
63058
 
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
63059
 
    CT_BinaryExpr (e, o, i) {}
63060
 
  static const char *NodeId ();
63061
 
  const char *NodeName () const { return NodeId (); }
63062
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
63063
 
   private:
63064
 
  typedef CT_MembPtrExpr CCExprResolveExpr;
63065
 
 public :
63066
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63067
 
  typedef CT_MembPtrExpr CExprResolveExpr;
63068
 
 public :
63069
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63070
 
 
63071
 
} // closed Puma
63072
 
class WinIfExists;
63073
 
class WinImportHandler;
63074
 
class WinMacros;
63075
 
class CMatchSyntax;
63076
 
class ExtGnu;
63077
 
class ExtAC;
63078
 
class ExtACBuilderCoupling;
63079
 
class ExtACSyntaxCoupling;
63080
 
class ExtACTree;
63081
 
class ExtACKeywords;
63082
 
class WinAsm;
63083
 
class WinDeclSpecs;
63084
 
class WinMemberExplSpec;
63085
 
class WinTypeKeywords;
63086
 
class PragmaOnceUnitState;
63087
 
class PragmaOnce;
63088
 
class CCExprResolve;
63089
 
class CExprResolve;
63090
 
namespace Puma {
63091
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
63092
 
  friend class ::WinImportHandler;
63093
 
  friend class ::WinMacros;
63094
 
  friend class ::CMatchSyntax;
63095
 
  friend class ::ExtGnu;
63096
 
  friend class ::ExtAC;
63097
 
  friend class ::ExtACBuilderCoupling;
63098
 
  friend class ::ExtACSyntaxCoupling;
63099
 
  friend class ::ExtACTree;
63100
 
  friend class ::ExtACKeywords;
63101
 
  friend class ::WinAsm;
63102
 
  friend class ::WinDeclSpecs;
63103
 
  friend class ::WinMemberExplSpec;
63104
 
  friend class ::WinTypeKeywords;
63105
 
  friend class ::PragmaOnceUnitState;
63106
 
  friend class ::PragmaOnce;
63107
 
  friend class ::CCExprResolve;
63108
 
  friend class ::CExprResolve;
63109
 
 
63110
 
public:
63111
 
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
63112
 
    CT_MembPtrExpr (e, o, i) {}
63113
 
  static const char *NodeId ();
63114
 
  const char *NodeName () const { return NodeId (); }
63115
 
   private:
63116
 
  typedef CT_MembRefExpr CCExprResolveExpr;
63117
 
 public :
63118
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63119
 
  typedef CT_MembRefExpr CExprResolveExpr;
63120
 
 public :
63121
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63122
 
 
63123
 
} // closed Puma
63124
 
class WinIfExists;
63125
 
class WinImportHandler;
63126
 
class WinMacros;
63127
 
class CMatchSyntax;
63128
 
class ExtGnu;
63129
 
class ExtAC;
63130
 
class ExtACBuilderCoupling;
63131
 
class ExtACSyntaxCoupling;
63132
 
class ExtACTree;
63133
 
class ExtACKeywords;
63134
 
class WinAsm;
63135
 
class WinDeclSpecs;
63136
 
class WinMemberExplSpec;
63137
 
class WinTypeKeywords;
63138
 
class PragmaOnceUnitState;
63139
 
class PragmaOnce;
63140
 
class CCExprResolve;
63141
 
class CExprResolve;
63142
 
namespace Puma {
63143
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
63144
 
  friend class ::WinImportHandler;
63145
 
  friend class ::WinMacros;
63146
 
  friend class ::CMatchSyntax;
63147
 
  friend class ::ExtGnu;
63148
 
  friend class ::ExtAC;
63149
 
  friend class ::ExtACBuilderCoupling;
63150
 
  friend class ::ExtACSyntaxCoupling;
63151
 
  friend class ::ExtACTree;
63152
 
  friend class ::ExtACKeywords;
63153
 
  friend class ::WinAsm;
63154
 
  friend class ::WinDeclSpecs;
63155
 
  friend class ::WinMemberExplSpec;
63156
 
  friend class ::WinTypeKeywords;
63157
 
  friend class ::PragmaOnceUnitState;
63158
 
  friend class ::PragmaOnce;
63159
 
  friend class ::CCExprResolve;
63160
 
  friend class ::CExprResolve;
63161
 
 
63162
 
  CTree *sons[2]; // oper, expr
63163
 
 
63164
 
public:
63165
 
  CT_UnaryExpr (CTree *o, CTree *e) { sons[0] = o; sons[1] = e; }
63166
 
  static const char *NodeId ();
63167
 
  const char *NodeName () const { return NodeId (); }
63168
 
  int Sons () const { return 2; }
63169
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
63170
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63171
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
63172
 
  }
63173
 
  CTree *Expr () const { return sons[1]; }
63174
 
   private:
63175
 
  typedef CT_UnaryExpr CCExprResolveExpr;
63176
 
 public :
63177
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63178
 
  typedef CT_UnaryExpr CExprResolveExpr;
63179
 
 public :
63180
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63181
 
 
63182
 
} // closed Puma
63183
 
class WinIfExists;
63184
 
class WinImportHandler;
63185
 
class WinMacros;
63186
 
class CMatchSyntax;
63187
 
class ExtGnu;
63188
 
class ExtAC;
63189
 
class ExtACBuilderCoupling;
63190
 
class ExtACSyntaxCoupling;
63191
 
class ExtACTree;
63192
 
class ExtACKeywords;
63193
 
class WinAsm;
63194
 
class WinDeclSpecs;
63195
 
class WinMemberExplSpec;
63196
 
class WinTypeKeywords;
63197
 
class PragmaOnceUnitState;
63198
 
class PragmaOnce;
63199
 
class CCExprResolve;
63200
 
class CExprResolve;
63201
 
namespace Puma {
63202
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
63203
 
  friend class ::WinImportHandler;
63204
 
  friend class ::WinMacros;
63205
 
  friend class ::CMatchSyntax;
63206
 
  friend class ::ExtGnu;
63207
 
  friend class ::ExtAC;
63208
 
  friend class ::ExtACBuilderCoupling;
63209
 
  friend class ::ExtACSyntaxCoupling;
63210
 
  friend class ::ExtACTree;
63211
 
  friend class ::ExtACKeywords;
63212
 
  friend class ::WinAsm;
63213
 
  friend class ::WinDeclSpecs;
63214
 
  friend class ::WinMemberExplSpec;
63215
 
  friend class ::WinTypeKeywords;
63216
 
  friend class ::PragmaOnceUnitState;
63217
 
  friend class ::PragmaOnce;
63218
 
  friend class ::CCExprResolve;
63219
 
  friend class ::CExprResolve;
63220
 
 
63221
 
public:
63222
 
  CT_PostfixExpr (CTree *e, CTree *o) :
63223
 
    CT_UnaryExpr (e, o) {}
63224
 
  static const char *NodeId ();
63225
 
  const char *NodeName () const { return NodeId (); }
63226
 
   private:
63227
 
  typedef CT_PostfixExpr CCExprResolveExpr;
63228
 
 public :
63229
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63230
 
  typedef CT_PostfixExpr CExprResolveExpr;
63231
 
 public :
63232
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63233
 
 
63234
 
} // closed Puma
63235
 
class WinIfExists;
63236
 
class WinImportHandler;
63237
 
class WinMacros;
63238
 
class CMatchSyntax;
63239
 
class ExtGnu;
63240
 
class ExtAC;
63241
 
class ExtACBuilderCoupling;
63242
 
class ExtACSyntaxCoupling;
63243
 
class ExtACTree;
63244
 
class ExtACKeywords;
63245
 
class WinAsm;
63246
 
class WinDeclSpecs;
63247
 
class WinMemberExplSpec;
63248
 
class WinTypeKeywords;
63249
 
class PragmaOnceUnitState;
63250
 
class PragmaOnce;
63251
 
class CCExprResolve;
63252
 
class CExprResolve;
63253
 
namespace Puma {
63254
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
63255
 
  friend class ::WinImportHandler;
63256
 
  friend class ::WinMacros;
63257
 
  friend class ::CMatchSyntax;
63258
 
  friend class ::ExtGnu;
63259
 
  friend class ::ExtAC;
63260
 
  friend class ::ExtACBuilderCoupling;
63261
 
  friend class ::ExtACSyntaxCoupling;
63262
 
  friend class ::ExtACTree;
63263
 
  friend class ::ExtACKeywords;
63264
 
  friend class ::WinAsm;
63265
 
  friend class ::WinDeclSpecs;
63266
 
  friend class ::WinMemberExplSpec;
63267
 
  friend class ::WinTypeKeywords;
63268
 
  friend class ::PragmaOnceUnitState;
63269
 
  friend class ::PragmaOnce;
63270
 
  friend class ::CCExprResolve;
63271
 
  friend class ::CExprResolve;
63272
 
 
63273
 
public:
63274
 
  CT_AddrExpr (CTree *o, CTree *e) :
63275
 
    CT_UnaryExpr (o, e) {}
63276
 
  static const char *NodeId ();
63277
 
  const char *NodeName () const { return NodeId (); }
63278
 
   private:
63279
 
  typedef CT_AddrExpr CCExprResolveExpr;
63280
 
 public :
63281
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63282
 
  typedef CT_AddrExpr CExprResolveExpr;
63283
 
 public :
63284
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63285
 
 
63286
 
} // closed Puma
63287
 
class WinIfExists;
63288
 
class WinImportHandler;
63289
 
class WinMacros;
63290
 
class CMatchSyntax;
63291
 
class ExtGnu;
63292
 
class ExtAC;
63293
 
class ExtACBuilderCoupling;
63294
 
class ExtACSyntaxCoupling;
63295
 
class ExtACTree;
63296
 
class ExtACKeywords;
63297
 
class WinAsm;
63298
 
class WinDeclSpecs;
63299
 
class WinMemberExplSpec;
63300
 
class WinTypeKeywords;
63301
 
class PragmaOnceUnitState;
63302
 
class PragmaOnce;
63303
 
class CCExprResolve;
63304
 
class CExprResolve;
63305
 
namespace Puma {
63306
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
63307
 
  friend class ::WinImportHandler;
63308
 
  friend class ::WinMacros;
63309
 
  friend class ::CMatchSyntax;
63310
 
  friend class ::ExtGnu;
63311
 
  friend class ::ExtAC;
63312
 
  friend class ::ExtACBuilderCoupling;
63313
 
  friend class ::ExtACSyntaxCoupling;
63314
 
  friend class ::ExtACTree;
63315
 
  friend class ::ExtACKeywords;
63316
 
  friend class ::WinAsm;
63317
 
  friend class ::WinDeclSpecs;
63318
 
  friend class ::WinMemberExplSpec;
63319
 
  friend class ::WinTypeKeywords;
63320
 
  friend class ::PragmaOnceUnitState;
63321
 
  friend class ::PragmaOnce;
63322
 
  friend class ::CCExprResolve;
63323
 
  friend class ::CExprResolve;
63324
 
 
63325
 
public:
63326
 
  CT_DerefExpr (CTree *o, CTree *e) :
63327
 
    CT_UnaryExpr (o, e) {}
63328
 
  static const char *NodeId ();
63329
 
  const char *NodeName () const { return NodeId (); }
63330
 
   private:
63331
 
  typedef CT_DerefExpr CCExprResolveExpr;
63332
 
 public :
63333
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63334
 
  typedef CT_DerefExpr CExprResolveExpr;
63335
 
 public :
63336
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63337
 
 
63338
 
} // closed Puma
63339
 
class WinIfExists;
63340
 
class WinImportHandler;
63341
 
class WinMacros;
63342
 
class CMatchSyntax;
63343
 
class ExtGnu;
63344
 
class ExtAC;
63345
 
class ExtACBuilderCoupling;
63346
 
class ExtACSyntaxCoupling;
63347
 
class ExtACTree;
63348
 
class ExtACKeywords;
63349
 
class WinAsm;
63350
 
class WinDeclSpecs;
63351
 
class WinMemberExplSpec;
63352
 
class WinTypeKeywords;
63353
 
class PragmaOnceUnitState;
63354
 
class PragmaOnce;
63355
 
class CCExprResolve;
63356
 
class CExprResolve;
63357
 
namespace Puma {
63358
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
63359
 
  friend class ::WinImportHandler;
63360
 
  friend class ::WinMacros;
63361
 
  friend class ::CMatchSyntax;
63362
 
  friend class ::ExtGnu;
63363
 
  friend class ::ExtAC;
63364
 
  friend class ::ExtACBuilderCoupling;
63365
 
  friend class ::ExtACSyntaxCoupling;
63366
 
  friend class ::ExtACTree;
63367
 
  friend class ::ExtACKeywords;
63368
 
  friend class ::WinAsm;
63369
 
  friend class ::WinDeclSpecs;
63370
 
  friend class ::WinMemberExplSpec;
63371
 
  friend class ::WinTypeKeywords;
63372
 
  friend class ::PragmaOnceUnitState;
63373
 
  friend class ::PragmaOnce;
63374
 
  friend class ::CCExprResolve;
63375
 
  friend class ::CExprResolve;
63376
 
 
63377
 
  CTree *sons[2]; // oper, expr
63378
 
 
63379
 
public:
63380
 
  CT_DeleteExpr (CTree *op, CTree *e) { sons[0] = op; sons[1] = e; }
63381
 
  static const char *NodeId ();
63382
 
  const char *NodeName () const { return NodeId (); }
63383
 
  int Sons () const { return 2; }
63384
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
63385
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63386
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
63387
 
  }
63388
 
  CTree *Expr () const { return sons[1]; }
63389
 
  CT_SimpleName *OperName () const { return (CT_SimpleName*)sons[0]; }
63390
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
63391
 
   private:
63392
 
  typedef CT_DeleteExpr CCExprResolveExpr;
63393
 
 public :
63394
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63395
 
  typedef CT_DeleteExpr CExprResolveExpr;
63396
 
 public :
63397
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63398
 
 
63399
 
} // closed Puma
63400
 
class WinIfExists;
63401
 
class WinImportHandler;
63402
 
class WinMacros;
63403
 
class CMatchSyntax;
63404
 
class ExtGnu;
63405
 
class ExtAC;
63406
 
class ExtACBuilderCoupling;
63407
 
class ExtACSyntaxCoupling;
63408
 
class ExtACTree;
63409
 
class ExtACKeywords;
63410
 
class WinAsm;
63411
 
class WinDeclSpecs;
63412
 
class WinMemberExplSpec;
63413
 
class WinTypeKeywords;
63414
 
class PragmaOnceUnitState;
63415
 
class PragmaOnce;
63416
 
class CCExprResolve;
63417
 
class CExprResolve;
63418
 
namespace Puma {
63419
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
63420
 
  friend class ::WinImportHandler;
63421
 
  friend class ::WinMacros;
63422
 
  friend class ::CMatchSyntax;
63423
 
  friend class ::ExtGnu;
63424
 
  friend class ::ExtAC;
63425
 
  friend class ::ExtACBuilderCoupling;
63426
 
  friend class ::ExtACSyntaxCoupling;
63427
 
  friend class ::ExtACTree;
63428
 
  friend class ::ExtACKeywords;
63429
 
  friend class ::WinAsm;
63430
 
  friend class ::WinDeclSpecs;
63431
 
  friend class ::WinMemberExplSpec;
63432
 
  friend class ::WinTypeKeywords;
63433
 
  friend class ::PragmaOnceUnitState;
63434
 
  friend class ::PragmaOnce;
63435
 
  friend class ::CCExprResolve;
63436
 
  friend class ::CExprResolve;
63437
 
 
63438
 
  CTree *sons[6]; // oper, placement, open, type, close, init
63439
 
 
63440
 
public:
63441
 
  CT_NewExpr (CTree *op, CTree *p, CTree *o, CTree *t, CTree *c, CTree *i) {
63442
 
    sons[0] = op; sons[1] = p; sons[2] = o; sons[3] = t; sons[4] = c; sons[5] = i; 
63443
 
  }
63444
 
  static const char *NodeId ();
63445
 
  const char *NodeName () const { return NodeId (); }
63446
 
  int Sons () const { return CTree::Sons (sons, 6); }
63447
 
  CTree *Son (int n) const { return CTree::Son (sons, 6, n); }
63448
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63449
 
    CTree::ReplaceSon (sons, 6, old_son, new_son);
63450
 
  }
63451
 
  CT_SimpleName *OperName () const { return (CT_SimpleName*)sons[0]; }
63452
 
  CT_ExprList *Placement () const { return (CT_ExprList*)sons[1];; }
63453
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[5]; }
63454
 
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[3]; }
63455
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
63456
 
   private:
63457
 
  typedef CT_NewExpr CCExprResolveExpr;
63458
 
 public :
63459
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63460
 
  typedef CT_NewExpr CExprResolveExpr;
63461
 
 public :
63462
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63463
 
 
63464
 
} // closed Puma
63465
 
class WinIfExists;
63466
 
class WinImportHandler;
63467
 
class WinMacros;
63468
 
class CMatchSyntax;
63469
 
class ExtGnu;
63470
 
class ExtAC;
63471
 
class ExtACBuilderCoupling;
63472
 
class ExtACSyntaxCoupling;
63473
 
class ExtACTree;
63474
 
class ExtACKeywords;
63475
 
class WinAsm;
63476
 
class WinDeclSpecs;
63477
 
class WinMemberExplSpec;
63478
 
class WinTypeKeywords;
63479
 
class PragmaOnceUnitState;
63480
 
class PragmaOnce;
63481
 
class CCExprResolve;
63482
 
class CExprResolve;
63483
 
namespace Puma {
63484
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
63485
 
  friend class ::WinImportHandler;
63486
 
  friend class ::WinMacros;
63487
 
  friend class ::CMatchSyntax;
63488
 
  friend class ::ExtGnu;
63489
 
  friend class ::ExtAC;
63490
 
  friend class ::ExtACBuilderCoupling;
63491
 
  friend class ::ExtACSyntaxCoupling;
63492
 
  friend class ::ExtACTree;
63493
 
  friend class ::ExtACKeywords;
63494
 
  friend class ::WinAsm;
63495
 
  friend class ::WinDeclSpecs;
63496
 
  friend class ::WinMemberExplSpec;
63497
 
  friend class ::WinTypeKeywords;
63498
 
  friend class ::PragmaOnceUnitState;
63499
 
  friend class ::PragmaOnce;
63500
 
  friend class ::CCExprResolve;
63501
 
  friend class ::CExprResolve;
63502
 
 
63503
 
  CTree *sons[5]; // cond, oper, left, colon, right
63504
 
 
63505
 
public:
63506
 
  CT_IfThenExpr (CTree *c1, CTree *o, CTree *l, CTree *c2, CTree *r) {
63507
 
    sons[0] = c1; sons[1] = o; sons[2] = l; sons[3] = c2; sons[4] = r;
63508
 
  }
63509
 
  CT_IfThenExpr (CTree *c1, CTree *o, CTree *c2, CTree *r) {
63510
 
    sons[0] = c1; sons[1] = o; sons[2] = 0; sons[3] = c2; sons[4] = r;
63511
 
  }
63512
 
  static const char *NodeId ();
63513
 
  const char *NodeName () const { return NodeId (); }
63514
 
  int Sons () const { return CTree::Sons (sons, 5); }
63515
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
63516
 
  CTree *Condition () const { return sons[0]; }
63517
 
  CTree *LeftOperand () const { return sons[2]; }
63518
 
  CTree *RightOperand () const { return sons[4]; }
63519
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63520
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
63521
 
  }
63522
 
   private:
63523
 
  typedef CT_IfThenExpr CCExprResolveExpr;
63524
 
 public :
63525
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63526
 
  typedef CT_IfThenExpr CExprResolveExpr;
63527
 
 public :
63528
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63529
 
 
63530
 
} // closed Puma
63531
 
class WinIfExists;
63532
 
class WinImportHandler;
63533
 
class WinMacros;
63534
 
class CMatchSyntax;
63535
 
class ExtGnu;
63536
 
class ExtAC;
63537
 
class ExtACBuilderCoupling;
63538
 
class ExtACSyntaxCoupling;
63539
 
class ExtACTree;
63540
 
class ExtACKeywords;
63541
 
class WinAsm;
63542
 
class WinDeclSpecs;
63543
 
class WinMemberExplSpec;
63544
 
class WinTypeKeywords;
63545
 
class PragmaOnceUnitState;
63546
 
class PragmaOnce;
63547
 
class CCExprResolve;
63548
 
class CExprResolve;
63549
 
namespace Puma {
63550
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
63551
 
  friend class ::WinImportHandler;
63552
 
  friend class ::WinMacros;
63553
 
  friend class ::CMatchSyntax;
63554
 
  friend class ::ExtGnu;
63555
 
  friend class ::ExtAC;
63556
 
  friend class ::ExtACBuilderCoupling;
63557
 
  friend class ::ExtACSyntaxCoupling;
63558
 
  friend class ::ExtACTree;
63559
 
  friend class ::ExtACKeywords;
63560
 
  friend class ::WinAsm;
63561
 
  friend class ::WinDeclSpecs;
63562
 
  friend class ::WinMemberExplSpec;
63563
 
  friend class ::WinTypeKeywords;
63564
 
  friend class ::PragmaOnceUnitState;
63565
 
  friend class ::PragmaOnce;
63566
 
  friend class ::CCExprResolve;
63567
 
  friend class ::CExprResolve;
63568
 
 
63569
 
  CTree *sons[4]; // open, type, close, init
63570
 
 
63571
 
public:
63572
 
  CT_CmpdLiteral (CTree *r, CTree *t, CTree *cr, CTree *i) {
63573
 
    sons[0] = r; sons[1] = t; sons[2] = cr; sons[3] = i;
63574
 
  }
63575
 
  static const char *NodeId ();
63576
 
  const char *NodeName () const { return NodeId (); }
63577
 
  int Sons () const { return 4; }
63578
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
63579
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63580
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
63581
 
  }
63582
 
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
63583
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[3]; }
63584
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
63585
 
   private:
63586
 
  typedef CT_CmpdLiteral CCExprResolveExpr;
63587
 
 public :
63588
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63589
 
  typedef CT_CmpdLiteral CExprResolveExpr;
63590
 
 public :
63591
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63592
 
 
63593
 
} // closed Puma
63594
 
class WinIfExists;
63595
 
class WinImportHandler;
63596
 
class WinMacros;
63597
 
class CMatchSyntax;
63598
 
class ExtGnu;
63599
 
class ExtAC;
63600
 
class ExtACBuilderCoupling;
63601
 
class ExtACSyntaxCoupling;
63602
 
class ExtACTree;
63603
 
class ExtACKeywords;
63604
 
class WinAsm;
63605
 
class WinDeclSpecs;
63606
 
class WinMemberExplSpec;
63607
 
class WinTypeKeywords;
63608
 
class PragmaOnceUnitState;
63609
 
class PragmaOnce;
63610
 
class CCExprResolve;
63611
 
class CExprResolve;
63612
 
namespace Puma {
63613
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
63614
 
  friend class ::WinImportHandler;
63615
 
  friend class ::WinMacros;
63616
 
  friend class ::CMatchSyntax;
63617
 
  friend class ::ExtGnu;
63618
 
  friend class ::ExtAC;
63619
 
  friend class ::ExtACBuilderCoupling;
63620
 
  friend class ::ExtACSyntaxCoupling;
63621
 
  friend class ::ExtACTree;
63622
 
  friend class ::ExtACKeywords;
63623
 
  friend class ::WinAsm;
63624
 
  friend class ::WinDeclSpecs;
63625
 
  friend class ::WinMemberExplSpec;
63626
 
  friend class ::WinTypeKeywords;
63627
 
  friend class ::PragmaOnceUnitState;
63628
 
  friend class ::PragmaOnce;
63629
 
  friend class ::CCExprResolve;
63630
 
  friend class ::CExprResolve;
63631
 
 
63632
 
  CTree *sons[2]; // type, init
63633
 
 
63634
 
public:
63635
 
  CT_ConstructExpr (CTree *t, CTree *i) { sons[0] = t; sons[1] = i; }
63636
 
  static const char *NodeId ();
63637
 
  const char *NodeName () const { return NodeId (); }
63638
 
  int Sons () const { return 2; }
63639
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
63640
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63641
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
63642
 
  }
63643
 
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[0]; }
63644
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
63645
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
63646
 
   private:
63647
 
  typedef CT_ConstructExpr CCExprResolveExpr;
63648
 
 public :
63649
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63650
 
  typedef CT_ConstructExpr CExprResolveExpr;
63651
 
 public :
63652
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63653
 
 
63654
 
} // closed Puma
63655
 
class WinIfExists;
63656
 
class WinImportHandler;
63657
 
class WinMacros;
63658
 
class CMatchSyntax;
63659
 
class ExtGnu;
63660
 
class ExtAC;
63661
 
class ExtACBuilderCoupling;
63662
 
class ExtACSyntaxCoupling;
63663
 
class ExtACTree;
63664
 
class ExtACKeywords;
63665
 
class WinAsm;
63666
 
class WinDeclSpecs;
63667
 
class WinMemberExplSpec;
63668
 
class WinTypeKeywords;
63669
 
class PragmaOnceUnitState;
63670
 
class PragmaOnce;
63671
 
class CCExprResolve;
63672
 
class CExprResolve;
63673
 
namespace Puma {
63674
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
63675
 
  friend class ::WinImportHandler;
63676
 
  friend class ::WinMacros;
63677
 
  friend class ::CMatchSyntax;
63678
 
  friend class ::ExtGnu;
63679
 
  friend class ::ExtAC;
63680
 
  friend class ::ExtACBuilderCoupling;
63681
 
  friend class ::ExtACSyntaxCoupling;
63682
 
  friend class ::ExtACTree;
63683
 
  friend class ::ExtACKeywords;
63684
 
  friend class ::WinAsm;
63685
 
  friend class ::WinDeclSpecs;
63686
 
  friend class ::WinMemberExplSpec;
63687
 
  friend class ::WinTypeKeywords;
63688
 
  friend class ::PragmaOnceUnitState;
63689
 
  friend class ::PragmaOnce;
63690
 
  friend class ::CCExprResolve;
63691
 
  friend class ::CExprResolve;
63692
 
 
63693
 
  CTree *sons[2]; // throw, expr
63694
 
 
63695
 
public:
63696
 
  CT_ThrowExpr (CTree *t, CTree *e = (CTree*)0) { sons[0] = t; sons[1] = e; }
63697
 
  static const char *NodeId ();
63698
 
  const char *NodeName () const { return NodeId (); }
63699
 
  int Sons () const { return CTree::Sons (sons, 2); }
63700
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
63701
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63702
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
63703
 
  }
63704
 
  CTree *Expr () const { return sons[1]; }
63705
 
   private:
63706
 
  typedef CT_ThrowExpr CCExprResolveExpr;
63707
 
 public :
63708
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63709
 
  typedef CT_ThrowExpr CExprResolveExpr;
63710
 
 public :
63711
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63712
 
 
63713
 
} // closed Puma
63714
 
class WinIfExists;
63715
 
class WinImportHandler;
63716
 
class WinMacros;
63717
 
class CMatchSyntax;
63718
 
class ExtGnu;
63719
 
class ExtAC;
63720
 
class ExtACBuilderCoupling;
63721
 
class ExtACSyntaxCoupling;
63722
 
class ExtACTree;
63723
 
class ExtACKeywords;
63724
 
class WinAsm;
63725
 
class WinDeclSpecs;
63726
 
class WinMemberExplSpec;
63727
 
class WinTypeKeywords;
63728
 
class PragmaOnceUnitState;
63729
 
class PragmaOnce;
63730
 
class CCExprResolve;
63731
 
class CExprResolve;
63732
 
namespace Puma {
63733
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
63734
 
  friend class ::WinImportHandler;
63735
 
  friend class ::WinMacros;
63736
 
  friend class ::CMatchSyntax;
63737
 
  friend class ::ExtGnu;
63738
 
  friend class ::ExtAC;
63739
 
  friend class ::ExtACBuilderCoupling;
63740
 
  friend class ::ExtACSyntaxCoupling;
63741
 
  friend class ::ExtACTree;
63742
 
  friend class ::ExtACKeywords;
63743
 
  friend class ::WinAsm;
63744
 
  friend class ::WinDeclSpecs;
63745
 
  friend class ::WinMemberExplSpec;
63746
 
  friend class ::WinTypeKeywords;
63747
 
  friend class ::PragmaOnceUnitState;
63748
 
  friend class ::PragmaOnce;
63749
 
  friend class ::CCExprResolve;
63750
 
  friend class ::CExprResolve;
63751
 
 
63752
 
  CTree *sons[4]; // expr, open, index, close
63753
 
 
63754
 
public:
63755
 
  CT_IndexExpr (CTree *e, CTree *o, CTree *i, CTree *c) {
63756
 
    sons[0] = e; sons[1] = o; sons[2] = i; sons[3] = c;
63757
 
  }
63758
 
  static const char *NodeId ();
63759
 
  const char *NodeName () const { return NodeId (); }
63760
 
  int Sons () const { return 4; }
63761
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
63762
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63763
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
63764
 
  }
63765
 
   private:
63766
 
  typedef CT_IndexExpr CCExprResolveExpr;
63767
 
 public :
63768
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63769
 
  typedef CT_IndexExpr CExprResolveExpr;
63770
 
 public :
63771
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63772
 
 
63773
 
} // closed Puma
63774
 
class WinIfExists;
63775
 
class WinImportHandler;
63776
 
class WinMacros;
63777
 
class CMatchSyntax;
63778
 
class ExtGnu;
63779
 
class ExtAC;
63780
 
class ExtACBuilderCoupling;
63781
 
class ExtACSyntaxCoupling;
63782
 
class ExtACTree;
63783
 
class ExtACKeywords;
63784
 
class WinAsm;
63785
 
class WinDeclSpecs;
63786
 
class WinMemberExplSpec;
63787
 
class WinTypeKeywords;
63788
 
class PragmaOnceUnitState;
63789
 
class PragmaOnce;
63790
 
class CCExprResolve;
63791
 
class CExprResolve;
63792
 
namespace Puma {
63793
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
63794
 
  friend class ::WinImportHandler;
63795
 
  friend class ::WinMacros;
63796
 
  friend class ::CMatchSyntax;
63797
 
  friend class ::ExtGnu;
63798
 
  friend class ::ExtAC;
63799
 
  friend class ::ExtACBuilderCoupling;
63800
 
  friend class ::ExtACSyntaxCoupling;
63801
 
  friend class ::ExtACTree;
63802
 
  friend class ::ExtACKeywords;
63803
 
  friend class ::WinAsm;
63804
 
  friend class ::WinDeclSpecs;
63805
 
  friend class ::WinMemberExplSpec;
63806
 
  friend class ::WinTypeKeywords;
63807
 
  friend class ::PragmaOnceUnitState;
63808
 
  friend class ::PragmaOnce;
63809
 
  friend class ::CCExprResolve;
63810
 
  friend class ::CExprResolve;
63811
 
 
63812
 
  CTree *sons[2]; // expr, args
63813
 
 
63814
 
public:
63815
 
  CT_CallExpr (CTree *e) { sons[0] = e; sons[1] = 0; }
63816
 
  CT_CallExpr (CTree *e, CTree *l) { sons[0] = e; sons[1] = l; }
63817
 
  static const char *NodeId ();
63818
 
  const char *NodeName () const { return NodeId (); }
63819
 
  int Sons () const { return CTree::Sons (sons, 2); }
63820
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); } 
63821
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63822
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
63823
 
  }
63824
 
  CTree *Expr () const { return sons[0]; }
63825
 
  CT_ExprList *Arguments () const { return (CT_ExprList*)sons[1]; }
63826
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
63827
 
   private:
63828
 
  typedef CT_CallExpr CCExprResolveExpr;
63829
 
 public :
63830
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63831
 
  typedef CT_CallExpr CExprResolveExpr;
63832
 
 public :
63833
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63834
 
 
63835
 
} // closed Puma
63836
 
class WinIfExists;
63837
 
class WinImportHandler;
63838
 
class WinMacros;
63839
 
class CMatchSyntax;
63840
 
class ExtGnu;
63841
 
class ExtAC;
63842
 
class ExtACBuilderCoupling;
63843
 
class ExtACSyntaxCoupling;
63844
 
class ExtACTree;
63845
 
class ExtACKeywords;
63846
 
class WinAsm;
63847
 
class WinDeclSpecs;
63848
 
class WinMemberExplSpec;
63849
 
class WinTypeKeywords;
63850
 
class PragmaOnceUnitState;
63851
 
class PragmaOnce;
63852
 
class CCExprResolve;
63853
 
class CExprResolve;
63854
 
namespace Puma {
63855
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
63856
 
  friend class ::WinImportHandler;
63857
 
  friend class ::WinMacros;
63858
 
  friend class ::CMatchSyntax;
63859
 
  friend class ::ExtGnu;
63860
 
  friend class ::ExtAC;
63861
 
  friend class ::ExtACBuilderCoupling;
63862
 
  friend class ::ExtACSyntaxCoupling;
63863
 
  friend class ::ExtACTree;
63864
 
  friend class ::ExtACKeywords;
63865
 
  friend class ::WinAsm;
63866
 
  friend class ::WinDeclSpecs;
63867
 
  friend class ::WinMemberExplSpec;
63868
 
  friend class ::WinTypeKeywords;
63869
 
  friend class ::PragmaOnceUnitState;
63870
 
  friend class ::PragmaOnce;
63871
 
  friend class ::CCExprResolve;
63872
 
  friend class ::CExprResolve;
63873
 
 
63874
 
  CTree *sons[4]; // open, type, close, expr
63875
 
 
63876
 
public:
63877
 
  CT_CastExpr (CTree *o, CTree *t, CTree *c, CTree *e) {
63878
 
    sons[0] = o; sons[1] = t; sons[2] = c; sons[3] = e;
63879
 
  }
63880
 
  static const char *NodeId ();
63881
 
  const char *NodeName () const { return NodeId (); }
63882
 
  int Sons () const { return 4; }
63883
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
63884
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63885
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
63886
 
  }
63887
 
  CTree *Expr () const { return sons[3]; }
63888
 
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
63889
 
   private:
63890
 
  typedef CT_CastExpr CCExprResolveExpr;
63891
 
 public :
63892
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63893
 
  typedef CT_CastExpr CExprResolveExpr;
63894
 
 public :
63895
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63896
 
 
63897
 
} // closed Puma
63898
 
class WinIfExists;
63899
 
class WinImportHandler;
63900
 
class WinMacros;
63901
 
class CMatchSyntax;
63902
 
class ExtGnu;
63903
 
class ExtAC;
63904
 
class ExtACBuilderCoupling;
63905
 
class ExtACSyntaxCoupling;
63906
 
class ExtACTree;
63907
 
class ExtACKeywords;
63908
 
class WinAsm;
63909
 
class WinDeclSpecs;
63910
 
class WinMemberExplSpec;
63911
 
class WinTypeKeywords;
63912
 
class PragmaOnceUnitState;
63913
 
class PragmaOnce;
63914
 
class CCExprResolve;
63915
 
class CExprResolve;
63916
 
namespace Puma {
63917
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
63918
 
  friend class ::WinImportHandler;
63919
 
  friend class ::WinMacros;
63920
 
  friend class ::CMatchSyntax;
63921
 
  friend class ::ExtGnu;
63922
 
  friend class ::ExtAC;
63923
 
  friend class ::ExtACBuilderCoupling;
63924
 
  friend class ::ExtACSyntaxCoupling;
63925
 
  friend class ::ExtACTree;
63926
 
  friend class ::ExtACKeywords;
63927
 
  friend class ::WinAsm;
63928
 
  friend class ::WinDeclSpecs;
63929
 
  friend class ::WinMemberExplSpec;
63930
 
  friend class ::WinTypeKeywords;
63931
 
  friend class ::PragmaOnceUnitState;
63932
 
  friend class ::PragmaOnce;
63933
 
  friend class ::CCExprResolve;
63934
 
  friend class ::CExprResolve;
63935
 
 
63936
 
  CTree *sons[5]; // cast, open, type, close, expr
63937
 
 
63938
 
public:
63939
 
  CT_StaticCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) {
63940
 
    sons[0] = cst; sons[1] = o; sons[2] = t; sons[3] = c; sons[4] = e;
63941
 
  }
63942
 
  static const char *NodeId ();
63943
 
  const char *NodeName () const { return NodeId (); }
63944
 
  int Sons () const { return 5; }
63945
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
63946
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
63947
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
63948
 
  }
63949
 
  CTree *Expr () const { return sons[4]; }
63950
 
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
63951
 
   private:
63952
 
  typedef CT_StaticCast CCExprResolveExpr;
63953
 
 public :
63954
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
63955
 
  typedef CT_StaticCast CExprResolveExpr;
63956
 
 public :
63957
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
63958
 
 
63959
 
} // closed Puma
63960
 
class WinIfExists;
63961
 
class WinImportHandler;
63962
 
class WinMacros;
63963
 
class CMatchSyntax;
63964
 
class ExtGnu;
63965
 
class ExtAC;
63966
 
class ExtACBuilderCoupling;
63967
 
class ExtACSyntaxCoupling;
63968
 
class ExtACTree;
63969
 
class ExtACKeywords;
63970
 
class WinAsm;
63971
 
class WinDeclSpecs;
63972
 
class WinMemberExplSpec;
63973
 
class WinTypeKeywords;
63974
 
class PragmaOnceUnitState;
63975
 
class PragmaOnce;
63976
 
class CCExprResolve;
63977
 
class CExprResolve;
63978
 
namespace Puma {
63979
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
63980
 
  friend class ::WinImportHandler;
63981
 
  friend class ::WinMacros;
63982
 
  friend class ::CMatchSyntax;
63983
 
  friend class ::ExtGnu;
63984
 
  friend class ::ExtAC;
63985
 
  friend class ::ExtACBuilderCoupling;
63986
 
  friend class ::ExtACSyntaxCoupling;
63987
 
  friend class ::ExtACTree;
63988
 
  friend class ::ExtACKeywords;
63989
 
  friend class ::WinAsm;
63990
 
  friend class ::WinDeclSpecs;
63991
 
  friend class ::WinMemberExplSpec;
63992
 
  friend class ::WinTypeKeywords;
63993
 
  friend class ::PragmaOnceUnitState;
63994
 
  friend class ::PragmaOnce;
63995
 
  friend class ::CCExprResolve;
63996
 
  friend class ::CExprResolve;
63997
 
 
63998
 
public:
63999
 
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
64000
 
    CT_StaticCast (cst, o, t, c, e) {}
64001
 
  static const char *NodeId ();
64002
 
  const char *NodeName () const { return NodeId (); }
64003
 
   private:
64004
 
  typedef CT_ConstCast CCExprResolveExpr;
64005
 
 public :
64006
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64007
 
  typedef CT_ConstCast CExprResolveExpr;
64008
 
 public :
64009
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64010
 
 
64011
 
} // closed Puma
64012
 
class WinIfExists;
64013
 
class WinImportHandler;
64014
 
class WinMacros;
64015
 
class CMatchSyntax;
64016
 
class ExtGnu;
64017
 
class ExtAC;
64018
 
class ExtACBuilderCoupling;
64019
 
class ExtACSyntaxCoupling;
64020
 
class ExtACTree;
64021
 
class ExtACKeywords;
64022
 
class WinAsm;
64023
 
class WinDeclSpecs;
64024
 
class WinMemberExplSpec;
64025
 
class WinTypeKeywords;
64026
 
class PragmaOnceUnitState;
64027
 
class PragmaOnce;
64028
 
class CCExprResolve;
64029
 
class CExprResolve;
64030
 
namespace Puma {
64031
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
64032
 
  friend class ::WinImportHandler;
64033
 
  friend class ::WinMacros;
64034
 
  friend class ::CMatchSyntax;
64035
 
  friend class ::ExtGnu;
64036
 
  friend class ::ExtAC;
64037
 
  friend class ::ExtACBuilderCoupling;
64038
 
  friend class ::ExtACSyntaxCoupling;
64039
 
  friend class ::ExtACTree;
64040
 
  friend class ::ExtACKeywords;
64041
 
  friend class ::WinAsm;
64042
 
  friend class ::WinDeclSpecs;
64043
 
  friend class ::WinMemberExplSpec;
64044
 
  friend class ::WinTypeKeywords;
64045
 
  friend class ::PragmaOnceUnitState;
64046
 
  friend class ::PragmaOnce;
64047
 
  friend class ::CCExprResolve;
64048
 
  friend class ::CExprResolve;
64049
 
 
64050
 
public:
64051
 
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
64052
 
    CT_StaticCast (cst, o, t, c, e) {}
64053
 
  static const char *NodeId ();
64054
 
  const char *NodeName () const { return NodeId (); }
64055
 
   private:
64056
 
  typedef CT_ReintCast CCExprResolveExpr;
64057
 
 public :
64058
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64059
 
  typedef CT_ReintCast CExprResolveExpr;
64060
 
 public :
64061
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64062
 
 
64063
 
} // closed Puma
64064
 
class WinIfExists;
64065
 
class WinImportHandler;
64066
 
class WinMacros;
64067
 
class CMatchSyntax;
64068
 
class ExtGnu;
64069
 
class ExtAC;
64070
 
class ExtACBuilderCoupling;
64071
 
class ExtACSyntaxCoupling;
64072
 
class ExtACTree;
64073
 
class ExtACKeywords;
64074
 
class WinAsm;
64075
 
class WinDeclSpecs;
64076
 
class WinMemberExplSpec;
64077
 
class WinTypeKeywords;
64078
 
class PragmaOnceUnitState;
64079
 
class PragmaOnce;
64080
 
class CCExprResolve;
64081
 
class CExprResolve;
64082
 
namespace Puma {
64083
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
64084
 
  friend class ::WinImportHandler;
64085
 
  friend class ::WinMacros;
64086
 
  friend class ::CMatchSyntax;
64087
 
  friend class ::ExtGnu;
64088
 
  friend class ::ExtAC;
64089
 
  friend class ::ExtACBuilderCoupling;
64090
 
  friend class ::ExtACSyntaxCoupling;
64091
 
  friend class ::ExtACTree;
64092
 
  friend class ::ExtACKeywords;
64093
 
  friend class ::WinAsm;
64094
 
  friend class ::WinDeclSpecs;
64095
 
  friend class ::WinMemberExplSpec;
64096
 
  friend class ::WinTypeKeywords;
64097
 
  friend class ::PragmaOnceUnitState;
64098
 
  friend class ::PragmaOnce;
64099
 
  friend class ::CCExprResolve;
64100
 
  friend class ::CExprResolve;
64101
 
 
64102
 
public:
64103
 
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
64104
 
    CT_StaticCast (cst, o, t, c, e) {}
64105
 
  static const char *NodeId ();
64106
 
  const char *NodeName () const { return NodeId (); }
64107
 
   private:
64108
 
  typedef CT_DynamicCast CCExprResolveExpr;
64109
 
 public :
64110
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64111
 
  typedef CT_DynamicCast CExprResolveExpr;
64112
 
 public :
64113
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64114
 
 
64115
 
} // closed Puma
64116
 
class WinIfExists;
64117
 
class WinImportHandler;
64118
 
class WinMacros;
64119
 
class CMatchSyntax;
64120
 
class ExtGnu;
64121
 
class ExtAC;
64122
 
class ExtACBuilderCoupling;
64123
 
class ExtACSyntaxCoupling;
64124
 
class ExtACTree;
64125
 
class ExtACKeywords;
64126
 
class WinAsm;
64127
 
class WinDeclSpecs;
64128
 
class WinMemberExplSpec;
64129
 
class WinTypeKeywords;
64130
 
class PragmaOnceUnitState;
64131
 
class PragmaOnce;
64132
 
class CCExprResolve;
64133
 
class CExprResolve;
64134
 
namespace Puma {
64135
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
64136
 
  friend class ::WinImportHandler;
64137
 
  friend class ::WinMacros;
64138
 
  friend class ::CMatchSyntax;
64139
 
  friend class ::ExtGnu;
64140
 
  friend class ::ExtAC;
64141
 
  friend class ::ExtACBuilderCoupling;
64142
 
  friend class ::ExtACSyntaxCoupling;
64143
 
  friend class ::ExtACTree;
64144
 
  friend class ::ExtACKeywords;
64145
 
  friend class ::WinAsm;
64146
 
  friend class ::WinDeclSpecs;
64147
 
  friend class ::WinMemberExplSpec;
64148
 
  friend class ::WinTypeKeywords;
64149
 
  friend class ::PragmaOnceUnitState;
64150
 
  friend class ::PragmaOnce;
64151
 
  friend class ::CCExprResolve;
64152
 
  friend class ::CExprResolve;
64153
 
 
64154
 
  CTree *_expr; // casted expression
64155
 
 
64156
 
public:
64157
 
  CT_ImplicitCast (CTree *e) : _expr (e) {}
64158
 
  static const char *NodeId ();
64159
 
  const char *NodeName () const { return NodeId (); }
64160
 
  int Sons () const { return 1; }
64161
 
  CTree *Son (int n) const { return n == 0 ? _expr : (CTree*)0; }
64162
 
  CTree *Expr () const { return _expr; }
64163
 
  void ReplaceSon (CTree *old_son, CTree *new_son) 
64164
 
   { if (old_son == _expr) _expr = new_son; }
64165
 
   private:
64166
 
  typedef CT_ImplicitCast CCExprResolveExpr;
64167
 
 public :
64168
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64169
 
  typedef CT_ImplicitCast CExprResolveExpr;
64170
 
 public :
64171
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64172
 
 
64173
 
} // closed Puma
64174
 
class WinIfExists;
64175
 
class WinImportHandler;
64176
 
class WinMacros;
64177
 
class CMatchSyntax;
64178
 
class ExtGnu;
64179
 
class ExtAC;
64180
 
class ExtACBuilderCoupling;
64181
 
class ExtACSyntaxCoupling;
64182
 
class ExtACTree;
64183
 
class ExtACKeywords;
64184
 
class WinAsm;
64185
 
class WinDeclSpecs;
64186
 
class WinMemberExplSpec;
64187
 
class WinTypeKeywords;
64188
 
class PragmaOnceUnitState;
64189
 
class PragmaOnce;
64190
 
class CCExprResolve;
64191
 
class CExprResolve;
64192
 
namespace Puma {
64193
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
64194
 
  friend class ::WinImportHandler;
64195
 
  friend class ::WinMacros;
64196
 
  friend class ::CMatchSyntax;
64197
 
  friend class ::ExtGnu;
64198
 
  friend class ::ExtAC;
64199
 
  friend class ::ExtACBuilderCoupling;
64200
 
  friend class ::ExtACSyntaxCoupling;
64201
 
  friend class ::ExtACTree;
64202
 
  friend class ::ExtACKeywords;
64203
 
  friend class ::WinAsm;
64204
 
  friend class ::WinDeclSpecs;
64205
 
  friend class ::WinMemberExplSpec;
64206
 
  friend class ::WinTypeKeywords;
64207
 
  friend class ::PragmaOnceUnitState;
64208
 
  friend class ::PragmaOnce;
64209
 
  friend class ::CCExprResolve;
64210
 
  friend class ::CExprResolve;
64211
 
 
64212
 
  CTree *sons[4]; // typeid, open, type_id/expr, close
64213
 
 
64214
 
public:
64215
 
  CT_TypeidExpr (CTree *tid, CTree *o, CTree *e, CTree *c) {
64216
 
    sons[0] = tid; sons[1] = o; sons[2] = e; sons[3] = c;
64217
 
  }
64218
 
  static const char *NodeId ();
64219
 
  const char *NodeName () const { return NodeId (); }
64220
 
  int Sons () const { return 4; }
64221
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
64222
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64223
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
64224
 
  }
64225
 
  CTree *Arg () const { return sons[2]; }
64226
 
   private:
64227
 
  typedef CT_TypeidExpr CCExprResolveExpr;
64228
 
 public :
64229
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64230
 
  typedef CT_TypeidExpr CExprResolveExpr;
64231
 
 public :
64232
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64233
 
 
64234
 
} // closed Puma
64235
 
class WinIfExists;
64236
 
class WinImportHandler;
64237
 
class WinMacros;
64238
 
class CMatchSyntax;
64239
 
class ExtGnu;
64240
 
class ExtAC;
64241
 
class ExtACBuilderCoupling;
64242
 
class ExtACSyntaxCoupling;
64243
 
class ExtACTree;
64244
 
class ExtACKeywords;
64245
 
class WinAsm;
64246
 
class WinDeclSpecs;
64247
 
class WinMemberExplSpec;
64248
 
class WinTypeKeywords;
64249
 
class PragmaOnceUnitState;
64250
 
class PragmaOnce;
64251
 
class CCExprResolve;
64252
 
class CExprResolve;
64253
 
namespace Puma {
64254
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
64255
 
  friend class ::WinImportHandler;
64256
 
  friend class ::WinMacros;
64257
 
  friend class ::CMatchSyntax;
64258
 
  friend class ::ExtGnu;
64259
 
  friend class ::ExtAC;
64260
 
  friend class ::ExtACBuilderCoupling;
64261
 
  friend class ::ExtACSyntaxCoupling;
64262
 
  friend class ::ExtACTree;
64263
 
  friend class ::ExtACKeywords;
64264
 
  friend class ::WinAsm;
64265
 
  friend class ::WinDeclSpecs;
64266
 
  friend class ::WinMemberExplSpec;
64267
 
  friend class ::WinTypeKeywords;
64268
 
  friend class ::PragmaOnceUnitState;
64269
 
  friend class ::PragmaOnce;
64270
 
  friend class ::CCExprResolve;
64271
 
  friend class ::CExprResolve;
64272
 
 
64273
 
  CTree *sons[5]; // key, open, type, close, expr
64274
 
 
64275
 
public:
64276
 
  CT_SizeofExpr (CTree *k, CTree *o, CTree *t, CTree *c) {
64277
 
    sons[0] = k; sons[1] = o; sons[2] = t; sons[3] = c; sons[4] = 0;
64278
 
  }
64279
 
  CT_SizeofExpr (CTree *k, CTree *e) {
64280
 
    sons[0] = k; sons[1] = 0; sons[2] = 0; sons[3] = 0; sons[4] = e;
64281
 
  }
64282
 
  static const char *NodeId ();
64283
 
  const char *NodeName () const { return NodeId (); }
64284
 
  int Sons () const { return CTree::Sons (sons, 5); }
64285
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
64286
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64287
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
64288
 
  }
64289
 
  CTree *Expr () const { return sons[4]; }
64290
 
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
64291
 
   private:
64292
 
  typedef CT_SizeofExpr CCExprResolveExpr;
64293
 
 public :
64294
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64295
 
  typedef CT_SizeofExpr CExprResolveExpr;
64296
 
 public :
64297
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64298
 
 
64299
 
} // closed Puma
64300
 
class WinIfExists;
64301
 
class WinImportHandler;
64302
 
class WinMacros;
64303
 
class CMatchSyntax;
64304
 
class ExtGnu;
64305
 
class ExtAC;
64306
 
class ExtACBuilderCoupling;
64307
 
class ExtACSyntaxCoupling;
64308
 
class ExtACTree;
64309
 
class ExtACKeywords;
64310
 
class WinAsm;
64311
 
class WinDeclSpecs;
64312
 
class WinMemberExplSpec;
64313
 
class WinTypeKeywords;
64314
 
class PragmaOnceUnitState;
64315
 
class PragmaOnce;
64316
 
class CCExprResolve;
64317
 
class CExprResolve;
64318
 
namespace Puma {
64319
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
64320
 
  friend class ::WinImportHandler;
64321
 
  friend class ::WinMacros;
64322
 
  friend class ::CMatchSyntax;
64323
 
  friend class ::ExtGnu;
64324
 
  friend class ::ExtAC;
64325
 
  friend class ::ExtACBuilderCoupling;
64326
 
  friend class ::ExtACSyntaxCoupling;
64327
 
  friend class ::ExtACTree;
64328
 
  friend class ::ExtACKeywords;
64329
 
  friend class ::WinAsm;
64330
 
  friend class ::WinDeclSpecs;
64331
 
  friend class ::WinMemberExplSpec;
64332
 
  friend class ::WinTypeKeywords;
64333
 
  friend class ::PragmaOnceUnitState;
64334
 
  friend class ::PragmaOnce;
64335
 
  friend class ::CCExprResolve;
64336
 
  friend class ::CExprResolve;
64337
 
 
64338
 
  CTree *sons[3]; // open, index, close
64339
 
 
64340
 
public:
64341
 
  CT_IndexDesignator (CTree *o, CTree *i, CTree *c) {
64342
 
    sons[0] = o; sons[1] = i; sons[2] = c;
64343
 
  }
64344
 
  static const char *NodeId ();
64345
 
  const char *NodeName () const { return NodeId (); }
64346
 
  int Sons () const { return 3; }
64347
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
64348
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64349
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
64350
 
  }
64351
 
   private:
64352
 
  typedef CT_IndexDesignator CCExprResolveExpr;
64353
 
 public :
64354
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64355
 
  typedef CT_IndexDesignator CExprResolveExpr;
64356
 
 public :
64357
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64358
 
 
64359
 
} // closed Puma
64360
 
class WinIfExists;
64361
 
class WinImportHandler;
64362
 
class WinMacros;
64363
 
class CMatchSyntax;
64364
 
class ExtGnu;
64365
 
class ExtAC;
64366
 
class ExtACBuilderCoupling;
64367
 
class ExtACSyntaxCoupling;
64368
 
class ExtACTree;
64369
 
class ExtACKeywords;
64370
 
class WinAsm;
64371
 
class WinDeclSpecs;
64372
 
class WinMemberExplSpec;
64373
 
class WinTypeKeywords;
64374
 
class PragmaOnceUnitState;
64375
 
class PragmaOnce;
64376
 
class CCExprResolve;
64377
 
class CExprResolve;
64378
 
namespace Puma {
64379
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
64380
 
  friend class ::WinImportHandler;
64381
 
  friend class ::WinMacros;
64382
 
  friend class ::CMatchSyntax;
64383
 
  friend class ::ExtGnu;
64384
 
  friend class ::ExtAC;
64385
 
  friend class ::ExtACBuilderCoupling;
64386
 
  friend class ::ExtACSyntaxCoupling;
64387
 
  friend class ::ExtACTree;
64388
 
  friend class ::ExtACKeywords;
64389
 
  friend class ::WinAsm;
64390
 
  friend class ::WinDeclSpecs;
64391
 
  friend class ::WinMemberExplSpec;
64392
 
  friend class ::WinTypeKeywords;
64393
 
  friend class ::PragmaOnceUnitState;
64394
 
  friend class ::PragmaOnce;
64395
 
  friend class ::CCExprResolve;
64396
 
  friend class ::CExprResolve;
64397
 
 
64398
 
  CTree *sons[2]; // dot, member
64399
 
 
64400
 
public:
64401
 
  CT_MembDesignator (CTree *d, CTree *m) { sons[0] = d; sons[1] = m; }
64402
 
  static const char *NodeId ();
64403
 
  const char *NodeName () const { return NodeId (); }
64404
 
  int Sons () const { return 2; }
64405
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
64406
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64407
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
64408
 
  }
64409
 
   private:
64410
 
  typedef CT_MembDesignator CCExprResolveExpr;
64411
 
 public :
64412
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
64413
 
  typedef CT_MembDesignator CExprResolveExpr;
64414
 
 public :
64415
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
64416
 
 
64417
 
} // closed Puma
64418
 
class WinIfExists;
64419
 
class WinImportHandler;
64420
 
class WinMacros;
64421
 
class CMatchSyntax;
64422
 
class ExtGnu;
64423
 
class ExtAC;
64424
 
class ExtACBuilderCoupling;
64425
 
class ExtACSyntaxCoupling;
64426
 
class ExtACTree;
64427
 
class ExtACKeywords;
64428
 
class WinAsm;
64429
 
class WinDeclSpecs;
64430
 
class WinMemberExplSpec;
64431
 
class WinTypeKeywords;
64432
 
class PragmaOnceUnitState;
64433
 
class PragmaOnce;
64434
 
class CCExprResolve;
64435
 
class CExprResolve;
64436
 
namespace Puma {
64437
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
64438
 
  friend class ::WinImportHandler;
64439
 
  friend class ::WinMacros;
64440
 
  friend class ::CMatchSyntax;
64441
 
  friend class ::ExtGnu;
64442
 
  friend class ::ExtAC;
64443
 
  friend class ::ExtACBuilderCoupling;
64444
 
  friend class ::ExtACSyntaxCoupling;
64445
 
  friend class ::ExtACTree;
64446
 
  friend class ::ExtACKeywords;
64447
 
  friend class ::WinAsm;
64448
 
  friend class ::WinDeclSpecs;
64449
 
  friend class ::WinMemberExplSpec;
64450
 
  friend class ::WinTypeKeywords;
64451
 
  friend class ::PragmaOnceUnitState;
64452
 
  friend class ::PragmaOnce;
64453
 
  friend class ::CCExprResolve;
64454
 
  friend class ::CExprResolve;
64455
 
 
64456
 
public:
64457
 
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
64458
 
  static const char *NodeId ();
64459
 
  const char *NodeName () const { return NodeId (); }
64460
 
 
64461
 
  CTypeInfo *Type () const { return type; }
64462
 
  CExprValue *Value () const { return value; }
64463
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
64464
 
};
64465
 
 
64466
 
/*****************************************************************************/
64467
 
/*                                                                           */
64468
 
/*                         Declaration specifiers                            */
64469
 
/*                                                                           */
64470
 
/*****************************************************************************/
64471
 
 
64472
 
} // closed Puma
64473
 
class WinIfExists;
64474
 
class WinImportHandler;
64475
 
class WinMacros;
64476
 
class CMatchSyntax;
64477
 
class ExtGnu;
64478
 
class ExtAC;
64479
 
class ExtACBuilderCoupling;
64480
 
class ExtACSyntaxCoupling;
64481
 
class ExtACTree;
64482
 
class ExtACKeywords;
64483
 
class WinAsm;
64484
 
class WinDeclSpecs;
64485
 
class WinMemberExplSpec;
64486
 
class WinTypeKeywords;
64487
 
class PragmaOnceUnitState;
64488
 
class PragmaOnce;
64489
 
class CCExprResolve;
64490
 
class CExprResolve;
64491
 
namespace Puma {
64492
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
64493
 
  friend class ::WinImportHandler;
64494
 
  friend class ::WinMacros;
64495
 
  friend class ::CMatchSyntax;
64496
 
  friend class ::ExtGnu;
64497
 
  friend class ::ExtAC;
64498
 
  friend class ::ExtACBuilderCoupling;
64499
 
  friend class ::ExtACSyntaxCoupling;
64500
 
  friend class ::ExtACTree;
64501
 
  friend class ::ExtACKeywords;
64502
 
  friend class ::WinAsm;
64503
 
  friend class ::WinDeclSpecs;
64504
 
  friend class ::WinMemberExplSpec;
64505
 
  friend class ::WinTypeKeywords;
64506
 
  friend class ::PragmaOnceUnitState;
64507
 
  friend class ::PragmaOnce;
64508
 
  friend class ::CCExprResolve;
64509
 
  friend class ::CExprResolve;
64510
 
 
64511
 
protected:
64512
 
  CT_DeclSpec () {}
64513
 
};
64514
 
 
64515
 
} // closed Puma
64516
 
class WinIfExists;
64517
 
class WinImportHandler;
64518
 
class WinMacros;
64519
 
class CMatchSyntax;
64520
 
class ExtGnu;
64521
 
class ExtAC;
64522
 
class ExtACBuilderCoupling;
64523
 
class ExtACSyntaxCoupling;
64524
 
class ExtACTree;
64525
 
class ExtACKeywords;
64526
 
class WinAsm;
64527
 
class WinDeclSpecs;
64528
 
class WinMemberExplSpec;
64529
 
class WinTypeKeywords;
64530
 
class PragmaOnceUnitState;
64531
 
class PragmaOnce;
64532
 
class CCExprResolve;
64533
 
class CExprResolve;
64534
 
namespace Puma {
64535
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
64536
 
  friend class ::WinImportHandler;
64537
 
  friend class ::WinMacros;
64538
 
  friend class ::CMatchSyntax;
64539
 
  friend class ::ExtGnu;
64540
 
  friend class ::ExtAC;
64541
 
  friend class ::ExtACBuilderCoupling;
64542
 
  friend class ::ExtACSyntaxCoupling;
64543
 
  friend class ::ExtACTree;
64544
 
  friend class ::ExtACKeywords;
64545
 
  friend class ::WinAsm;
64546
 
  friend class ::WinDeclSpecs;
64547
 
  friend class ::WinMemberExplSpec;
64548
 
  friend class ::WinTypeKeywords;
64549
 
  friend class ::PragmaOnceUnitState;
64550
 
  friend class ::PragmaOnce;
64551
 
  friend class ::CCExprResolve;
64552
 
  friend class ::CExprResolve;
64553
 
 
64554
 
public:
64555
 
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
64556
 
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
64557
 
              PDS_CONST, PDS_VOLATILE, PDS_RESTRICT, PDS_CHAR, PDS_WCHAR_T, 
64558
 
              PDS_BOOL, PDS_SHORT, PDS_INT, PDS_LONG, PDS_SIGNED, PDS_UNSIGNED, 
64559
 
              PDS_FLOAT, PDS_DOUBLE, PDS_VOID, 
64560
 
              // AspectC++ specific type specifier
64561
 
              PDS_UNKNOWN_T,
64562
 
              // Win specific declaration specifiers
64563
 
              PDS_CDECL, PDS_STDCALL, PDS_FASTCALL, PDS_INT64,
64564
 
              PDS_UNKNOWN, PDS_NUM };
64565
 
 
64566
 
private:
64567
 
  Type _type;
64568
 
  CT_Token *_token;
64569
 
 
64570
 
  void determine_type ();
64571
 
 
64572
 
public:
64573
 
  CT_PrimDeclSpec (CT_Token *t) : _token (t) { determine_type (); }
64574
 
  CT_PrimDeclSpec (Type t) : _token (0) { _type = t; }
64575
 
  static const char *NodeId ();
64576
 
  const char *NodeName () const { return NodeId (); }
64577
 
  int Sons () const { return _token ? 1 : 0; }
64578
 
  CTree *Son (int n) const 
64579
 
   { return (n == 0) ? _token : (CTree*)0; }
64580
 
  const char *SpecText () const 
64581
 
   { return _token ? _token->token ()->text ().c_str () : " "; }
64582
 
  Type SpecType () const { return _type; }
64583
 
  static const int NumTypes = PDS_NUM;
64584
 
};
64585
 
 
64586
 
} // closed Puma
64587
 
class WinIfExists;
64588
 
class WinImportHandler;
64589
 
class WinMacros;
64590
 
class CMatchSyntax;
64591
 
class ExtGnu;
64592
 
class ExtAC;
64593
 
class ExtACBuilderCoupling;
64594
 
class ExtACSyntaxCoupling;
64595
 
class ExtACTree;
64596
 
class ExtACKeywords;
64597
 
class WinAsm;
64598
 
class WinDeclSpecs;
64599
 
class WinMemberExplSpec;
64600
 
class WinTypeKeywords;
64601
 
class PragmaOnceUnitState;
64602
 
class PragmaOnce;
64603
 
class CCExprResolve;
64604
 
class CExprResolve;
64605
 
namespace Puma {
64606
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
64607
 
  friend class ::WinImportHandler;
64608
 
  friend class ::WinMacros;
64609
 
  friend class ::CMatchSyntax;
64610
 
  friend class ::ExtGnu;
64611
 
  friend class ::ExtAC;
64612
 
  friend class ::ExtACBuilderCoupling;
64613
 
  friend class ::ExtACSyntaxCoupling;
64614
 
  friend class ::ExtACTree;
64615
 
  friend class ::ExtACKeywords;
64616
 
  friend class ::WinAsm;
64617
 
  friend class ::WinDeclSpecs;
64618
 
  friend class ::WinMemberExplSpec;
64619
 
  friend class ::WinTypeKeywords;
64620
 
  friend class ::PragmaOnceUnitState;
64621
 
  friend class ::PragmaOnce;
64622
 
  friend class ::CCExprResolve;
64623
 
  friend class ::CExprResolve;
64624
 
 
64625
 
  CTree *sons[2]; // declspecs, declarator
64626
 
 
64627
 
public:
64628
 
  CT_NamedType (CTree *dss, CTree *d) { sons[0] = dss; sons[1] = d; }
64629
 
  static const char *NodeId ();
64630
 
  const char *NodeName () const { return NodeId (); }
64631
 
  int Sons () const { return CTree::Sons (sons, 2); }
64632
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
64633
 
  CTree *Declarator () const { return sons[1]; }
64634
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64635
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
64636
 
  }
64637
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
64638
 
};
64639
 
      
64640
 
} // closed Puma
64641
 
class WinIfExists;
64642
 
class WinImportHandler;
64643
 
class WinMacros;
64644
 
class CMatchSyntax;
64645
 
class ExtGnu;
64646
 
class ExtAC;
64647
 
class ExtACBuilderCoupling;
64648
 
class ExtACSyntaxCoupling;
64649
 
class ExtACTree;
64650
 
class ExtACKeywords;
64651
 
class WinAsm;
64652
 
class WinDeclSpecs;
64653
 
class WinMemberExplSpec;
64654
 
class WinTypeKeywords;
64655
 
class PragmaOnceUnitState;
64656
 
class PragmaOnce;
64657
 
class CCExprResolve;
64658
 
class CExprResolve;
64659
 
namespace Puma {
64660
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
64661
 
  friend class ::WinImportHandler;
64662
 
  friend class ::WinMacros;
64663
 
  friend class ::CMatchSyntax;
64664
 
  friend class ::ExtGnu;
64665
 
  friend class ::ExtAC;
64666
 
  friend class ::ExtACBuilderCoupling;
64667
 
  friend class ::ExtACSyntaxCoupling;
64668
 
  friend class ::ExtACTree;
64669
 
  friend class ::ExtACKeywords;
64670
 
  friend class ::WinAsm;
64671
 
  friend class ::WinDeclSpecs;
64672
 
  friend class ::WinMemberExplSpec;
64673
 
  friend class ::WinTypeKeywords;
64674
 
  friend class ::PragmaOnceUnitState;
64675
 
  friend class ::PragmaOnce;
64676
 
  friend class ::CCExprResolve;
64677
 
  friend class ::CExprResolve;
64678
 
 
64679
 
  CTree *sons[2]; // key, name
64680
 
  
64681
 
public:
64682
 
  CT_ClassSpec (CTree *k, CTree *n) { sons[0] = k; sons[1] = n; }
64683
 
  static const char *NodeId ();
64684
 
  const char *NodeName () const { return NodeId (); }
64685
 
  int Sons () const { return 2; }
64686
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); } 
64687
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
64688
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
64689
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64690
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
64691
 
  }
64692
 
};
64693
 
 
64694
 
} // closed Puma
64695
 
class WinIfExists;
64696
 
class WinImportHandler;
64697
 
class WinMacros;
64698
 
class CMatchSyntax;
64699
 
class ExtGnu;
64700
 
class ExtAC;
64701
 
class ExtACBuilderCoupling;
64702
 
class ExtACSyntaxCoupling;
64703
 
class ExtACTree;
64704
 
class ExtACKeywords;
64705
 
class WinAsm;
64706
 
class WinDeclSpecs;
64707
 
class WinMemberExplSpec;
64708
 
class WinTypeKeywords;
64709
 
class PragmaOnceUnitState;
64710
 
class PragmaOnce;
64711
 
class CCExprResolve;
64712
 
class CExprResolve;
64713
 
namespace Puma {
64714
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
64715
 
  friend class ::WinImportHandler;
64716
 
  friend class ::WinMacros;
64717
 
  friend class ::CMatchSyntax;
64718
 
  friend class ::ExtGnu;
64719
 
  friend class ::ExtAC;
64720
 
  friend class ::ExtACBuilderCoupling;
64721
 
  friend class ::ExtACSyntaxCoupling;
64722
 
  friend class ::ExtACTree;
64723
 
  friend class ::ExtACKeywords;
64724
 
  friend class ::WinAsm;
64725
 
  friend class ::WinDeclSpecs;
64726
 
  friend class ::WinMemberExplSpec;
64727
 
  friend class ::WinTypeKeywords;
64728
 
  friend class ::PragmaOnceUnitState;
64729
 
  friend class ::PragmaOnce;
64730
 
  friend class ::CCExprResolve;
64731
 
  friend class ::CExprResolve;
64732
 
 
64733
 
public:
64734
 
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
64735
 
  static const char *NodeId ();
64736
 
  const char *NodeName () const { return NodeId (); }
64737
 
};
64738
 
 
64739
 
} // closed Puma
64740
 
class WinIfExists;
64741
 
class WinImportHandler;
64742
 
class WinMacros;
64743
 
class CMatchSyntax;
64744
 
class ExtGnu;
64745
 
class ExtAC;
64746
 
class ExtACBuilderCoupling;
64747
 
class ExtACSyntaxCoupling;
64748
 
class ExtACTree;
64749
 
class ExtACKeywords;
64750
 
class WinAsm;
64751
 
class WinDeclSpecs;
64752
 
class WinMemberExplSpec;
64753
 
class WinTypeKeywords;
64754
 
class PragmaOnceUnitState;
64755
 
class PragmaOnce;
64756
 
class CCExprResolve;
64757
 
class CExprResolve;
64758
 
namespace Puma {
64759
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
64760
 
  friend class ::WinImportHandler;
64761
 
  friend class ::WinMacros;
64762
 
  friend class ::CMatchSyntax;
64763
 
  friend class ::ExtGnu;
64764
 
  friend class ::ExtAC;
64765
 
  friend class ::ExtACBuilderCoupling;
64766
 
  friend class ::ExtACSyntaxCoupling;
64767
 
  friend class ::ExtACTree;
64768
 
  friend class ::ExtACKeywords;
64769
 
  friend class ::WinAsm;
64770
 
  friend class ::WinDeclSpecs;
64771
 
  friend class ::WinMemberExplSpec;
64772
 
  friend class ::WinTypeKeywords;
64773
 
  friend class ::PragmaOnceUnitState;
64774
 
  friend class ::PragmaOnce;
64775
 
  friend class ::CCExprResolve;
64776
 
  friend class ::CExprResolve;
64777
 
 
64778
 
public:
64779
 
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
64780
 
  static const char *NodeId ();
64781
 
  const char *NodeName () const { return NodeId (); }
64782
 
};
64783
 
 
64784
 
} // closed Puma
64785
 
class WinIfExists;
64786
 
class WinImportHandler;
64787
 
class WinMacros;
64788
 
class CMatchSyntax;
64789
 
class ExtGnu;
64790
 
class ExtAC;
64791
 
class ExtACBuilderCoupling;
64792
 
class ExtACSyntaxCoupling;
64793
 
class ExtACTree;
64794
 
class ExtACKeywords;
64795
 
class WinAsm;
64796
 
class WinDeclSpecs;
64797
 
class WinMemberExplSpec;
64798
 
class WinTypeKeywords;
64799
 
class PragmaOnceUnitState;
64800
 
class PragmaOnce;
64801
 
class CCExprResolve;
64802
 
class CExprResolve;
64803
 
namespace Puma {
64804
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
64805
 
  friend class ::WinImportHandler;
64806
 
  friend class ::WinMacros;
64807
 
  friend class ::CMatchSyntax;
64808
 
  friend class ::ExtGnu;
64809
 
  friend class ::ExtAC;
64810
 
  friend class ::ExtACBuilderCoupling;
64811
 
  friend class ::ExtACSyntaxCoupling;
64812
 
  friend class ::ExtACTree;
64813
 
  friend class ::ExtACKeywords;
64814
 
  friend class ::WinAsm;
64815
 
  friend class ::WinDeclSpecs;
64816
 
  friend class ::WinMemberExplSpec;
64817
 
  friend class ::WinTypeKeywords;
64818
 
  friend class ::PragmaOnceUnitState;
64819
 
  friend class ::PragmaOnce;
64820
 
  friend class ::CCExprResolve;
64821
 
  friend class ::CExprResolve;
64822
 
 
64823
 
  CTree *sons[2]; // throw, type_id_list
64824
 
  
64825
 
public:
64826
 
  CT_ExceptionSpec (CTree *k, CTree *l) { sons[0] = k; sons[1] = l; }
64827
 
  static const char *NodeId ();
64828
 
  const char *NodeName () const { return NodeId (); }
64829
 
  int Sons () const { return 2; }
64830
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
64831
 
  CT_ArgDeclList *Arguments () const { return (CT_ArgDeclList*)sons[1]; }
64832
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64833
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
64834
 
  }
64835
 
};
64836
 
 
64837
 
/*****************************************************************************/
64838
 
/*                                                                           */
64839
 
/*                              Declarations                                 */
64840
 
/*                                                                           */
64841
 
/*****************************************************************************/
64842
 
 
64843
 
} // closed Puma
64844
 
class WinIfExists;
64845
 
class WinImportHandler;
64846
 
class WinMacros;
64847
 
class CMatchSyntax;
64848
 
class ExtGnu;
64849
 
class ExtAC;
64850
 
class ExtACBuilderCoupling;
64851
 
class ExtACSyntaxCoupling;
64852
 
class ExtACTree;
64853
 
class ExtACKeywords;
64854
 
class WinAsm;
64855
 
class WinDeclSpecs;
64856
 
class WinMemberExplSpec;
64857
 
class WinTypeKeywords;
64858
 
class PragmaOnceUnitState;
64859
 
class PragmaOnce;
64860
 
class CCExprResolve;
64861
 
class CExprResolve;
64862
 
namespace Puma {
64863
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
64864
 
  friend class ::WinImportHandler;
64865
 
  friend class ::WinMacros;
64866
 
  friend class ::CMatchSyntax;
64867
 
  friend class ::ExtGnu;
64868
 
  friend class ::ExtAC;
64869
 
  friend class ::ExtACBuilderCoupling;
64870
 
  friend class ::ExtACSyntaxCoupling;
64871
 
  friend class ::ExtACTree;
64872
 
  friend class ::ExtACKeywords;
64873
 
  friend class ::WinAsm;
64874
 
  friend class ::WinDeclSpecs;
64875
 
  friend class ::WinMemberExplSpec;
64876
 
  friend class ::WinTypeKeywords;
64877
 
  friend class ::PragmaOnceUnitState;
64878
 
  friend class ::PragmaOnce;
64879
 
  friend class ::CCExprResolve;
64880
 
  friend class ::CExprResolve;
64881
 
 
64882
 
  CT_LinkageSpec *_linkage;
64883
 
protected:
64884
 
  CT_Decl () : _linkage (0) {}
64885
 
public:
64886
 
  void Linkage (CT_LinkageSpec *l) { _linkage = l; }
64887
 
  CT_LinkageSpec *Linkage () const { return _linkage; }
64888
 
};
64889
 
 
64890
 
} // closed Puma
64891
 
class WinIfExists;
64892
 
class WinImportHandler;
64893
 
class WinMacros;
64894
 
class CMatchSyntax;
64895
 
class ExtGnu;
64896
 
class ExtAC;
64897
 
class ExtACBuilderCoupling;
64898
 
class ExtACSyntaxCoupling;
64899
 
class ExtACTree;
64900
 
class ExtACKeywords;
64901
 
class WinAsm;
64902
 
class WinDeclSpecs;
64903
 
class WinMemberExplSpec;
64904
 
class WinTypeKeywords;
64905
 
class PragmaOnceUnitState;
64906
 
class PragmaOnce;
64907
 
class CCExprResolve;
64908
 
class CExprResolve;
64909
 
namespace Puma {
64910
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
64911
 
  friend class ::WinImportHandler;
64912
 
  friend class ::WinMacros;
64913
 
  friend class ::CMatchSyntax;
64914
 
  friend class ::ExtGnu;
64915
 
  friend class ::ExtAC;
64916
 
  friend class ::ExtACBuilderCoupling;
64917
 
  friend class ::ExtACSyntaxCoupling;
64918
 
  friend class ::ExtACTree;
64919
 
  friend class ::ExtACKeywords;
64920
 
  friend class ::WinAsm;
64921
 
  friend class ::WinDeclSpecs;
64922
 
  friend class ::WinMemberExplSpec;
64923
 
  friend class ::WinTypeKeywords;
64924
 
  friend class ::PragmaOnceUnitState;
64925
 
  friend class ::PragmaOnce;
64926
 
  friend class ::CCExprResolve;
64927
 
  friend class ::CExprResolve;
64928
 
 
64929
 
public:
64930
 
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
64931
 
  static const char *NodeId ();
64932
 
  const char *NodeName () const { return NodeId (); }
64933
 
};
64934
 
   
64935
 
} // closed Puma
64936
 
class WinIfExists;
64937
 
class WinImportHandler;
64938
 
class WinMacros;
64939
 
class CMatchSyntax;
64940
 
class ExtGnu;
64941
 
class ExtAC;
64942
 
class ExtACBuilderCoupling;
64943
 
class ExtACSyntaxCoupling;
64944
 
class ExtACTree;
64945
 
class ExtACKeywords;
64946
 
class WinAsm;
64947
 
class WinDeclSpecs;
64948
 
class WinMemberExplSpec;
64949
 
class WinTypeKeywords;
64950
 
class PragmaOnceUnitState;
64951
 
class PragmaOnce;
64952
 
class CCExprResolve;
64953
 
class CExprResolve;
64954
 
namespace Puma {
64955
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
64956
 
  friend class ::WinImportHandler;
64957
 
  friend class ::WinMacros;
64958
 
  friend class ::CMatchSyntax;
64959
 
  friend class ::ExtGnu;
64960
 
  friend class ::ExtAC;
64961
 
  friend class ::ExtACBuilderCoupling;
64962
 
  friend class ::ExtACSyntaxCoupling;
64963
 
  friend class ::ExtACTree;
64964
 
  friend class ::ExtACKeywords;
64965
 
  friend class ::WinAsm;
64966
 
  friend class ::WinDeclSpecs;
64967
 
  friend class ::WinMemberExplSpec;
64968
 
  friend class ::WinTypeKeywords;
64969
 
  friend class ::PragmaOnceUnitState;
64970
 
  friend class ::PragmaOnce;
64971
 
  friend class ::CCExprResolve;
64972
 
  friend class ::CExprResolve;
64973
 
 
64974
 
  CTree *sons[3]; // declspecs, declarators, colon
64975
 
 
64976
 
public:
64977
 
  CT_ObjDecl (CTree *dsl, CTree *dl, CTree *c) {
64978
 
    sons[0] = dsl; sons[1] = dl; sons[2] = c;
64979
 
  }
64980
 
  static const char *NodeId ();
64981
 
  const char *NodeName () const { return NodeId (); }
64982
 
  int Sons () const { return 3; }
64983
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
64984
 
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
64985
 
  CT_DeclaratorList *Declarators () const { return (CT_DeclaratorList*)sons[1]; }
64986
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
64987
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
64988
 
  }
64989
 
};
64990
 
 
64991
 
} // closed Puma
64992
 
class WinIfExists;
64993
 
class WinImportHandler;
64994
 
class WinMacros;
64995
 
class CMatchSyntax;
64996
 
class ExtGnu;
64997
 
class ExtAC;
64998
 
class ExtACBuilderCoupling;
64999
 
class ExtACSyntaxCoupling;
65000
 
class ExtACTree;
65001
 
class ExtACKeywords;
65002
 
class WinAsm;
65003
 
class WinDeclSpecs;
65004
 
class WinMemberExplSpec;
65005
 
class WinTypeKeywords;
65006
 
class PragmaOnceUnitState;
65007
 
class PragmaOnce;
65008
 
class CCExprResolve;
65009
 
class CExprResolve;
65010
 
namespace Puma {
65011
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
65012
 
  friend class ::WinImportHandler;
65013
 
  friend class ::WinMacros;
65014
 
  friend class ::CMatchSyntax;
65015
 
  friend class ::ExtGnu;
65016
 
  friend class ::ExtAC;
65017
 
  friend class ::ExtACBuilderCoupling;
65018
 
  friend class ::ExtACSyntaxCoupling;
65019
 
  friend class ::ExtACTree;
65020
 
  friend class ::ExtACKeywords;
65021
 
  friend class ::WinAsm;
65022
 
  friend class ::WinDeclSpecs;
65023
 
  friend class ::WinMemberExplSpec;
65024
 
  friend class ::WinTypeKeywords;
65025
 
  friend class ::PragmaOnceUnitState;
65026
 
  friend class ::PragmaOnce;
65027
 
  friend class ::CCExprResolve;
65028
 
  friend class ::CExprResolve;
65029
 
 
65030
 
  CTree *sons[3]; // export, param_list, decl
65031
 
 
65032
 
public:
65033
 
  CT_TemplateDecl (CTree *e, CTree *p, CTree *d) {
65034
 
    sons[0] = e; sons[1] = p; sons[2] = d;
65035
 
  }
65036
 
  static const char *NodeId ();
65037
 
  const char *NodeName () const { return NodeId (); }
65038
 
  int Sons () const { return CTree::Sons (sons, 3); }
65039
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
65040
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65041
 
    CTree::ReplaceSon (sons, 3, old_son, new_son); 
65042
 
  }
65043
 
  CTree *Export () const { return sons[0]; }
65044
 
  CT_TemplateParamList *Parameters () const { 
65045
 
    return (CT_TemplateParamList*)sons[1]; 
65046
 
  }
65047
 
  CTree *Declaration () const { return sons[2]; }
65048
 
};
65049
 
 
65050
 
} // closed Puma
65051
 
class WinIfExists;
65052
 
class WinImportHandler;
65053
 
class WinMacros;
65054
 
class CMatchSyntax;
65055
 
class ExtGnu;
65056
 
class ExtAC;
65057
 
class ExtACBuilderCoupling;
65058
 
class ExtACSyntaxCoupling;
65059
 
class ExtACTree;
65060
 
class ExtACKeywords;
65061
 
class WinAsm;
65062
 
class WinDeclSpecs;
65063
 
class WinMemberExplSpec;
65064
 
class WinTypeKeywords;
65065
 
class PragmaOnceUnitState;
65066
 
class PragmaOnce;
65067
 
class CCExprResolve;
65068
 
class CExprResolve;
65069
 
namespace Puma {
65070
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
65071
 
  friend class ::WinImportHandler;
65072
 
  friend class ::WinMacros;
65073
 
  friend class ::CMatchSyntax;
65074
 
  friend class ::ExtGnu;
65075
 
  friend class ::ExtAC;
65076
 
  friend class ::ExtACBuilderCoupling;
65077
 
  friend class ::ExtACSyntaxCoupling;
65078
 
  friend class ::ExtACTree;
65079
 
  friend class ::ExtACKeywords;
65080
 
  friend class ::WinAsm;
65081
 
  friend class ::WinDeclSpecs;
65082
 
  friend class ::WinMemberExplSpec;
65083
 
  friend class ::WinTypeKeywords;
65084
 
  friend class ::PragmaOnceUnitState;
65085
 
  friend class ::PragmaOnce;
65086
 
  friend class ::CCExprResolve;
65087
 
  friend class ::CExprResolve;
65088
 
 
65089
 
protected:
65090
 
  CT_TemplateParamDecl () {}
65091
 
  
65092
 
public:
65093
 
  virtual CT_ExprList *DefaultArgument () const = 0;
65094
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65095
 
};
65096
 
 
65097
 
} // closed Puma
65098
 
class WinIfExists;
65099
 
class WinImportHandler;
65100
 
class WinMacros;
65101
 
class CMatchSyntax;
65102
 
class ExtGnu;
65103
 
class ExtAC;
65104
 
class ExtACBuilderCoupling;
65105
 
class ExtACSyntaxCoupling;
65106
 
class ExtACTree;
65107
 
class ExtACKeywords;
65108
 
class WinAsm;
65109
 
class WinDeclSpecs;
65110
 
class WinMemberExplSpec;
65111
 
class WinTypeKeywords;
65112
 
class PragmaOnceUnitState;
65113
 
class PragmaOnce;
65114
 
class CCExprResolve;
65115
 
class CExprResolve;
65116
 
namespace Puma {
65117
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
65118
 
  friend class ::WinImportHandler;
65119
 
  friend class ::WinMacros;
65120
 
  friend class ::CMatchSyntax;
65121
 
  friend class ::ExtGnu;
65122
 
  friend class ::ExtAC;
65123
 
  friend class ::ExtACBuilderCoupling;
65124
 
  friend class ::ExtACSyntaxCoupling;
65125
 
  friend class ::ExtACTree;
65126
 
  friend class ::ExtACKeywords;
65127
 
  friend class ::WinAsm;
65128
 
  friend class ::WinDeclSpecs;
65129
 
  friend class ::WinMemberExplSpec;
65130
 
  friend class ::WinTypeKeywords;
65131
 
  friend class ::PragmaOnceUnitState;
65132
 
  friend class ::PragmaOnce;
65133
 
  friend class ::CCExprResolve;
65134
 
  friend class ::CExprResolve;
65135
 
 
65136
 
  CTree *sons[3]; // declspecs, declarator, init
65137
 
 
65138
 
public:
65139
 
  CT_NonTypeParamDecl (CTree *dsl, CTree *d, CTree *i = (CTree*)0) {
65140
 
    sons[0] = dsl; sons[1] = d; sons[2] = i;
65141
 
  }
65142
 
  static const char *NodeId ();
65143
 
  const char *NodeName () const { return NodeId (); }
65144
 
  int Sons () const { return CTree::Sons (sons, 3); }
65145
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
65146
 
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
65147
 
  CTree *Declarator () const { return sons[1]; }
65148
 
  CT_ExprList *DefaultArgument () const { return (CT_ExprList*)sons[2]; }
65149
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65150
 
  void Initializer (CTree *i) { sons[2] = i; }
65151
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65152
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
65153
 
  }
65154
 
};
65155
 
 
65156
 
} // closed Puma
65157
 
class WinIfExists;
65158
 
class WinImportHandler;
65159
 
class WinMacros;
65160
 
class CMatchSyntax;
65161
 
class ExtGnu;
65162
 
class ExtAC;
65163
 
class ExtACBuilderCoupling;
65164
 
class ExtACSyntaxCoupling;
65165
 
class ExtACTree;
65166
 
class ExtACKeywords;
65167
 
class WinAsm;
65168
 
class WinDeclSpecs;
65169
 
class WinMemberExplSpec;
65170
 
class WinTypeKeywords;
65171
 
class PragmaOnceUnitState;
65172
 
class PragmaOnce;
65173
 
class CCExprResolve;
65174
 
class CExprResolve;
65175
 
namespace Puma {
65176
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
65177
 
  friend class ::WinImportHandler;
65178
 
  friend class ::WinMacros;
65179
 
  friend class ::CMatchSyntax;
65180
 
  friend class ::ExtGnu;
65181
 
  friend class ::ExtAC;
65182
 
  friend class ::ExtACBuilderCoupling;
65183
 
  friend class ::ExtACSyntaxCoupling;
65184
 
  friend class ::ExtACTree;
65185
 
  friend class ::ExtACKeywords;
65186
 
  friend class ::WinAsm;
65187
 
  friend class ::WinDeclSpecs;
65188
 
  friend class ::WinMemberExplSpec;
65189
 
  friend class ::WinTypeKeywords;
65190
 
  friend class ::PragmaOnceUnitState;
65191
 
  friend class ::PragmaOnce;
65192
 
  friend class ::CCExprResolve;
65193
 
  friend class ::CExprResolve;
65194
 
 
65195
 
  CTree *sons[4]; // params, key, id, init
65196
 
 
65197
 
public:
65198
 
  CT_TypeParamDecl (CTree *t, CTree *k, CTree *id, CTree *i = (CTree*)0) { 
65199
 
    sons[0] = t; sons[1] = k; sons[2] = id; sons[3] = i;
65200
 
  }
65201
 
  static const char *NodeId ();
65202
 
  const char *NodeName () const { return NodeId (); }
65203
 
  int Sons () const { return CTree::Sons (sons, 4); }
65204
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
65205
 
  CT_TemplateParamList *Parameters () const { 
65206
 
    return (CT_TemplateParamList*)sons[0]; 
65207
 
  }
65208
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[2]; }
65209
 
  CT_ExprList *DefaultArgument () const { return (CT_ExprList*)sons[3]; }
65210
 
  void Initializer (CTree *i) { sons[3] = i; }
65211
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65212
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
65213
 
  }
65214
 
};
65215
 
 
65216
 
} // closed Puma
65217
 
class WinIfExists;
65218
 
class WinImportHandler;
65219
 
class WinMacros;
65220
 
class CMatchSyntax;
65221
 
class ExtGnu;
65222
 
class ExtAC;
65223
 
class ExtACBuilderCoupling;
65224
 
class ExtACSyntaxCoupling;
65225
 
class ExtACTree;
65226
 
class ExtACKeywords;
65227
 
class WinAsm;
65228
 
class WinDeclSpecs;
65229
 
class WinMemberExplSpec;
65230
 
class WinTypeKeywords;
65231
 
class PragmaOnceUnitState;
65232
 
class PragmaOnce;
65233
 
class CCExprResolve;
65234
 
class CExprResolve;
65235
 
namespace Puma {
65236
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
65237
 
  friend class ::WinImportHandler;
65238
 
  friend class ::WinMacros;
65239
 
  friend class ::CMatchSyntax;
65240
 
  friend class ::ExtGnu;
65241
 
  friend class ::ExtAC;
65242
 
  friend class ::ExtACBuilderCoupling;
65243
 
  friend class ::ExtACSyntaxCoupling;
65244
 
  friend class ::ExtACTree;
65245
 
  friend class ::ExtACKeywords;
65246
 
  friend class ::WinAsm;
65247
 
  friend class ::WinDeclSpecs;
65248
 
  friend class ::WinMemberExplSpec;
65249
 
  friend class ::WinTypeKeywords;
65250
 
  friend class ::PragmaOnceUnitState;
65251
 
  friend class ::PragmaOnce;
65252
 
  friend class ::CCExprResolve;
65253
 
  friend class ::CExprResolve;
65254
 
 
65255
 
  CTree *sons[3]; // key, name, enumerators
65256
 
 
65257
 
public:
65258
 
  CT_EnumDef (CTree *k, CTree *n) {
65259
 
    sons[0] = k; sons[1] = n; sons[2] = 0; 
65260
 
  }
65261
 
  static const char *NodeId ();
65262
 
  const char *NodeName () const { return NodeId (); }
65263
 
  int Sons () const { return CTree::Sons (sons, 3); }
65264
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
65265
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
65266
 
  void Enumerators (CTree *el) { sons[2] = el; }
65267
 
  CT_EnumeratorList *Enumerators () const { return (CT_EnumeratorList*)sons[2]; }
65268
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65269
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
65270
 
  }
65271
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65272
 
};
65273
 
 
65274
 
} // closed Puma
65275
 
class WinIfExists;
65276
 
class WinImportHandler;
65277
 
class WinMacros;
65278
 
class CMatchSyntax;
65279
 
class ExtGnu;
65280
 
class ExtAC;
65281
 
class ExtACBuilderCoupling;
65282
 
class ExtACSyntaxCoupling;
65283
 
class ExtACTree;
65284
 
class ExtACKeywords;
65285
 
class WinAsm;
65286
 
class WinDeclSpecs;
65287
 
class WinMemberExplSpec;
65288
 
class WinTypeKeywords;
65289
 
class PragmaOnceUnitState;
65290
 
class PragmaOnce;
65291
 
class CCExprResolve;
65292
 
class CExprResolve;
65293
 
namespace Puma {
65294
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
65295
 
  friend class ::WinImportHandler;
65296
 
  friend class ::WinMacros;
65297
 
  friend class ::CMatchSyntax;
65298
 
  friend class ::ExtGnu;
65299
 
  friend class ::ExtAC;
65300
 
  friend class ::ExtACBuilderCoupling;
65301
 
  friend class ::ExtACSyntaxCoupling;
65302
 
  friend class ::ExtACTree;
65303
 
  friend class ::ExtACKeywords;
65304
 
  friend class ::WinAsm;
65305
 
  friend class ::WinDeclSpecs;
65306
 
  friend class ::WinMemberExplSpec;
65307
 
  friend class ::WinTypeKeywords;
65308
 
  friend class ::PragmaOnceUnitState;
65309
 
  friend class ::PragmaOnce;
65310
 
  friend class ::CCExprResolve;
65311
 
  friend class ::CExprResolve;
65312
 
 
65313
 
  CTree *sons[2]; // name, init
65314
 
 
65315
 
public:
65316
 
  CT_Enumerator (CTree *n) { sons[0] = n; sons[1] = 0; }
65317
 
  static const char *NodeId ();
65318
 
  const char *NodeName () const { return NodeId (); }
65319
 
  int Sons () const { return CTree::Sons (sons, 2); }
65320
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
65321
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[0]; }
65322
 
  void Initializer (CTree *i) { sons[1] = i; }
65323
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
65324
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65325
 
    CTree::ReplaceSon (sons, 2, old_son, new_son); 
65326
 
  }
65327
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65328
 
};
65329
 
 
65330
 
} // closed Puma
65331
 
class WinIfExists;
65332
 
class WinImportHandler;
65333
 
class WinMacros;
65334
 
class CMatchSyntax;
65335
 
class ExtGnu;
65336
 
class ExtAC;
65337
 
class ExtACBuilderCoupling;
65338
 
class ExtACSyntaxCoupling;
65339
 
class ExtACTree;
65340
 
class ExtACKeywords;
65341
 
class WinAsm;
65342
 
class WinDeclSpecs;
65343
 
class WinMemberExplSpec;
65344
 
class WinTypeKeywords;
65345
 
class PragmaOnceUnitState;
65346
 
class PragmaOnce;
65347
 
class CCExprResolve;
65348
 
class CExprResolve;
65349
 
namespace Puma {
65350
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
65351
 
  friend class ::WinImportHandler;
65352
 
  friend class ::WinMacros;
65353
 
  friend class ::CMatchSyntax;
65354
 
  friend class ::ExtGnu;
65355
 
  friend class ::ExtAC;
65356
 
  friend class ::ExtACBuilderCoupling;
65357
 
  friend class ::ExtACSyntaxCoupling;
65358
 
  friend class ::ExtACTree;
65359
 
  friend class ::ExtACKeywords;
65360
 
  friend class ::WinAsm;
65361
 
  friend class ::WinDeclSpecs;
65362
 
  friend class ::WinMemberExplSpec;
65363
 
  friend class ::WinTypeKeywords;
65364
 
  friend class ::PragmaOnceUnitState;
65365
 
  friend class ::PragmaOnce;
65366
 
  friend class ::CCExprResolve;
65367
 
  friend class ::CExprResolve;
65368
 
 
65369
 
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
65370
 
 
65371
 
public:
65372
 
  CT_FctDef (CTree *dss, CTree *d, CTree *t, CTree *ci, CTree *as, 
65373
 
             CTree *b, CTree *hs) {
65374
 
    sons[0] = dss; sons[1] = d; sons[2] = t; sons[3] = ci; sons[4] = as; 
65375
 
    sons[5] = b; sons[6] = hs; 
65376
 
  }
65377
 
  static const char *NodeId ();
65378
 
  const char *NodeName () const { return NodeId (); }
65379
 
  int Sons () const { return CTree::Sons (sons, 7); }
65380
 
  CTree *Son (int n) const { return CTree::Son (sons, 7, n); }
65381
 
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
65382
 
  CTree *Declarator () const { return sons[1]; }
65383
 
  CT_Token *TryKey () const { return (CT_Token*)sons[2]; }
65384
 
  CTree *CtorInit () const { return sons[3]; }
65385
 
  CT_ArgDeclSeq *ArgDeclSeq () const { return (CT_ArgDeclSeq*)sons[4]; }
65386
 
  CT_CmpdStmt *Body () const { return (CT_CmpdStmt*)sons[5]; }
65387
 
  CT_HandlerSeq *Handlers () const { return (CT_HandlerSeq*)sons[6]; }
65388
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65389
 
  void CtorInit (CTree *i) { sons[3] = i; }
65390
 
  void Body (CTree *b) { sons[5] = b; }
65391
 
  void FctTryBlock (CTree *t, CTree *c, CTree *b, CTree *h) { 
65392
 
    sons[2] = t; sons[3] = c; sons[5] = b; sons[6] = h;
65393
 
  }
65394
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65395
 
    CTree::ReplaceSon (sons, 7, old_son, new_son);
65396
 
  }
65397
 
};
65398
 
 
65399
 
} // closed Puma
65400
 
class WinIfExists;
65401
 
class WinImportHandler;
65402
 
class WinMacros;
65403
 
class CMatchSyntax;
65404
 
class ExtGnu;
65405
 
class ExtAC;
65406
 
class ExtACBuilderCoupling;
65407
 
class ExtACSyntaxCoupling;
65408
 
class ExtACTree;
65409
 
class ExtACKeywords;
65410
 
class WinAsm;
65411
 
class WinDeclSpecs;
65412
 
class WinMemberExplSpec;
65413
 
class WinTypeKeywords;
65414
 
class PragmaOnceUnitState;
65415
 
class PragmaOnce;
65416
 
class CCExprResolve;
65417
 
class CExprResolve;
65418
 
namespace Puma {
65419
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
65420
 
  friend class ::WinImportHandler;
65421
 
  friend class ::WinMacros;
65422
 
  friend class ::CMatchSyntax;
65423
 
  friend class ::ExtGnu;
65424
 
  friend class ::ExtAC;
65425
 
  friend class ::ExtACBuilderCoupling;
65426
 
  friend class ::ExtACSyntaxCoupling;
65427
 
  friend class ::ExtACTree;
65428
 
  friend class ::ExtACKeywords;
65429
 
  friend class ::WinAsm;
65430
 
  friend class ::WinDeclSpecs;
65431
 
  friend class ::WinMemberExplSpec;
65432
 
  friend class ::WinTypeKeywords;
65433
 
  friend class ::PragmaOnceUnitState;
65434
 
  friend class ::PragmaOnce;
65435
 
  friend class ::CCExprResolve;
65436
 
  friend class ::CExprResolve;
65437
 
 
65438
 
  CTree *sons[5]; // asm, open, str, close, semi_colon
65439
 
 
65440
 
public:
65441
 
  CT_AsmDef (CTree *a, CTree *o, CTree *s, CTree *c, CTree *sc) {
65442
 
    sons[0] = a; sons[1] = o; sons[2] = s; sons[3] = c; sons[4] = sc; 
65443
 
  }
65444
 
  static const char *NodeId ();
65445
 
  const char *NodeName () const { return NodeId (); }
65446
 
  int Sons () const { return 5; }
65447
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
65448
 
  CT_String *Instructions () const { return (CT_String*)sons[2]; }
65449
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65450
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
65451
 
  }
65452
 
};
65453
 
 
65454
 
} // closed Puma
65455
 
class WinIfExists;
65456
 
class WinImportHandler;
65457
 
class WinMacros;
65458
 
class CMatchSyntax;
65459
 
class ExtGnu;
65460
 
class ExtAC;
65461
 
class ExtACBuilderCoupling;
65462
 
class ExtACSyntaxCoupling;
65463
 
class ExtACTree;
65464
 
class ExtACKeywords;
65465
 
class WinAsm;
65466
 
class WinDeclSpecs;
65467
 
class WinMemberExplSpec;
65468
 
class WinTypeKeywords;
65469
 
class PragmaOnceUnitState;
65470
 
class PragmaOnce;
65471
 
class CCExprResolve;
65472
 
class CExprResolve;
65473
 
namespace Puma {
65474
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
65475
 
  friend class ::WinImportHandler;
65476
 
  friend class ::WinMacros;
65477
 
  friend class ::CMatchSyntax;
65478
 
  friend class ::ExtGnu;
65479
 
  friend class ::ExtAC;
65480
 
  friend class ::ExtACBuilderCoupling;
65481
 
  friend class ::ExtACSyntaxCoupling;
65482
 
  friend class ::ExtACTree;
65483
 
  friend class ::ExtACKeywords;
65484
 
  friend class ::WinAsm;
65485
 
  friend class ::WinDeclSpecs;
65486
 
  friend class ::WinMemberExplSpec;
65487
 
  friend class ::WinTypeKeywords;
65488
 
  friend class ::PragmaOnceUnitState;
65489
 
  friend class ::PragmaOnce;
65490
 
  friend class ::CCExprResolve;
65491
 
  friend class ::CExprResolve;
65492
 
 
65493
 
  CTree *sons[3]; // catch, exception_decl, stmt
65494
 
 
65495
 
public:
65496
 
  CT_Handler (CTree *c, CTree *e, CTree *s) {
65497
 
    sons[0] = c; sons[1] = e; sons[2] = s;
65498
 
  }
65499
 
  static const char *NodeId ();
65500
 
  const char *NodeName () const { return NodeId (); }
65501
 
  int Sons () const { return 3; }
65502
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
65503
 
  CT_ArgDeclList *Arguments () const { return (CT_ArgDeclList*)sons[1]; }
65504
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[2]; }
65505
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65506
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
65507
 
  }
65508
 
};
65509
 
 
65510
 
} // closed Puma
65511
 
class WinIfExists;
65512
 
class WinImportHandler;
65513
 
class WinMacros;
65514
 
class CMatchSyntax;
65515
 
class ExtGnu;
65516
 
class ExtAC;
65517
 
class ExtACBuilderCoupling;
65518
 
class ExtACSyntaxCoupling;
65519
 
class ExtACTree;
65520
 
class ExtACKeywords;
65521
 
class WinAsm;
65522
 
class WinDeclSpecs;
65523
 
class WinMemberExplSpec;
65524
 
class WinTypeKeywords;
65525
 
class PragmaOnceUnitState;
65526
 
class PragmaOnce;
65527
 
class CCExprResolve;
65528
 
class CExprResolve;
65529
 
namespace Puma {
65530
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
65531
 
  friend class ::WinImportHandler;
65532
 
  friend class ::WinMacros;
65533
 
  friend class ::CMatchSyntax;
65534
 
  friend class ::ExtGnu;
65535
 
  friend class ::ExtAC;
65536
 
  friend class ::ExtACBuilderCoupling;
65537
 
  friend class ::ExtACSyntaxCoupling;
65538
 
  friend class ::ExtACTree;
65539
 
  friend class ::ExtACKeywords;
65540
 
  friend class ::WinAsm;
65541
 
  friend class ::WinDeclSpecs;
65542
 
  friend class ::WinMemberExplSpec;
65543
 
  friend class ::WinTypeKeywords;
65544
 
  friend class ::PragmaOnceUnitState;
65545
 
  friend class ::PragmaOnce;
65546
 
  friend class ::CCExprResolve;
65547
 
  friend class ::CExprResolve;
65548
 
 
65549
 
  CTree *sons[5]; // extern, str, open, decls, close
65550
 
 
65551
 
public:
65552
 
  CT_LinkageSpec (CTree *e, CTree *s, CTree *o, CTree *d, CTree *c) {
65553
 
    sons[0] = e; sons[1] = s; sons[2] = o; sons[3] = d; sons[4] = c;
65554
 
    if (isList ())
65555
 
      ((CT_DeclList*)Decls ())->Linkage (this);
65556
 
    else
65557
 
      ((CT_Decl*)Decls ())->Linkage (this);
65558
 
  }
65559
 
  static const char *NodeId ();
65560
 
  const char *NodeName () const { return NodeId (); }
65561
 
  int Sons () const { return CTree::Sons (sons, 5); }
65562
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
65563
 
  CT_String *Linkage () const { return (CT_String*)sons[1]; }
65564
 
  CTree *Decls () const { return sons[3]; }
65565
 
  bool isList () const {
65566
 
    return Decls ()->NodeName () == CT_DeclList::NodeId ();
65567
 
  }
65568
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65569
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
65570
 
  }
65571
 
};
65572
 
 
65573
 
} // closed Puma
65574
 
class WinIfExists;
65575
 
class WinImportHandler;
65576
 
class WinMacros;
65577
 
class CMatchSyntax;
65578
 
class ExtGnu;
65579
 
class ExtAC;
65580
 
class ExtACBuilderCoupling;
65581
 
class ExtACSyntaxCoupling;
65582
 
class ExtACTree;
65583
 
class ExtACKeywords;
65584
 
class WinAsm;
65585
 
class WinDeclSpecs;
65586
 
class WinMemberExplSpec;
65587
 
class WinTypeKeywords;
65588
 
class PragmaOnceUnitState;
65589
 
class PragmaOnce;
65590
 
class CCExprResolve;
65591
 
class CExprResolve;
65592
 
namespace Puma {
65593
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
65594
 
  friend class ::WinImportHandler;
65595
 
  friend class ::WinMacros;
65596
 
  friend class ::CMatchSyntax;
65597
 
  friend class ::ExtGnu;
65598
 
  friend class ::ExtAC;
65599
 
  friend class ::ExtACBuilderCoupling;
65600
 
  friend class ::ExtACSyntaxCoupling;
65601
 
  friend class ::ExtACTree;
65602
 
  friend class ::ExtACKeywords;
65603
 
  friend class ::WinAsm;
65604
 
  friend class ::WinDeclSpecs;
65605
 
  friend class ::WinMemberExplSpec;
65606
 
  friend class ::WinTypeKeywords;
65607
 
  friend class ::PragmaOnceUnitState;
65608
 
  friend class ::PragmaOnce;
65609
 
  friend class ::CCExprResolve;
65610
 
  friend class ::CExprResolve;
65611
 
 
65612
 
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
65613
 
 
65614
 
public:
65615
 
  CT_ArgDecl (CTree *dsl, CTree *d) {
65616
 
    sons[0] = dsl; sons[1] = d; sons[2] = 0; sons[3] = 0; 
65617
 
  }
65618
 
  CT_ArgDecl (CTree *ellipsis) {
65619
 
    sons[0] = 0; sons[1] = 0; sons[2] = 0; sons[3] = ellipsis; 
65620
 
  }
65621
 
  static const char *NodeId ();
65622
 
  const char *NodeName () const { return NodeId (); }
65623
 
  int Sons () const { return CTree::Sons (sons, 4); }
65624
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
65625
 
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
65626
 
  CTree *Declarator () const { return sons[1]; }
65627
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[2]; }
65628
 
  CT_Token *Ellipsis () const { return (CT_Token*)sons[3]; }
65629
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65630
 
  void Initializer (CTree *i) { sons[2] = i; }
65631
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65632
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
65633
 
  }
65634
 
};
65635
 
 
65636
 
} // closed Puma
65637
 
class WinIfExists;
65638
 
class WinImportHandler;
65639
 
class WinMacros;
65640
 
class CMatchSyntax;
65641
 
class ExtGnu;
65642
 
class ExtAC;
65643
 
class ExtACBuilderCoupling;
65644
 
class ExtACSyntaxCoupling;
65645
 
class ExtACTree;
65646
 
class ExtACKeywords;
65647
 
class WinAsm;
65648
 
class WinDeclSpecs;
65649
 
class WinMemberExplSpec;
65650
 
class WinTypeKeywords;
65651
 
class PragmaOnceUnitState;
65652
 
class PragmaOnce;
65653
 
class CCExprResolve;
65654
 
class CExprResolve;
65655
 
namespace Puma {
65656
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
65657
 
  friend class ::WinImportHandler;
65658
 
  friend class ::WinMacros;
65659
 
  friend class ::CMatchSyntax;
65660
 
  friend class ::ExtGnu;
65661
 
  friend class ::ExtAC;
65662
 
  friend class ::ExtACBuilderCoupling;
65663
 
  friend class ::ExtACSyntaxCoupling;
65664
 
  friend class ::ExtACTree;
65665
 
  friend class ::ExtACKeywords;
65666
 
  friend class ::WinAsm;
65667
 
  friend class ::WinDeclSpecs;
65668
 
  friend class ::WinMemberExplSpec;
65669
 
  friend class ::WinTypeKeywords;
65670
 
  friend class ::PragmaOnceUnitState;
65671
 
  friend class ::PragmaOnce;
65672
 
  friend class ::CCExprResolve;
65673
 
  friend class ::CExprResolve;
65674
 
 
65675
 
public:
65676
 
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
65677
 
   CT_DeclList (size, 2) { AddProperties (props); }
65678
 
  static const char *NodeId ();
65679
 
  const char *NodeName () const { return NodeId (); }
65680
 
};
65681
 
 
65682
 
} // closed Puma
65683
 
class WinIfExists;
65684
 
class WinImportHandler;
65685
 
class WinMacros;
65686
 
class CMatchSyntax;
65687
 
class ExtGnu;
65688
 
class ExtAC;
65689
 
class ExtACBuilderCoupling;
65690
 
class ExtACSyntaxCoupling;
65691
 
class ExtACTree;
65692
 
class ExtACKeywords;
65693
 
class WinAsm;
65694
 
class WinDeclSpecs;
65695
 
class WinMemberExplSpec;
65696
 
class WinTypeKeywords;
65697
 
class PragmaOnceUnitState;
65698
 
class PragmaOnce;
65699
 
class CCExprResolve;
65700
 
class CExprResolve;
65701
 
namespace Puma {
65702
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
65703
 
  friend class ::WinImportHandler;
65704
 
  friend class ::WinMacros;
65705
 
  friend class ::CMatchSyntax;
65706
 
  friend class ::ExtGnu;
65707
 
  friend class ::ExtAC;
65708
 
  friend class ::ExtACBuilderCoupling;
65709
 
  friend class ::ExtACSyntaxCoupling;
65710
 
  friend class ::ExtACTree;
65711
 
  friend class ::ExtACKeywords;
65712
 
  friend class ::WinAsm;
65713
 
  friend class ::WinDeclSpecs;
65714
 
  friend class ::WinMemberExplSpec;
65715
 
  friend class ::WinTypeKeywords;
65716
 
  friend class ::PragmaOnceUnitState;
65717
 
  friend class ::PragmaOnce;
65718
 
  friend class ::CCExprResolve;
65719
 
  friend class ::CExprResolve;
65720
 
 
65721
 
public:
65722
 
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
65723
 
  static const char *NodeId ();
65724
 
  const char *NodeName () const { return NodeId (); }
65725
 
};
65726
 
 
65727
 
} // closed Puma
65728
 
class WinIfExists;
65729
 
class WinImportHandler;
65730
 
class WinMacros;
65731
 
class CMatchSyntax;
65732
 
class ExtGnu;
65733
 
class ExtAC;
65734
 
class ExtACBuilderCoupling;
65735
 
class ExtACSyntaxCoupling;
65736
 
class ExtACTree;
65737
 
class ExtACKeywords;
65738
 
class WinAsm;
65739
 
class WinDeclSpecs;
65740
 
class WinMemberExplSpec;
65741
 
class WinTypeKeywords;
65742
 
class PragmaOnceUnitState;
65743
 
class PragmaOnce;
65744
 
class CCExprResolve;
65745
 
class CExprResolve;
65746
 
namespace Puma {
65747
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
65748
 
  friend class ::WinImportHandler;
65749
 
  friend class ::WinMacros;
65750
 
  friend class ::CMatchSyntax;
65751
 
  friend class ::ExtGnu;
65752
 
  friend class ::ExtAC;
65753
 
  friend class ::ExtACBuilderCoupling;
65754
 
  friend class ::ExtACSyntaxCoupling;
65755
 
  friend class ::ExtACTree;
65756
 
  friend class ::ExtACKeywords;
65757
 
  friend class ::WinAsm;
65758
 
  friend class ::WinDeclSpecs;
65759
 
  friend class ::WinMemberExplSpec;
65760
 
  friend class ::WinTypeKeywords;
65761
 
  friend class ::PragmaOnceUnitState;
65762
 
  friend class ::PragmaOnce;
65763
 
  friend class ::CCExprResolve;
65764
 
  friend class ::CExprResolve;
65765
 
 
65766
 
public:
65767
 
  CT_ArgNameList () : CT_ArgDeclList () {}
65768
 
  static const char *NodeId ();
65769
 
  const char *NodeName () const { return NodeId (); }
65770
 
};
65771
 
 
65772
 
} // closed Puma
65773
 
class WinIfExists;
65774
 
class WinImportHandler;
65775
 
class WinMacros;
65776
 
class CMatchSyntax;
65777
 
class ExtGnu;
65778
 
class ExtAC;
65779
 
class ExtACBuilderCoupling;
65780
 
class ExtACSyntaxCoupling;
65781
 
class ExtACTree;
65782
 
class ExtACKeywords;
65783
 
class WinAsm;
65784
 
class WinDeclSpecs;
65785
 
class WinMemberExplSpec;
65786
 
class WinTypeKeywords;
65787
 
class PragmaOnceUnitState;
65788
 
class PragmaOnce;
65789
 
class CCExprResolve;
65790
 
class CExprResolve;
65791
 
namespace Puma {
65792
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
65793
 
  friend class ::WinImportHandler;
65794
 
  friend class ::WinMacros;
65795
 
  friend class ::CMatchSyntax;
65796
 
  friend class ::ExtGnu;
65797
 
  friend class ::ExtAC;
65798
 
  friend class ::ExtACBuilderCoupling;
65799
 
  friend class ::ExtACSyntaxCoupling;
65800
 
  friend class ::ExtACTree;
65801
 
  friend class ::ExtACKeywords;
65802
 
  friend class ::WinAsm;
65803
 
  friend class ::WinDeclSpecs;
65804
 
  friend class ::WinMemberExplSpec;
65805
 
  friend class ::WinTypeKeywords;
65806
 
  friend class ::PragmaOnceUnitState;
65807
 
  friend class ::PragmaOnce;
65808
 
  friend class ::CCExprResolve;
65809
 
  friend class ::CExprResolve;
65810
 
 
65811
 
  CTree *sons[3]; // ns, name, members
65812
 
 
65813
 
public:
65814
 
  CT_NamespaceDef (CTree *n, CTree *nm) {
65815
 
    sons[0] = n; sons[1] = nm; sons[2] = 0; 
65816
 
  }
65817
 
  CT_NamespaceDef (CTree *n, CTree *nm, CTree *m) {
65818
 
    sons[0] = n; sons[1] = nm; sons[2] = m; 
65819
 
  }
65820
 
  static const char *NodeId ();
65821
 
  const char *NodeName () const { return NodeId (); }
65822
 
  int Sons () const { return CTree::Sons (sons, 3); }
65823
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
65824
 
  void Members (CTree *m) { sons[2] = m; }
65825
 
  CT_MembList *Members () const { return (CT_MembList*)sons[2]; }
65826
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
65827
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65828
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65829
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
65830
 
  }
65831
 
};
65832
 
 
65833
 
} // closed Puma
65834
 
class WinIfExists;
65835
 
class WinImportHandler;
65836
 
class WinMacros;
65837
 
class CMatchSyntax;
65838
 
class ExtGnu;
65839
 
class ExtAC;
65840
 
class ExtACBuilderCoupling;
65841
 
class ExtACSyntaxCoupling;
65842
 
class ExtACTree;
65843
 
class ExtACKeywords;
65844
 
class WinAsm;
65845
 
class WinDeclSpecs;
65846
 
class WinMemberExplSpec;
65847
 
class WinTypeKeywords;
65848
 
class PragmaOnceUnitState;
65849
 
class PragmaOnce;
65850
 
class CCExprResolve;
65851
 
class CExprResolve;
65852
 
namespace Puma {
65853
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
65854
 
  friend class ::WinImportHandler;
65855
 
  friend class ::WinMacros;
65856
 
  friend class ::CMatchSyntax;
65857
 
  friend class ::ExtGnu;
65858
 
  friend class ::ExtAC;
65859
 
  friend class ::ExtACBuilderCoupling;
65860
 
  friend class ::ExtACSyntaxCoupling;
65861
 
  friend class ::ExtACTree;
65862
 
  friend class ::ExtACKeywords;
65863
 
  friend class ::WinAsm;
65864
 
  friend class ::WinDeclSpecs;
65865
 
  friend class ::WinMemberExplSpec;
65866
 
  friend class ::WinTypeKeywords;
65867
 
  friend class ::PragmaOnceUnitState;
65868
 
  friend class ::PragmaOnce;
65869
 
  friend class ::CCExprResolve;
65870
 
  friend class ::CExprResolve;
65871
 
 
65872
 
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
65873
 
 
65874
 
public:
65875
 
  CT_NamespaceAliasDef (CTree *n, CTree *a, CTree *as, CTree *nm, CTree *s) {
65876
 
    sons[0] = n; sons[1] = a; sons[2] = as; sons[3] = nm; sons[4] = s; 
65877
 
  }
65878
 
  static const char *NodeId ();
65879
 
  const char *NodeName () const { return NodeId (); }
65880
 
  int Sons () const { return 5; }
65881
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
65882
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[3]; }
65883
 
  CT_SimpleName *Alias () const { return (CT_SimpleName*)sons[1]; }
65884
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
65885
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65886
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
65887
 
  }
65888
 
};
65889
 
 
65890
 
} // closed Puma
65891
 
class WinIfExists;
65892
 
class WinImportHandler;
65893
 
class WinMacros;
65894
 
class CMatchSyntax;
65895
 
class ExtGnu;
65896
 
class ExtAC;
65897
 
class ExtACBuilderCoupling;
65898
 
class ExtACSyntaxCoupling;
65899
 
class ExtACTree;
65900
 
class ExtACKeywords;
65901
 
class WinAsm;
65902
 
class WinDeclSpecs;
65903
 
class WinMemberExplSpec;
65904
 
class WinTypeKeywords;
65905
 
class PragmaOnceUnitState;
65906
 
class PragmaOnce;
65907
 
class CCExprResolve;
65908
 
class CExprResolve;
65909
 
namespace Puma {
65910
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
65911
 
  friend class ::WinImportHandler;
65912
 
  friend class ::WinMacros;
65913
 
  friend class ::CMatchSyntax;
65914
 
  friend class ::ExtGnu;
65915
 
  friend class ::ExtAC;
65916
 
  friend class ::ExtACBuilderCoupling;
65917
 
  friend class ::ExtACSyntaxCoupling;
65918
 
  friend class ::ExtACTree;
65919
 
  friend class ::ExtACKeywords;
65920
 
  friend class ::WinAsm;
65921
 
  friend class ::WinDeclSpecs;
65922
 
  friend class ::WinMemberExplSpec;
65923
 
  friend class ::WinTypeKeywords;
65924
 
  friend class ::PragmaOnceUnitState;
65925
 
  friend class ::PragmaOnce;
65926
 
  friend class ::CCExprResolve;
65927
 
  friend class ::CExprResolve;
65928
 
 
65929
 
  CTree *sons[4]; // using, ns, name, semi_colon
65930
 
 
65931
 
public:
65932
 
  CT_UsingDirective (CTree *u, CTree *ns, CTree *n, CTree *s) {
65933
 
    sons[0] = u; sons[1] = ns; sons[2] = n; sons[3] = s; 
65934
 
  }
65935
 
  static const char *NodeId ();
65936
 
  const char *NodeName () const { return NodeId (); }
65937
 
  int Sons () const { return 4; }
65938
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
65939
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[2]; }
65940
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
65941
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
65942
 
  }
65943
 
};
65944
 
 
65945
 
/*****************************************************************************/
65946
 
/*                                                                           */
65947
 
/*                              Declarators                                  */
65948
 
/*                                                                           */
65949
 
/*****************************************************************************/
65950
 
 
65951
 
} // closed Puma
65952
 
class WinIfExists;
65953
 
class WinImportHandler;
65954
 
class WinMacros;
65955
 
class CMatchSyntax;
65956
 
class ExtGnu;
65957
 
class ExtAC;
65958
 
class ExtACBuilderCoupling;
65959
 
class ExtACSyntaxCoupling;
65960
 
class ExtACTree;
65961
 
class ExtACKeywords;
65962
 
class WinAsm;
65963
 
class WinDeclSpecs;
65964
 
class WinMemberExplSpec;
65965
 
class WinTypeKeywords;
65966
 
class PragmaOnceUnitState;
65967
 
class PragmaOnce;
65968
 
class CCExprResolve;
65969
 
class CExprResolve;
65970
 
namespace Puma {
65971
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
65972
 
  friend class ::WinImportHandler;
65973
 
  friend class ::WinMacros;
65974
 
  friend class ::CMatchSyntax;
65975
 
  friend class ::ExtGnu;
65976
 
  friend class ::ExtAC;
65977
 
  friend class ::ExtACBuilderCoupling;
65978
 
  friend class ::ExtACSyntaxCoupling;
65979
 
  friend class ::ExtACTree;
65980
 
  friend class ::ExtACKeywords;
65981
 
  friend class ::WinAsm;
65982
 
  friend class ::WinDeclSpecs;
65983
 
  friend class ::WinMemberExplSpec;
65984
 
  friend class ::WinTypeKeywords;
65985
 
  friend class ::PragmaOnceUnitState;
65986
 
  friend class ::PragmaOnce;
65987
 
  friend class ::CCExprResolve;
65988
 
  friend class ::CExprResolve;
65989
 
 
65990
 
protected:
65991
 
  CT_Declarator () {}
65992
 
 
65993
 
public:
65994
 
  virtual CTree *Declarator () const = 0;
65995
 
  //classification function
65996
 
  virtual CT_Declarator *IsDeclarator () { return this; }
65997
 
  // locate the name node
65998
 
  CT_SimpleName *Name ();
65999
 
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
66000
 
};
66001
 
 
66002
 
} // closed Puma
66003
 
class WinIfExists;
66004
 
class WinImportHandler;
66005
 
class WinMacros;
66006
 
class CMatchSyntax;
66007
 
class ExtGnu;
66008
 
class ExtAC;
66009
 
class ExtACBuilderCoupling;
66010
 
class ExtACSyntaxCoupling;
66011
 
class ExtACTree;
66012
 
class ExtACKeywords;
66013
 
class WinAsm;
66014
 
class WinDeclSpecs;
66015
 
class WinMemberExplSpec;
66016
 
class WinTypeKeywords;
66017
 
class PragmaOnceUnitState;
66018
 
class PragmaOnce;
66019
 
class CCExprResolve;
66020
 
class CExprResolve;
66021
 
namespace Puma {
66022
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
66023
 
  friend class ::WinImportHandler;
66024
 
  friend class ::WinMacros;
66025
 
  friend class ::CMatchSyntax;
66026
 
  friend class ::ExtGnu;
66027
 
  friend class ::ExtAC;
66028
 
  friend class ::ExtACBuilderCoupling;
66029
 
  friend class ::ExtACSyntaxCoupling;
66030
 
  friend class ::ExtACTree;
66031
 
  friend class ::ExtACKeywords;
66032
 
  friend class ::WinAsm;
66033
 
  friend class ::WinDeclSpecs;
66034
 
  friend class ::WinMemberExplSpec;
66035
 
  friend class ::WinTypeKeywords;
66036
 
  friend class ::PragmaOnceUnitState;
66037
 
  friend class ::PragmaOnce;
66038
 
  friend class ::CCExprResolve;
66039
 
  friend class ::CExprResolve;
66040
 
 
66041
 
  CTree *sons[2]; // declarator, init
66042
 
  CTree *obj_decl;
66043
 
 
66044
 
public:
66045
 
  CT_InitDeclarator (CTree *d, CTree *i = (CTree*)0) {
66046
 
    sons[0] = d; sons[1] = i; obj_decl = 0; 
66047
 
  }
66048
 
  static const char *NodeId ();
66049
 
  const char *NodeName () const { return NodeId (); }
66050
 
  int Sons () const { return CTree::Sons (sons, 2); }
66051
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
66052
 
  CTree *Declarator () const { return sons[0]; }
66053
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
66054
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
66055
 
  CT_ObjDecl *ObjDecl () const { return (CT_ObjDecl*)obj_decl; }
66056
 
  void Initializer (CTree* i) { sons[1] = i; }
66057
 
  void ObjDecl (CTree *od) { obj_decl = od; }
66058
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66059
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
66060
 
  }
66061
 
};
66062
 
 
66063
 
} // closed Puma
66064
 
class WinIfExists;
66065
 
class WinImportHandler;
66066
 
class WinMacros;
66067
 
class CMatchSyntax;
66068
 
class ExtGnu;
66069
 
class ExtAC;
66070
 
class ExtACBuilderCoupling;
66071
 
class ExtACSyntaxCoupling;
66072
 
class ExtACTree;
66073
 
class ExtACKeywords;
66074
 
class WinAsm;
66075
 
class WinDeclSpecs;
66076
 
class WinMemberExplSpec;
66077
 
class WinTypeKeywords;
66078
 
class PragmaOnceUnitState;
66079
 
class PragmaOnce;
66080
 
class CCExprResolve;
66081
 
class CExprResolve;
66082
 
namespace Puma {
66083
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
66084
 
  friend class ::WinImportHandler;
66085
 
  friend class ::WinMacros;
66086
 
  friend class ::CMatchSyntax;
66087
 
  friend class ::ExtGnu;
66088
 
  friend class ::ExtAC;
66089
 
  friend class ::ExtACBuilderCoupling;
66090
 
  friend class ::ExtACSyntaxCoupling;
66091
 
  friend class ::ExtACTree;
66092
 
  friend class ::ExtACKeywords;
66093
 
  friend class ::WinAsm;
66094
 
  friend class ::WinDeclSpecs;
66095
 
  friend class ::WinMemberExplSpec;
66096
 
  friend class ::WinTypeKeywords;
66097
 
  friend class ::PragmaOnceUnitState;
66098
 
  friend class ::PragmaOnce;
66099
 
  friend class ::CCExprResolve;
66100
 
  friend class ::CExprResolve;
66101
 
 
66102
 
  CTree *sons[4]; // open, win_specs, declarator, close
66103
 
 
66104
 
public:
66105
 
  CT_BracedDeclarator (CTree *o, CTree *d, CTree *c) {
66106
 
    sons[0] = o; sons[1] = 0; sons[2] = d; sons[3] = c; 
66107
 
  }
66108
 
  CT_BracedDeclarator (CTree *o, CTree *ws, CTree *d, CTree *c) {
66109
 
    sons[0] = o; sons[1] = ws; sons[2] = d; sons[3] = c; 
66110
 
  }
66111
 
  static const char *NodeId ();
66112
 
  const char *NodeName () const { return NodeId (); }
66113
 
  int Sons () const { return CTree::Sons (sons, 4); }
66114
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
66115
 
  CTree *Declarator () const { return sons[2]; }
66116
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66117
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
66118
 
  }
66119
 
};
66120
 
 
66121
 
} // closed Puma
66122
 
class WinIfExists;
66123
 
class WinImportHandler;
66124
 
class WinMacros;
66125
 
class CMatchSyntax;
66126
 
class ExtGnu;
66127
 
class ExtAC;
66128
 
class ExtACBuilderCoupling;
66129
 
class ExtACSyntaxCoupling;
66130
 
class ExtACTree;
66131
 
class ExtACKeywords;
66132
 
class WinAsm;
66133
 
class WinDeclSpecs;
66134
 
class WinMemberExplSpec;
66135
 
class WinTypeKeywords;
66136
 
class PragmaOnceUnitState;
66137
 
class PragmaOnce;
66138
 
class CCExprResolve;
66139
 
class CExprResolve;
66140
 
namespace Puma {
66141
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
66142
 
  friend class ::WinImportHandler;
66143
 
  friend class ::WinMacros;
66144
 
  friend class ::CMatchSyntax;
66145
 
  friend class ::ExtGnu;
66146
 
  friend class ::ExtAC;
66147
 
  friend class ::ExtACBuilderCoupling;
66148
 
  friend class ::ExtACSyntaxCoupling;
66149
 
  friend class ::ExtACTree;
66150
 
  friend class ::ExtACKeywords;
66151
 
  friend class ::WinAsm;
66152
 
  friend class ::WinDeclSpecs;
66153
 
  friend class ::WinMemberExplSpec;
66154
 
  friend class ::WinTypeKeywords;
66155
 
  friend class ::PragmaOnceUnitState;
66156
 
  friend class ::PragmaOnce;
66157
 
  friend class ::CCExprResolve;
66158
 
  friend class ::CExprResolve;
66159
 
 
66160
 
  CTree *sons[4]; // star, static, quals, expr
66161
 
  bool pos0;
66162
 
 
66163
 
public:
66164
 
  CT_ArrayDelimiter (CTree *m, CTree *s, CTree *q, CTree *e, bool p = false) {
66165
 
    sons[0] = m; sons[1] = s; sons[2] = q; sons[3] = e; pos0 = p;
66166
 
  }
66167
 
  static const char *NodeId ();
66168
 
  const char *NodeName () const { return NodeId (); }
66169
 
  int Sons () const { return CTree::Sons (sons, 4); }
66170
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
66171
 
  CT_Token *Star () const { return (CT_Token*)sons[0]; }
66172
 
  CT_Token *Static () const { return (CT_Token*)sons[pos0?2:1]; }
66173
 
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[pos0?1:2]; }
66174
 
  CTree *Expr () const { return sons[3]; }
66175
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66176
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
66177
 
  }
66178
 
};
66179
 
 
66180
 
} // closed Puma
66181
 
class WinIfExists;
66182
 
class WinImportHandler;
66183
 
class WinMacros;
66184
 
class CMatchSyntax;
66185
 
class ExtGnu;
66186
 
class ExtAC;
66187
 
class ExtACBuilderCoupling;
66188
 
class ExtACSyntaxCoupling;
66189
 
class ExtACTree;
66190
 
class ExtACKeywords;
66191
 
class WinAsm;
66192
 
class WinDeclSpecs;
66193
 
class WinMemberExplSpec;
66194
 
class WinTypeKeywords;
66195
 
class PragmaOnceUnitState;
66196
 
class PragmaOnce;
66197
 
class CCExprResolve;
66198
 
class CExprResolve;
66199
 
namespace Puma {
66200
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
66201
 
  friend class ::WinImportHandler;
66202
 
  friend class ::WinMacros;
66203
 
  friend class ::CMatchSyntax;
66204
 
  friend class ::ExtGnu;
66205
 
  friend class ::ExtAC;
66206
 
  friend class ::ExtACBuilderCoupling;
66207
 
  friend class ::ExtACSyntaxCoupling;
66208
 
  friend class ::ExtACTree;
66209
 
  friend class ::ExtACKeywords;
66210
 
  friend class ::WinAsm;
66211
 
  friend class ::WinDeclSpecs;
66212
 
  friend class ::WinMemberExplSpec;
66213
 
  friend class ::WinTypeKeywords;
66214
 
  friend class ::PragmaOnceUnitState;
66215
 
  friend class ::PragmaOnce;
66216
 
  friend class ::CCExprResolve;
66217
 
  friend class ::CExprResolve;
66218
 
 
66219
 
  CTree *sons[4]; // declarator, open, delim, close
66220
 
 
66221
 
public:
66222
 
  CT_ArrayDeclarator (CTree *d, CTree *o, CTree *ad, CTree *c) {
66223
 
    sons[0] = d; sons[1] = o; sons[2] = ad; sons[3] = c; 
66224
 
  }
66225
 
  static const char *NodeId ();
66226
 
  const char *NodeName () const { return NodeId (); }
66227
 
  int Sons () const { return 4; }
66228
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
66229
 
  CTree *Declarator () const { return sons[0]; }
66230
 
  CT_ArrayDelimiter *Delimiter () const 
66231
 
   { return (CT_ArrayDelimiter*)sons[2]; }
66232
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66233
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
66234
 
  }
66235
 
  CTypeInfo *Type () const { return type; }
66236
 
  CExprValue *Value () const { return value; }
66237
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
66238
 
};
66239
 
 
66240
 
} // closed Puma
66241
 
class WinIfExists;
66242
 
class WinImportHandler;
66243
 
class WinMacros;
66244
 
class CMatchSyntax;
66245
 
class ExtGnu;
66246
 
class ExtAC;
66247
 
class ExtACBuilderCoupling;
66248
 
class ExtACSyntaxCoupling;
66249
 
class ExtACTree;
66250
 
class ExtACKeywords;
66251
 
class WinAsm;
66252
 
class WinDeclSpecs;
66253
 
class WinMemberExplSpec;
66254
 
class WinTypeKeywords;
66255
 
class PragmaOnceUnitState;
66256
 
class PragmaOnce;
66257
 
class CCExprResolve;
66258
 
class CExprResolve;
66259
 
namespace Puma {
66260
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
66261
 
  friend class ::WinImportHandler;
66262
 
  friend class ::WinMacros;
66263
 
  friend class ::CMatchSyntax;
66264
 
  friend class ::ExtGnu;
66265
 
  friend class ::ExtAC;
66266
 
  friend class ::ExtACBuilderCoupling;
66267
 
  friend class ::ExtACSyntaxCoupling;
66268
 
  friend class ::ExtACTree;
66269
 
  friend class ::ExtACKeywords;
66270
 
  friend class ::WinAsm;
66271
 
  friend class ::WinDeclSpecs;
66272
 
  friend class ::WinMemberExplSpec;
66273
 
  friend class ::WinTypeKeywords;
66274
 
  friend class ::PragmaOnceUnitState;
66275
 
  friend class ::PragmaOnce;
66276
 
  friend class ::CCExprResolve;
66277
 
  friend class ::CExprResolve;
66278
 
 
66279
 
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
66280
 
 
66281
 
public:
66282
 
  CT_FctDeclarator (CTree *d, CTree *args, CTree *cv, CTree *es) {
66283
 
    sons[0] = d; sons[1] = args; sons[2] = cv; sons[3] = es; 
66284
 
  }
66285
 
  static const char *NodeId ();
66286
 
  const char *NodeName () const { return NodeId (); }
66287
 
  int Sons () const { return CTree::Sons (sons, 4); }
66288
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
66289
 
  CTree *Declarator () const { return sons[0]; }
66290
 
  CT_ArgDeclList *Arguments () const { return (CT_ArgDeclList*)sons[1]; }
66291
 
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[2]; }
66292
 
  CT_ExceptionSpec *ExceptionSpecs () const { return (CT_ExceptionSpec*)sons[3]; }
66293
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66294
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
66295
 
  }
66296
 
};
66297
 
 
66298
 
} // closed Puma
66299
 
class WinIfExists;
66300
 
class WinImportHandler;
66301
 
class WinMacros;
66302
 
class CMatchSyntax;
66303
 
class ExtGnu;
66304
 
class ExtAC;
66305
 
class ExtACBuilderCoupling;
66306
 
class ExtACSyntaxCoupling;
66307
 
class ExtACTree;
66308
 
class ExtACKeywords;
66309
 
class WinAsm;
66310
 
class WinDeclSpecs;
66311
 
class WinMemberExplSpec;
66312
 
class WinTypeKeywords;
66313
 
class PragmaOnceUnitState;
66314
 
class PragmaOnce;
66315
 
class CCExprResolve;
66316
 
class CExprResolve;
66317
 
namespace Puma {
66318
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
66319
 
  friend class ::WinImportHandler;
66320
 
  friend class ::WinMacros;
66321
 
  friend class ::CMatchSyntax;
66322
 
  friend class ::ExtGnu;
66323
 
  friend class ::ExtAC;
66324
 
  friend class ::ExtACBuilderCoupling;
66325
 
  friend class ::ExtACSyntaxCoupling;
66326
 
  friend class ::ExtACTree;
66327
 
  friend class ::ExtACKeywords;
66328
 
  friend class ::WinAsm;
66329
 
  friend class ::WinDeclSpecs;
66330
 
  friend class ::WinMemberExplSpec;
66331
 
  friend class ::WinTypeKeywords;
66332
 
  friend class ::PragmaOnceUnitState;
66333
 
  friend class ::PragmaOnce;
66334
 
  friend class ::CCExprResolve;
66335
 
  friend class ::CExprResolve;
66336
 
 
66337
 
  CTree *sons[2]; // ref, declarator
66338
 
 
66339
 
public:
66340
 
  CT_RefDeclarator (CTree *r, CTree *d) { sons[0] = r; sons[1] = d; }
66341
 
  static const char *NodeId ();
66342
 
  const char *NodeName () const { return NodeId (); }
66343
 
  int Sons () const { return 2; }
66344
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
66345
 
  CTree *Declarator () const { return sons[1]; }
66346
 
  void ReplaceSon (CTree *old_son, CTree *new_son) {
66347
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
66348
 
  }
66349
 
};
66350
 
 
66351
 
} // closed Puma
66352
 
class WinIfExists;
66353
 
class WinImportHandler;
66354
 
class WinMacros;
66355
 
class CMatchSyntax;
66356
 
class ExtGnu;
66357
 
class ExtAC;
66358
 
class ExtACBuilderCoupling;
66359
 
class ExtACSyntaxCoupling;
66360
 
class ExtACTree;
66361
 
class ExtACKeywords;
66362
 
class WinAsm;
66363
 
class WinDeclSpecs;
66364
 
class WinMemberExplSpec;
66365
 
class WinTypeKeywords;
66366
 
class PragmaOnceUnitState;
66367
 
class PragmaOnce;
66368
 
class CCExprResolve;
66369
 
class CExprResolve;
66370
 
namespace Puma {
66371
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
66372
 
  friend class ::WinImportHandler;
66373
 
  friend class ::WinMacros;
66374
 
  friend class ::CMatchSyntax;
66375
 
  friend class ::ExtGnu;
66376
 
  friend class ::ExtAC;
66377
 
  friend class ::ExtACBuilderCoupling;
66378
 
  friend class ::ExtACSyntaxCoupling;
66379
 
  friend class ::ExtACTree;
66380
 
  friend class ::ExtACKeywords;
66381
 
  friend class ::WinAsm;
66382
 
  friend class ::WinDeclSpecs;
66383
 
  friend class ::WinMemberExplSpec;
66384
 
  friend class ::WinTypeKeywords;
66385
 
  friend class ::PragmaOnceUnitState;
66386
 
  friend class ::PragmaOnce;
66387
 
  friend class ::CCExprResolve;
66388
 
  friend class ::CExprResolve;
66389
 
 
66390
 
  CTree *sons[3]; // ptr, cv_quals, declarator
66391
 
 
66392
 
public:
66393
 
  CT_PtrDeclarator (CTree *p, CTree *c, CTree *d) {
66394
 
    sons[0] = p; sons[1] = c; sons[2] = d; 
66395
 
  }
66396
 
  static const char *NodeId ();
66397
 
  const char *NodeName () const { return NodeId (); }
66398
 
  int Sons () const { return CTree::Sons (sons, 3); }
66399
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
66400
 
  CTree *Declarator () const { return sons[2]; }
66401
 
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[1]; }
66402
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66403
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
66404
 
  }
66405
 
};
66406
 
 
66407
 
} // closed Puma
66408
 
class WinIfExists;
66409
 
class WinImportHandler;
66410
 
class WinMacros;
66411
 
class CMatchSyntax;
66412
 
class ExtGnu;
66413
 
class ExtAC;
66414
 
class ExtACBuilderCoupling;
66415
 
class ExtACSyntaxCoupling;
66416
 
class ExtACTree;
66417
 
class ExtACKeywords;
66418
 
class WinAsm;
66419
 
class WinDeclSpecs;
66420
 
class WinMemberExplSpec;
66421
 
class WinTypeKeywords;
66422
 
class PragmaOnceUnitState;
66423
 
class PragmaOnce;
66424
 
class CCExprResolve;
66425
 
class CExprResolve;
66426
 
namespace Puma {
66427
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
66428
 
  friend class ::WinImportHandler;
66429
 
  friend class ::WinMacros;
66430
 
  friend class ::CMatchSyntax;
66431
 
  friend class ::ExtGnu;
66432
 
  friend class ::ExtAC;
66433
 
  friend class ::ExtACBuilderCoupling;
66434
 
  friend class ::ExtACSyntaxCoupling;
66435
 
  friend class ::ExtACTree;
66436
 
  friend class ::ExtACKeywords;
66437
 
  friend class ::WinAsm;
66438
 
  friend class ::WinDeclSpecs;
66439
 
  friend class ::WinMemberExplSpec;
66440
 
  friend class ::WinTypeKeywords;
66441
 
  friend class ::PragmaOnceUnitState;
66442
 
  friend class ::PragmaOnce;
66443
 
  friend class ::CCExprResolve;
66444
 
  friend class ::CExprResolve;
66445
 
 
66446
 
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
66447
 
 
66448
 
public:
66449
 
  CT_MembPtrDeclarator (CTree *c, CTree *cc, CTree *p, CTree *q, CTree *d) {
66450
 
    sons[0] = c; sons[1] = cc; sons[2] = p; sons[3] = q; sons[4] = d; 
66451
 
  }
66452
 
  static const char *NodeId ();
66453
 
  const char *NodeName () const { return NodeId (); }
66454
 
  int Sons () const { return CTree::Sons (sons, 5); }
66455
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
66456
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[0]; }
66457
 
  CTree *Declarator () const { return sons[4]; }
66458
 
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[3]; }
66459
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66460
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
66461
 
  }
66462
 
};
66463
 
 
66464
 
} // closed Puma
66465
 
class WinIfExists;
66466
 
class WinImportHandler;
66467
 
class WinMacros;
66468
 
class CMatchSyntax;
66469
 
class ExtGnu;
66470
 
class ExtAC;
66471
 
class ExtACBuilderCoupling;
66472
 
class ExtACSyntaxCoupling;
66473
 
class ExtACTree;
66474
 
class ExtACKeywords;
66475
 
class WinAsm;
66476
 
class WinDeclSpecs;
66477
 
class WinMemberExplSpec;
66478
 
class WinTypeKeywords;
66479
 
class PragmaOnceUnitState;
66480
 
class PragmaOnce;
66481
 
class CCExprResolve;
66482
 
class CExprResolve;
66483
 
namespace Puma {
66484
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
66485
 
  friend class ::WinImportHandler;
66486
 
  friend class ::WinMacros;
66487
 
  friend class ::CMatchSyntax;
66488
 
  friend class ::ExtGnu;
66489
 
  friend class ::ExtAC;
66490
 
  friend class ::ExtACBuilderCoupling;
66491
 
  friend class ::ExtACSyntaxCoupling;
66492
 
  friend class ::ExtACTree;
66493
 
  friend class ::ExtACKeywords;
66494
 
  friend class ::WinAsm;
66495
 
  friend class ::WinDeclSpecs;
66496
 
  friend class ::WinMemberExplSpec;
66497
 
  friend class ::WinTypeKeywords;
66498
 
  friend class ::PragmaOnceUnitState;
66499
 
  friend class ::PragmaOnce;
66500
 
  friend class ::CCExprResolve;
66501
 
  friend class ::CExprResolve;
66502
 
 
66503
 
  CTree *sons[3]; // declarator, colon, expr
66504
 
 
66505
 
public:
66506
 
  CT_BitFieldDeclarator (CTree *d, CTree *c, CTree *e = 0) {
66507
 
    sons[0] = d; sons[1] = c; sons[2] = e; 
66508
 
  }
66509
 
  static const char *NodeId ();
66510
 
  const char *NodeName () const { return NodeId (); }
66511
 
  int Sons () const { return CTree::Sons (sons, 3); }
66512
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
66513
 
  CTree *Declarator () const { return sons[0]; }
66514
 
  CTree *Expr () const { return sons[2]; }
66515
 
  void FieldSize (CTree *s) { sons[2] = s; }
66516
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
66517
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66518
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
66519
 
  }
66520
 
};
66521
 
 
66522
 
/*****************************************************************************/
66523
 
/*                                                                           */
66524
 
/*                              Statements                                   */
66525
 
/*                                                                           */
66526
 
/*****************************************************************************/
66527
 
 
66528
 
} // closed Puma
66529
 
class WinIfExists;
66530
 
class WinImportHandler;
66531
 
class WinMacros;
66532
 
class CMatchSyntax;
66533
 
class ExtGnu;
66534
 
class ExtAC;
66535
 
class ExtACBuilderCoupling;
66536
 
class ExtACSyntaxCoupling;
66537
 
class ExtACTree;
66538
 
class ExtACKeywords;
66539
 
class WinAsm;
66540
 
class WinDeclSpecs;
66541
 
class WinMemberExplSpec;
66542
 
class WinTypeKeywords;
66543
 
class PragmaOnceUnitState;
66544
 
class PragmaOnce;
66545
 
class CCExprResolve;
66546
 
class CExprResolve;
66547
 
namespace Puma {
66548
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
66549
 
  friend class ::WinImportHandler;
66550
 
  friend class ::WinMacros;
66551
 
  friend class ::CMatchSyntax;
66552
 
  friend class ::ExtGnu;
66553
 
  friend class ::ExtAC;
66554
 
  friend class ::ExtACBuilderCoupling;
66555
 
  friend class ::ExtACSyntaxCoupling;
66556
 
  friend class ::ExtACTree;
66557
 
  friend class ::ExtACKeywords;
66558
 
  friend class ::WinAsm;
66559
 
  friend class ::WinDeclSpecs;
66560
 
  friend class ::WinMemberExplSpec;
66561
 
  friend class ::WinTypeKeywords;
66562
 
  friend class ::PragmaOnceUnitState;
66563
 
  friend class ::PragmaOnce;
66564
 
  friend class ::CCExprResolve;
66565
 
  friend class ::CExprResolve;
66566
 
 
66567
 
protected:
66568
 
  CT_Statement () {}
66569
 
};
66570
 
 
66571
 
} // closed Puma
66572
 
class WinIfExists;
66573
 
class WinImportHandler;
66574
 
class WinMacros;
66575
 
class CMatchSyntax;
66576
 
class ExtGnu;
66577
 
class ExtAC;
66578
 
class ExtACBuilderCoupling;
66579
 
class ExtACSyntaxCoupling;
66580
 
class ExtACTree;
66581
 
class ExtACKeywords;
66582
 
class WinAsm;
66583
 
class WinDeclSpecs;
66584
 
class WinMemberExplSpec;
66585
 
class WinTypeKeywords;
66586
 
class PragmaOnceUnitState;
66587
 
class PragmaOnce;
66588
 
class CCExprResolve;
66589
 
class CExprResolve;
66590
 
namespace Puma {
66591
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
66592
 
  friend class ::WinImportHandler;
66593
 
  friend class ::WinMacros;
66594
 
  friend class ::CMatchSyntax;
66595
 
  friend class ::ExtGnu;
66596
 
  friend class ::ExtAC;
66597
 
  friend class ::ExtACBuilderCoupling;
66598
 
  friend class ::ExtACSyntaxCoupling;
66599
 
  friend class ::ExtACTree;
66600
 
  friend class ::ExtACKeywords;
66601
 
  friend class ::WinAsm;
66602
 
  friend class ::WinDeclSpecs;
66603
 
  friend class ::WinMemberExplSpec;
66604
 
  friend class ::WinTypeKeywords;
66605
 
  friend class ::PragmaOnceUnitState;
66606
 
  friend class ::PragmaOnce;
66607
 
  friend class ::CCExprResolve;
66608
 
  friend class ::CExprResolve;
66609
 
 
66610
 
  CTree *sons[3]; // id, colon, stmt
66611
 
 
66612
 
public:
66613
 
  CT_LabelStmt (CTree *id, CTree *c, CTree *stmt) {
66614
 
    sons[0] = id; sons[1] = c; sons[2] = stmt; 
66615
 
  }
66616
 
  static const char *NodeId ();
66617
 
  const char *NodeName () const { return NodeId (); }
66618
 
  int Sons () const { return 3; }
66619
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
66620
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[2]; }
66621
 
  CT_SimpleName *Label () const { return (CT_SimpleName*)sons[0]; }
66622
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66623
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
66624
 
  }
66625
 
};
66626
 
 
66627
 
} // closed Puma
66628
 
class WinIfExists;
66629
 
class WinImportHandler;
66630
 
class WinMacros;
66631
 
class CMatchSyntax;
66632
 
class ExtGnu;
66633
 
class ExtAC;
66634
 
class ExtACBuilderCoupling;
66635
 
class ExtACSyntaxCoupling;
66636
 
class ExtACTree;
66637
 
class ExtACKeywords;
66638
 
class WinAsm;
66639
 
class WinDeclSpecs;
66640
 
class WinMemberExplSpec;
66641
 
class WinTypeKeywords;
66642
 
class PragmaOnceUnitState;
66643
 
class PragmaOnce;
66644
 
class CCExprResolve;
66645
 
class CExprResolve;
66646
 
namespace Puma {
66647
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
66648
 
  friend class ::WinImportHandler;
66649
 
  friend class ::WinMacros;
66650
 
  friend class ::CMatchSyntax;
66651
 
  friend class ::ExtGnu;
66652
 
  friend class ::ExtAC;
66653
 
  friend class ::ExtACBuilderCoupling;
66654
 
  friend class ::ExtACSyntaxCoupling;
66655
 
  friend class ::ExtACTree;
66656
 
  friend class ::ExtACKeywords;
66657
 
  friend class ::WinAsm;
66658
 
  friend class ::WinDeclSpecs;
66659
 
  friend class ::WinMemberExplSpec;
66660
 
  friend class ::WinTypeKeywords;
66661
 
  friend class ::PragmaOnceUnitState;
66662
 
  friend class ::PragmaOnce;
66663
 
  friend class ::CCExprResolve;
66664
 
  friend class ::CExprResolve;
66665
 
 
66666
 
  CTree *sons[3]; // keyword, colon, stmt
66667
 
 
66668
 
public:
66669
 
  CT_DefaultStmt (CTree *kw, CTree *c, CTree *stmt) {
66670
 
    sons[0] = kw; sons[1] = c; sons[2] = stmt; 
66671
 
  }
66672
 
  static const char *NodeId ();
66673
 
  const char *NodeName () const { return NodeId (); }
66674
 
  int Sons () const { return 3; }
66675
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
66676
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[2]; }
66677
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66678
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
66679
 
  }
66680
 
};
66681
 
 
66682
 
} // closed Puma
66683
 
class WinIfExists;
66684
 
class WinImportHandler;
66685
 
class WinMacros;
66686
 
class CMatchSyntax;
66687
 
class ExtGnu;
66688
 
class ExtAC;
66689
 
class ExtACBuilderCoupling;
66690
 
class ExtACSyntaxCoupling;
66691
 
class ExtACTree;
66692
 
class ExtACKeywords;
66693
 
class WinAsm;
66694
 
class WinDeclSpecs;
66695
 
class WinMemberExplSpec;
66696
 
class WinTypeKeywords;
66697
 
class PragmaOnceUnitState;
66698
 
class PragmaOnce;
66699
 
class CCExprResolve;
66700
 
class CExprResolve;
66701
 
namespace Puma {
66702
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
66703
 
  friend class ::WinImportHandler;
66704
 
  friend class ::WinMacros;
66705
 
  friend class ::CMatchSyntax;
66706
 
  friend class ::ExtGnu;
66707
 
  friend class ::ExtAC;
66708
 
  friend class ::ExtACBuilderCoupling;
66709
 
  friend class ::ExtACSyntaxCoupling;
66710
 
  friend class ::ExtACTree;
66711
 
  friend class ::ExtACKeywords;
66712
 
  friend class ::WinAsm;
66713
 
  friend class ::WinDeclSpecs;
66714
 
  friend class ::WinMemberExplSpec;
66715
 
  friend class ::WinTypeKeywords;
66716
 
  friend class ::PragmaOnceUnitState;
66717
 
  friend class ::PragmaOnce;
66718
 
  friend class ::CCExprResolve;
66719
 
  friend class ::CExprResolve;
66720
 
 
66721
 
  CTree *sons[3]; // try, stmt, handlers
66722
 
 
66723
 
public:
66724
 
  CT_TryStmt (CTree *t, CTree *s, CTree *h) {
66725
 
    sons[0] = t; sons[1] = s; sons[2] = h; 
66726
 
  }
66727
 
  static const char *NodeId ();
66728
 
  const char *NodeName () const { return NodeId (); }
66729
 
  int Sons () const { return 3; }
66730
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
66731
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[1]; }
66732
 
  CT_HandlerSeq *Handlers () const { return (CT_HandlerSeq*)sons[2]; }
66733
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66734
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
66735
 
  }
66736
 
};
66737
 
 
66738
 
} // closed Puma
66739
 
class WinIfExists;
66740
 
class WinImportHandler;
66741
 
class WinMacros;
66742
 
class CMatchSyntax;
66743
 
class ExtGnu;
66744
 
class ExtAC;
66745
 
class ExtACBuilderCoupling;
66746
 
class ExtACSyntaxCoupling;
66747
 
class ExtACTree;
66748
 
class ExtACKeywords;
66749
 
class WinAsm;
66750
 
class WinDeclSpecs;
66751
 
class WinMemberExplSpec;
66752
 
class WinTypeKeywords;
66753
 
class PragmaOnceUnitState;
66754
 
class PragmaOnce;
66755
 
class CCExprResolve;
66756
 
class CExprResolve;
66757
 
namespace Puma {
66758
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
66759
 
  friend class ::WinImportHandler;
66760
 
  friend class ::WinMacros;
66761
 
  friend class ::CMatchSyntax;
66762
 
  friend class ::ExtGnu;
66763
 
  friend class ::ExtAC;
66764
 
  friend class ::ExtACBuilderCoupling;
66765
 
  friend class ::ExtACSyntaxCoupling;
66766
 
  friend class ::ExtACTree;
66767
 
  friend class ::ExtACKeywords;
66768
 
  friend class ::WinAsm;
66769
 
  friend class ::WinDeclSpecs;
66770
 
  friend class ::WinMemberExplSpec;
66771
 
  friend class ::WinTypeKeywords;
66772
 
  friend class ::PragmaOnceUnitState;
66773
 
  friend class ::PragmaOnce;
66774
 
  friend class ::CCExprResolve;
66775
 
  friend class ::CExprResolve;
66776
 
 
66777
 
  CTree *sons[4]; // keyword, expr, colon, stmt
66778
 
 
66779
 
public:
66780
 
  CT_CaseStmt (CTree *kw, CTree *expr, CTree *c, CTree *stmt) {
66781
 
    sons[0] = kw; sons[1] = expr; sons[2] = c; sons[3] = stmt; 
66782
 
  }
66783
 
  static const char *NodeId ();
66784
 
  const char *NodeName () const { return NodeId (); }
66785
 
  int Sons () const { return 4; }
66786
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
66787
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[3]; }
66788
 
  CTree *Expr () const { return sons[1]; }
66789
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66790
 
    CTree::ReplaceSon (sons, 4, old_son, new_son);
66791
 
  }
66792
 
};
66793
 
 
66794
 
} // closed Puma
66795
 
class WinIfExists;
66796
 
class WinImportHandler;
66797
 
class WinMacros;
66798
 
class CMatchSyntax;
66799
 
class ExtGnu;
66800
 
class ExtAC;
66801
 
class ExtACBuilderCoupling;
66802
 
class ExtACSyntaxCoupling;
66803
 
class ExtACTree;
66804
 
class ExtACKeywords;
66805
 
class WinAsm;
66806
 
class WinDeclSpecs;
66807
 
class WinMemberExplSpec;
66808
 
class WinTypeKeywords;
66809
 
class PragmaOnceUnitState;
66810
 
class PragmaOnce;
66811
 
class CCExprResolve;
66812
 
class CExprResolve;
66813
 
namespace Puma {
66814
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
66815
 
  friend class ::WinImportHandler;
66816
 
  friend class ::WinMacros;
66817
 
  friend class ::CMatchSyntax;
66818
 
  friend class ::ExtGnu;
66819
 
  friend class ::ExtAC;
66820
 
  friend class ::ExtACBuilderCoupling;
66821
 
  friend class ::ExtACSyntaxCoupling;
66822
 
  friend class ::ExtACTree;
66823
 
  friend class ::ExtACKeywords;
66824
 
  friend class ::WinAsm;
66825
 
  friend class ::WinDeclSpecs;
66826
 
  friend class ::WinMemberExplSpec;
66827
 
  friend class ::WinTypeKeywords;
66828
 
  friend class ::PragmaOnceUnitState;
66829
 
  friend class ::PragmaOnce;
66830
 
  friend class ::CCExprResolve;
66831
 
  friend class ::CExprResolve;
66832
 
 
66833
 
  CTree *sons[2]; // expr, semi_colon
66834
 
 
66835
 
public:
66836
 
  CT_ExprStmt (CTree *expr, CTree *sc) { sons[0] = expr; sons[1] = sc; }
66837
 
  static const char *NodeId ();
66838
 
  const char *NodeName () const { return NodeId (); }
66839
 
  int Sons () const { return CTree::Sons (sons, 2); }
66840
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
66841
 
  CTree *Expr () const { return sons[0]; }
66842
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66843
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
66844
 
  }
66845
 
};
66846
 
 
66847
 
} // closed Puma
66848
 
class WinIfExists;
66849
 
class WinImportHandler;
66850
 
class WinMacros;
66851
 
class CMatchSyntax;
66852
 
class ExtGnu;
66853
 
class ExtAC;
66854
 
class ExtACBuilderCoupling;
66855
 
class ExtACSyntaxCoupling;
66856
 
class ExtACTree;
66857
 
class ExtACKeywords;
66858
 
class WinAsm;
66859
 
class WinDeclSpecs;
66860
 
class WinMemberExplSpec;
66861
 
class WinTypeKeywords;
66862
 
class PragmaOnceUnitState;
66863
 
class PragmaOnce;
66864
 
class CCExprResolve;
66865
 
class CExprResolve;
66866
 
namespace Puma {
66867
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
66868
 
  friend class ::WinImportHandler;
66869
 
  friend class ::WinMacros;
66870
 
  friend class ::CMatchSyntax;
66871
 
  friend class ::ExtGnu;
66872
 
  friend class ::ExtAC;
66873
 
  friend class ::ExtACBuilderCoupling;
66874
 
  friend class ::ExtACSyntaxCoupling;
66875
 
  friend class ::ExtACTree;
66876
 
  friend class ::ExtACKeywords;
66877
 
  friend class ::WinAsm;
66878
 
  friend class ::WinDeclSpecs;
66879
 
  friend class ::WinMemberExplSpec;
66880
 
  friend class ::WinTypeKeywords;
66881
 
  friend class ::PragmaOnceUnitState;
66882
 
  friend class ::PragmaOnce;
66883
 
  friend class ::CCExprResolve;
66884
 
  friend class ::CExprResolve;
66885
 
 
66886
 
  CTree *_decl;
66887
 
 
66888
 
public:
66889
 
  CT_DeclStmt (CTree *decl) : _decl (decl) {}
66890
 
  static const char *NodeId ();
66891
 
  const char *NodeName () const { return NodeId (); }
66892
 
  int Sons () const { return 1; }
66893
 
  CTree *Son (int n) const { return n == 0 ? _decl : (CTree*)0; }
66894
 
  void ReplaceSon (CTree *old_son, CTree *new_son) 
66895
 
   { if (old_son == _decl) _decl = new_son; }
66896
 
};
66897
 
 
66898
 
} // closed Puma
66899
 
class WinIfExists;
66900
 
class WinImportHandler;
66901
 
class WinMacros;
66902
 
class CMatchSyntax;
66903
 
class ExtGnu;
66904
 
class ExtAC;
66905
 
class ExtACBuilderCoupling;
66906
 
class ExtACSyntaxCoupling;
66907
 
class ExtACTree;
66908
 
class ExtACKeywords;
66909
 
class WinAsm;
66910
 
class WinDeclSpecs;
66911
 
class WinMemberExplSpec;
66912
 
class WinTypeKeywords;
66913
 
class PragmaOnceUnitState;
66914
 
class PragmaOnce;
66915
 
class CCExprResolve;
66916
 
class CExprResolve;
66917
 
namespace Puma {
66918
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
66919
 
  friend class ::WinImportHandler;
66920
 
  friend class ::WinMacros;
66921
 
  friend class ::CMatchSyntax;
66922
 
  friend class ::ExtGnu;
66923
 
  friend class ::ExtAC;
66924
 
  friend class ::ExtACBuilderCoupling;
66925
 
  friend class ::ExtACSyntaxCoupling;
66926
 
  friend class ::ExtACTree;
66927
 
  friend class ::ExtACKeywords;
66928
 
  friend class ::WinAsm;
66929
 
  friend class ::WinDeclSpecs;
66930
 
  friend class ::WinMemberExplSpec;
66931
 
  friend class ::WinTypeKeywords;
66932
 
  friend class ::PragmaOnceUnitState;
66933
 
  friend class ::PragmaOnce;
66934
 
  friend class ::CCExprResolve;
66935
 
  friend class ::CExprResolve;
66936
 
 
66937
 
  CTree *sons[5]; // keyword, open, cond, close, stmt
66938
 
 
66939
 
public:
66940
 
  CT_SwitchStmt (CTree *kw, CTree *o, CTree *cond, CTree *c, CTree *stmt) {
66941
 
    sons[0] = kw; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = stmt; 
66942
 
  }
66943
 
  static const char *NodeId ();
66944
 
  const char *NodeName () const { return NodeId (); }
66945
 
  int Sons () const { return 5; }
66946
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
66947
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[4]; }
66948
 
  CTree *Condition () const { return sons[2]; }
66949
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
66950
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
66951
 
  }
66952
 
};
66953
 
 
66954
 
} // closed Puma
66955
 
class WinIfExists;
66956
 
class WinImportHandler;
66957
 
class WinMacros;
66958
 
class CMatchSyntax;
66959
 
class ExtGnu;
66960
 
class ExtAC;
66961
 
class ExtACBuilderCoupling;
66962
 
class ExtACSyntaxCoupling;
66963
 
class ExtACTree;
66964
 
class ExtACKeywords;
66965
 
class WinAsm;
66966
 
class WinDeclSpecs;
66967
 
class WinMemberExplSpec;
66968
 
class WinTypeKeywords;
66969
 
class PragmaOnceUnitState;
66970
 
class PragmaOnce;
66971
 
class CCExprResolve;
66972
 
class CExprResolve;
66973
 
namespace Puma {
66974
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
66975
 
  friend class ::WinImportHandler;
66976
 
  friend class ::WinMacros;
66977
 
  friend class ::CMatchSyntax;
66978
 
  friend class ::ExtGnu;
66979
 
  friend class ::ExtAC;
66980
 
  friend class ::ExtACBuilderCoupling;
66981
 
  friend class ::ExtACSyntaxCoupling;
66982
 
  friend class ::ExtACTree;
66983
 
  friend class ::ExtACKeywords;
66984
 
  friend class ::WinAsm;
66985
 
  friend class ::WinDeclSpecs;
66986
 
  friend class ::WinMemberExplSpec;
66987
 
  friend class ::WinTypeKeywords;
66988
 
  friend class ::PragmaOnceUnitState;
66989
 
  friend class ::PragmaOnce;
66990
 
  friend class ::CCExprResolve;
66991
 
  friend class ::CExprResolve;
66992
 
 
66993
 
  CTree *sons[5]; // keyword, open, cond, close, stmt
66994
 
 
66995
 
public:
66996
 
  CT_IfStmt (CTree *kw, CTree *o, CTree *cond, CTree *c, CTree *stmt) {
66997
 
    sons[0] = kw; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = stmt; 
66998
 
  }
66999
 
  static const char *NodeId ();
67000
 
  const char *NodeName () const { return NodeId (); }
67001
 
  int Sons () const { return 5; }
67002
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
67003
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[4]; }
67004
 
  CTree *Condition () const { return sons[2]; }
67005
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67006
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
67007
 
  }
67008
 
};
67009
 
 
67010
 
} // closed Puma
67011
 
class WinIfExists;
67012
 
class WinImportHandler;
67013
 
class WinMacros;
67014
 
class CMatchSyntax;
67015
 
class ExtGnu;
67016
 
class ExtAC;
67017
 
class ExtACBuilderCoupling;
67018
 
class ExtACSyntaxCoupling;
67019
 
class ExtACTree;
67020
 
class ExtACKeywords;
67021
 
class WinAsm;
67022
 
class WinDeclSpecs;
67023
 
class WinMemberExplSpec;
67024
 
class WinTypeKeywords;
67025
 
class PragmaOnceUnitState;
67026
 
class PragmaOnce;
67027
 
class CCExprResolve;
67028
 
class CExprResolve;
67029
 
namespace Puma {
67030
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
67031
 
  friend class ::WinImportHandler;
67032
 
  friend class ::WinMacros;
67033
 
  friend class ::CMatchSyntax;
67034
 
  friend class ::ExtGnu;
67035
 
  friend class ::ExtAC;
67036
 
  friend class ::ExtACBuilderCoupling;
67037
 
  friend class ::ExtACSyntaxCoupling;
67038
 
  friend class ::ExtACTree;
67039
 
  friend class ::ExtACKeywords;
67040
 
  friend class ::WinAsm;
67041
 
  friend class ::WinDeclSpecs;
67042
 
  friend class ::WinMemberExplSpec;
67043
 
  friend class ::WinTypeKeywords;
67044
 
  friend class ::PragmaOnceUnitState;
67045
 
  friend class ::PragmaOnce;
67046
 
  friend class ::CCExprResolve;
67047
 
  friend class ::CExprResolve;
67048
 
 
67049
 
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
67050
 
 
67051
 
public:
67052
 
  CT_IfElseStmt (CTree *i, CTree *o, CTree *cond, CTree *c, 
67053
 
                 CTree *is, CTree *e, CTree *es) {
67054
 
    sons[0] = i; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = is; 
67055
 
    sons[5] = e; sons[6] = es; 
67056
 
  }
67057
 
  static const char *NodeId ();
67058
 
  const char *NodeName () const { return NodeId (); }
67059
 
  int Sons () const { return 7; }
67060
 
  CTree *Son (int n) const { return CTree::Son (sons, 7, n); }
67061
 
  CTree *Condition () const { return sons[2]; }
67062
 
  CT_Statement *IfPart () const { return (CT_Statement*)sons[4]; }
67063
 
  CT_Statement *ElsePart () const { return (CT_Statement*)sons[6]; }
67064
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67065
 
    CTree::ReplaceSon (sons, 7, old_son, new_son);
67066
 
  }
67067
 
};
67068
 
 
67069
 
} // closed Puma
67070
 
class WinIfExists;
67071
 
class WinImportHandler;
67072
 
class WinMacros;
67073
 
class CMatchSyntax;
67074
 
class ExtGnu;
67075
 
class ExtAC;
67076
 
class ExtACBuilderCoupling;
67077
 
class ExtACSyntaxCoupling;
67078
 
class ExtACTree;
67079
 
class ExtACKeywords;
67080
 
class WinAsm;
67081
 
class WinDeclSpecs;
67082
 
class WinMemberExplSpec;
67083
 
class WinTypeKeywords;
67084
 
class PragmaOnceUnitState;
67085
 
class PragmaOnce;
67086
 
class CCExprResolve;
67087
 
class CExprResolve;
67088
 
namespace Puma {
67089
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
67090
 
  friend class ::WinImportHandler;
67091
 
  friend class ::WinMacros;
67092
 
  friend class ::CMatchSyntax;
67093
 
  friend class ::ExtGnu;
67094
 
  friend class ::ExtAC;
67095
 
  friend class ::ExtACBuilderCoupling;
67096
 
  friend class ::ExtACSyntaxCoupling;
67097
 
  friend class ::ExtACTree;
67098
 
  friend class ::ExtACKeywords;
67099
 
  friend class ::WinAsm;
67100
 
  friend class ::WinDeclSpecs;
67101
 
  friend class ::WinMemberExplSpec;
67102
 
  friend class ::WinTypeKeywords;
67103
 
  friend class ::PragmaOnceUnitState;
67104
 
  friend class ::PragmaOnce;
67105
 
  friend class ::CCExprResolve;
67106
 
  friend class ::CExprResolve;
67107
 
 
67108
 
  CTree *sons[2]; // key, semi_colon
67109
 
 
67110
 
public:
67111
 
  CT_BreakStmt (CTree *key, CTree *sc) { sons[0] = key; sons[1] = sc; }
67112
 
  static const char *NodeId ();
67113
 
  const char *NodeName () const { return NodeId (); }
67114
 
  int Sons () const { return 2; }
67115
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
67116
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67117
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
67118
 
  }
67119
 
};
67120
 
 
67121
 
} // closed Puma
67122
 
class WinIfExists;
67123
 
class WinImportHandler;
67124
 
class WinMacros;
67125
 
class CMatchSyntax;
67126
 
class ExtGnu;
67127
 
class ExtAC;
67128
 
class ExtACBuilderCoupling;
67129
 
class ExtACSyntaxCoupling;
67130
 
class ExtACTree;
67131
 
class ExtACKeywords;
67132
 
class WinAsm;
67133
 
class WinDeclSpecs;
67134
 
class WinMemberExplSpec;
67135
 
class WinTypeKeywords;
67136
 
class PragmaOnceUnitState;
67137
 
class PragmaOnce;
67138
 
class CCExprResolve;
67139
 
class CExprResolve;
67140
 
namespace Puma {
67141
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
67142
 
  friend class ::WinImportHandler;
67143
 
  friend class ::WinMacros;
67144
 
  friend class ::CMatchSyntax;
67145
 
  friend class ::ExtGnu;
67146
 
  friend class ::ExtAC;
67147
 
  friend class ::ExtACBuilderCoupling;
67148
 
  friend class ::ExtACSyntaxCoupling;
67149
 
  friend class ::ExtACTree;
67150
 
  friend class ::ExtACKeywords;
67151
 
  friend class ::WinAsm;
67152
 
  friend class ::WinDeclSpecs;
67153
 
  friend class ::WinMemberExplSpec;
67154
 
  friend class ::WinTypeKeywords;
67155
 
  friend class ::PragmaOnceUnitState;
67156
 
  friend class ::PragmaOnce;
67157
 
  friend class ::CCExprResolve;
67158
 
  friend class ::CExprResolve;
67159
 
 
67160
 
  CTree *sons[2]; // key, semi_colon
67161
 
 
67162
 
public:
67163
 
  CT_ContinueStmt (CTree *key, CTree *sc) { sons[0] = key; sons[1] = sc; }
67164
 
  static const char *NodeId ();
67165
 
  const char *NodeName () const { return NodeId (); }
67166
 
  int Sons () const { return 2; }
67167
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
67168
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67169
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
67170
 
  }
67171
 
};
67172
 
 
67173
 
} // closed Puma
67174
 
class WinIfExists;
67175
 
class WinImportHandler;
67176
 
class WinMacros;
67177
 
class CMatchSyntax;
67178
 
class ExtGnu;
67179
 
class ExtAC;
67180
 
class ExtACBuilderCoupling;
67181
 
class ExtACSyntaxCoupling;
67182
 
class ExtACTree;
67183
 
class ExtACKeywords;
67184
 
class WinAsm;
67185
 
class WinDeclSpecs;
67186
 
class WinMemberExplSpec;
67187
 
class WinTypeKeywords;
67188
 
class PragmaOnceUnitState;
67189
 
class PragmaOnce;
67190
 
class CCExprResolve;
67191
 
class CExprResolve;
67192
 
namespace Puma {
67193
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
67194
 
  friend class ::WinImportHandler;
67195
 
  friend class ::WinMacros;
67196
 
  friend class ::CMatchSyntax;
67197
 
  friend class ::ExtGnu;
67198
 
  friend class ::ExtAC;
67199
 
  friend class ::ExtACBuilderCoupling;
67200
 
  friend class ::ExtACSyntaxCoupling;
67201
 
  friend class ::ExtACTree;
67202
 
  friend class ::ExtACKeywords;
67203
 
  friend class ::WinAsm;
67204
 
  friend class ::WinDeclSpecs;
67205
 
  friend class ::WinMemberExplSpec;
67206
 
  friend class ::WinTypeKeywords;
67207
 
  friend class ::PragmaOnceUnitState;
67208
 
  friend class ::PragmaOnce;
67209
 
  friend class ::CCExprResolve;
67210
 
  friend class ::CExprResolve;
67211
 
 
67212
 
  CTree *sons[3]; // key, label, semi_colon
67213
 
 
67214
 
public:
67215
 
  CT_GotoStmt (CTree *key, CTree *l, CTree *sc) {
67216
 
    sons[0] = key; sons[1] = l; sons[2] = sc; 
67217
 
  }
67218
 
  static const char *NodeId ();
67219
 
  const char *NodeName () const { return NodeId (); }
67220
 
  int Sons () const { return 3; }
67221
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
67222
 
  CT_SimpleName *Label () const { return (CT_SimpleName*)sons[1]; }
67223
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67224
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
67225
 
  }
67226
 
};
67227
 
 
67228
 
} // closed Puma
67229
 
class WinIfExists;
67230
 
class WinImportHandler;
67231
 
class WinMacros;
67232
 
class CMatchSyntax;
67233
 
class ExtGnu;
67234
 
class ExtAC;
67235
 
class ExtACBuilderCoupling;
67236
 
class ExtACSyntaxCoupling;
67237
 
class ExtACTree;
67238
 
class ExtACKeywords;
67239
 
class WinAsm;
67240
 
class WinDeclSpecs;
67241
 
class WinMemberExplSpec;
67242
 
class WinTypeKeywords;
67243
 
class PragmaOnceUnitState;
67244
 
class PragmaOnce;
67245
 
class CCExprResolve;
67246
 
class CExprResolve;
67247
 
namespace Puma {
67248
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
67249
 
  friend class ::WinImportHandler;
67250
 
  friend class ::WinMacros;
67251
 
  friend class ::CMatchSyntax;
67252
 
  friend class ::ExtGnu;
67253
 
  friend class ::ExtAC;
67254
 
  friend class ::ExtACBuilderCoupling;
67255
 
  friend class ::ExtACSyntaxCoupling;
67256
 
  friend class ::ExtACTree;
67257
 
  friend class ::ExtACKeywords;
67258
 
  friend class ::WinAsm;
67259
 
  friend class ::WinDeclSpecs;
67260
 
  friend class ::WinMemberExplSpec;
67261
 
  friend class ::WinTypeKeywords;
67262
 
  friend class ::PragmaOnceUnitState;
67263
 
  friend class ::PragmaOnce;
67264
 
  friend class ::CCExprResolve;
67265
 
  friend class ::CExprResolve;
67266
 
 
67267
 
  CTree *sons[3]; // key, expr, semi_colon
67268
 
 
67269
 
public:
67270
 
  CT_ReturnStmt (CTree *key, CTree *e, CTree *sc) {
67271
 
    sons[0] = key; sons[1] = e; sons[2] = sc; 
67272
 
  }
67273
 
  static const char *NodeId ();
67274
 
  const char *NodeName () const { return NodeId (); }
67275
 
  int Sons () const { return CTree::Sons (sons, 3); }
67276
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
67277
 
  CTree *Expr () const { return sons[1]; }
67278
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67279
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
67280
 
  }
67281
 
};
67282
 
 
67283
 
} // closed Puma
67284
 
class WinIfExists;
67285
 
class WinImportHandler;
67286
 
class WinMacros;
67287
 
class CMatchSyntax;
67288
 
class ExtGnu;
67289
 
class ExtAC;
67290
 
class ExtACBuilderCoupling;
67291
 
class ExtACSyntaxCoupling;
67292
 
class ExtACTree;
67293
 
class ExtACKeywords;
67294
 
class WinAsm;
67295
 
class WinDeclSpecs;
67296
 
class WinMemberExplSpec;
67297
 
class WinTypeKeywords;
67298
 
class PragmaOnceUnitState;
67299
 
class PragmaOnce;
67300
 
class CCExprResolve;
67301
 
class CExprResolve;
67302
 
namespace Puma {
67303
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
67304
 
  friend class ::WinImportHandler;
67305
 
  friend class ::WinMacros;
67306
 
  friend class ::CMatchSyntax;
67307
 
  friend class ::ExtGnu;
67308
 
  friend class ::ExtAC;
67309
 
  friend class ::ExtACBuilderCoupling;
67310
 
  friend class ::ExtACSyntaxCoupling;
67311
 
  friend class ::ExtACTree;
67312
 
  friend class ::ExtACKeywords;
67313
 
  friend class ::WinAsm;
67314
 
  friend class ::WinDeclSpecs;
67315
 
  friend class ::WinMemberExplSpec;
67316
 
  friend class ::WinTypeKeywords;
67317
 
  friend class ::PragmaOnceUnitState;
67318
 
  friend class ::PragmaOnce;
67319
 
  friend class ::CCExprResolve;
67320
 
  friend class ::CExprResolve;
67321
 
 
67322
 
  CTree *sons[5]; // key, open, cond, close, stmt
67323
 
 
67324
 
public:
67325
 
  CT_WhileStmt (CTree *kw, CTree *o, CTree *cond, CTree *c, CTree *stmt) {
67326
 
    sons[0] = kw; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = stmt; 
67327
 
  }
67328
 
  static const char *NodeId ();
67329
 
  const char *NodeName () const { return NodeId (); }
67330
 
  int Sons () const { return 5; }
67331
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
67332
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[4]; }
67333
 
  CTree *Condition () const { return sons[2]; }
67334
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67335
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
67336
 
  }
67337
 
};
67338
 
 
67339
 
} // closed Puma
67340
 
class WinIfExists;
67341
 
class WinImportHandler;
67342
 
class WinMacros;
67343
 
class CMatchSyntax;
67344
 
class ExtGnu;
67345
 
class ExtAC;
67346
 
class ExtACBuilderCoupling;
67347
 
class ExtACSyntaxCoupling;
67348
 
class ExtACTree;
67349
 
class ExtACKeywords;
67350
 
class WinAsm;
67351
 
class WinDeclSpecs;
67352
 
class WinMemberExplSpec;
67353
 
class WinTypeKeywords;
67354
 
class PragmaOnceUnitState;
67355
 
class PragmaOnce;
67356
 
class CCExprResolve;
67357
 
class CExprResolve;
67358
 
namespace Puma {
67359
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
67360
 
  friend class ::WinImportHandler;
67361
 
  friend class ::WinMacros;
67362
 
  friend class ::CMatchSyntax;
67363
 
  friend class ::ExtGnu;
67364
 
  friend class ::ExtAC;
67365
 
  friend class ::ExtACBuilderCoupling;
67366
 
  friend class ::ExtACSyntaxCoupling;
67367
 
  friend class ::ExtACTree;
67368
 
  friend class ::ExtACKeywords;
67369
 
  friend class ::WinAsm;
67370
 
  friend class ::WinDeclSpecs;
67371
 
  friend class ::WinMemberExplSpec;
67372
 
  friend class ::WinTypeKeywords;
67373
 
  friend class ::PragmaOnceUnitState;
67374
 
  friend class ::PragmaOnce;
67375
 
  friend class ::CCExprResolve;
67376
 
  friend class ::CExprResolve;
67377
 
 
67378
 
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
67379
 
 
67380
 
public:
67381
 
  CT_DoStmt (CTree *d, CTree *stmt, CTree *w, CTree *o, CTree *e, 
67382
 
             CTree *c, CTree *sc) {
67383
 
    sons[0] = d; sons[1] = stmt; sons[2] = w; sons[3] = o; sons[4] = e; 
67384
 
    sons[5] = c; sons[6] = sc; 
67385
 
  }
67386
 
  static const char *NodeId ();
67387
 
  const char *NodeName () const { return NodeId (); }
67388
 
  int Sons () const { return 7; }
67389
 
  CTree *Son (int n) const { return CTree::Son (sons, 7, n); }
67390
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[1]; }
67391
 
  CTree *Expr () const { return sons[4]; }
67392
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67393
 
    CTree::ReplaceSon (sons, 7, old_son, new_son);
67394
 
  }
67395
 
};
67396
 
 
67397
 
} // closed Puma
67398
 
class WinIfExists;
67399
 
class WinImportHandler;
67400
 
class WinMacros;
67401
 
class CMatchSyntax;
67402
 
class ExtGnu;
67403
 
class ExtAC;
67404
 
class ExtACBuilderCoupling;
67405
 
class ExtACSyntaxCoupling;
67406
 
class ExtACTree;
67407
 
class ExtACKeywords;
67408
 
class WinAsm;
67409
 
class WinDeclSpecs;
67410
 
class WinMemberExplSpec;
67411
 
class WinTypeKeywords;
67412
 
class PragmaOnceUnitState;
67413
 
class PragmaOnce;
67414
 
class CCExprResolve;
67415
 
class CExprResolve;
67416
 
namespace Puma {
67417
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
67418
 
  friend class ::WinImportHandler;
67419
 
  friend class ::WinMacros;
67420
 
  friend class ::CMatchSyntax;
67421
 
  friend class ::ExtGnu;
67422
 
  friend class ::ExtAC;
67423
 
  friend class ::ExtACBuilderCoupling;
67424
 
  friend class ::ExtACSyntaxCoupling;
67425
 
  friend class ::ExtACTree;
67426
 
  friend class ::ExtACKeywords;
67427
 
  friend class ::WinAsm;
67428
 
  friend class ::WinDeclSpecs;
67429
 
  friend class ::WinMemberExplSpec;
67430
 
  friend class ::WinTypeKeywords;
67431
 
  friend class ::PragmaOnceUnitState;
67432
 
  friend class ::PragmaOnce;
67433
 
  friend class ::CCExprResolve;
67434
 
  friend class ::CExprResolve;
67435
 
 
67436
 
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
67437
 
 
67438
 
public:
67439
 
  CT_ForStmt (CTree *k, CTree *o, CTree *i, CTree *co, CTree *sc,
67440
 
              CTree *e, CTree *c, CTree *stmt) {
67441
 
    sons[0] = k; sons[1] = o; sons[2] = i; sons[3] = co; 
67442
 
    sons[4] = sc; sons[5] = e; sons[6] = c; sons[7] = stmt; 
67443
 
  }
67444
 
  static const char *NodeId ();
67445
 
  const char *NodeName () const { return NodeId (); }
67446
 
  int Sons () const { return CTree::Sons (sons, 8); }
67447
 
  CTree *Son (int n) const { return CTree::Son (sons, 8, n); }
67448
 
  CTree *InitStmt () const { return sons[2]; }
67449
 
  CTree *Condition () const { return sons[3]; }
67450
 
  CTree *Expr () const { return sons[5]; }
67451
 
  CT_Statement *Statement () const { return (CT_Statement*)sons[7]; }
67452
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67453
 
    CTree::ReplaceSon (sons, 8, old_son, new_son);
67454
 
  }
67455
 
};
67456
 
 
67457
 
} // closed Puma
67458
 
class WinIfExists;
67459
 
class WinImportHandler;
67460
 
class WinMacros;
67461
 
class CMatchSyntax;
67462
 
class ExtGnu;
67463
 
class ExtAC;
67464
 
class ExtACBuilderCoupling;
67465
 
class ExtACSyntaxCoupling;
67466
 
class ExtACTree;
67467
 
class ExtACKeywords;
67468
 
class WinAsm;
67469
 
class WinDeclSpecs;
67470
 
class WinMemberExplSpec;
67471
 
class WinTypeKeywords;
67472
 
class PragmaOnceUnitState;
67473
 
class PragmaOnce;
67474
 
class CCExprResolve;
67475
 
class CExprResolve;
67476
 
namespace Puma {
67477
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
67478
 
  friend class ::WinImportHandler;
67479
 
  friend class ::WinMacros;
67480
 
  friend class ::CMatchSyntax;
67481
 
  friend class ::ExtGnu;
67482
 
  friend class ::ExtAC;
67483
 
  friend class ::ExtACBuilderCoupling;
67484
 
  friend class ::ExtACSyntaxCoupling;
67485
 
  friend class ::ExtACTree;
67486
 
  friend class ::ExtACKeywords;
67487
 
  friend class ::WinAsm;
67488
 
  friend class ::WinDeclSpecs;
67489
 
  friend class ::WinMemberExplSpec;
67490
 
  friend class ::WinTypeKeywords;
67491
 
  friend class ::PragmaOnceUnitState;
67492
 
  friend class ::PragmaOnce;
67493
 
  friend class ::CCExprResolve;
67494
 
  friend class ::CExprResolve;
67495
 
 
67496
 
  CTree *sons[3]; // declspecs, declarator, init
67497
 
 
67498
 
public:
67499
 
  CT_Condition (CTree *dsl, CTree *d) {
67500
 
    sons[0] = dsl; sons[1] = d; sons[2] = 0;
67501
 
  }
67502
 
  static const char *NodeId ();
67503
 
  const char *NodeName () const { return NodeId (); }
67504
 
  int Sons () const { return CTree::Sons (sons, 3); }
67505
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
67506
 
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
67507
 
  CTree *Declarator () const { return sons[1]; }
67508
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[2]; }
67509
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
67510
 
  void Initializer (CTree *i) { sons[2] = i; }
67511
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67512
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
67513
 
  }
67514
 
};
67515
 
 
67516
 
/*****************************************************************************/
67517
 
/*                                                                           */
67518
 
/*                              Classes                                      */
67519
 
/*                                                                           */
67520
 
/*****************************************************************************/
67521
 
 
67522
 
} // closed Puma
67523
 
class WinIfExists;
67524
 
class WinImportHandler;
67525
 
class WinMacros;
67526
 
class CMatchSyntax;
67527
 
class ExtGnu;
67528
 
class ExtAC;
67529
 
class ExtACBuilderCoupling;
67530
 
class ExtACSyntaxCoupling;
67531
 
class ExtACTree;
67532
 
class ExtACKeywords;
67533
 
class WinAsm;
67534
 
class WinDeclSpecs;
67535
 
class WinMemberExplSpec;
67536
 
class WinTypeKeywords;
67537
 
class PragmaOnceUnitState;
67538
 
class PragmaOnce;
67539
 
class CCExprResolve;
67540
 
class CExprResolve;
67541
 
namespace Puma {
67542
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
67543
 
  friend class ::WinImportHandler;
67544
 
  friend class ::WinMacros;
67545
 
  friend class ::CMatchSyntax;
67546
 
  friend class ::ExtGnu;
67547
 
  friend class ::ExtAC;
67548
 
  friend class ::ExtACBuilderCoupling;
67549
 
  friend class ::ExtACSyntaxCoupling;
67550
 
  friend class ::ExtACTree;
67551
 
  friend class ::ExtACKeywords;
67552
 
  friend class ::WinAsm;
67553
 
  friend class ::WinDeclSpecs;
67554
 
  friend class ::WinMemberExplSpec;
67555
 
  friend class ::WinTypeKeywords;
67556
 
  friend class ::PragmaOnceUnitState;
67557
 
  friend class ::PragmaOnce;
67558
 
  friend class ::CCExprResolve;
67559
 
  friend class ::CExprResolve;
67560
 
 
67561
 
   
67562
 
  struct __ac_wrapper_sons {
67563
 
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
67564
 
    operator A& () { return _data; }
67565
 
    operator A& () const { return (A&)*(::Puma::CTree * *)_data; }
67566
 
    operator const A& () { return _data; }
67567
 
    operator const A& () const { return _data; }
67568
 
    operator void* () { return _data; }
67569
 
    operator void* () const { return (void*)_data; }
67570
 
    operator const void* () { return _data; }
67571
 
    operator const void* () const { return _data; }
67572
 
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
67573
 
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
67574
 
  } sons; // key, name, bases, members
67575
 
  CTree *obj_decl;
67576
 
 
67577
 
public:
67578
 
  
67579
 
 
67580
 
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
67581
 
  typedef void Result;
67582
 
  typedef ::Puma::CT_ClassDef That;
67583
 
  typedef ::Puma::CT_ClassDef Target;
67584
 
  static const int JPID = 4;
67585
 
  static const AC::JPType JPTYPE = (AC::JPType)16;
67586
 
  struct Res {
67587
 
    typedef void Type;
67588
 
    typedef void ReferredType;
67589
 
  };
67590
 
  enum { ARGS = 3 };
67591
 
  template <int I, int DUMMY = 0> struct Arg {
67592
 
    typedef void Type;
67593
 
    typedef void ReferredType;
67594
 
  };
67595
 
  template <int DUMMY> struct Arg<0, DUMMY> {
67596
 
    typedef ::Puma::CTree * Type;
67597
 
    typedef ::Puma::CTree * ReferredType;
67598
 
  };
67599
 
  template <int DUMMY> struct Arg<1, DUMMY> {
67600
 
    typedef ::Puma::CTree * Type;
67601
 
    typedef ::Puma::CTree * ReferredType;
67602
 
  };
67603
 
  template <int DUMMY> struct Arg<2, DUMMY> {
67604
 
    typedef ::Puma::CTree * Type;
67605
 
    typedef ::Puma::CTree * ReferredType;
67606
 
  };
67607
 
 
67608
 
  That *_that;
67609
 
 
67610
 
  inline That *that() {return (That*)_that;}
67611
 
 
67612
 
};
67613
 
 
67614
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
67615
 
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
67616
 
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
67617
 
this->__exec_old_C1(arg0, arg1, arg2);
67618
 
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
67619
 
 
67620
 
}
67621
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
67622
 
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
67623
 
  }
67624
 
  static const char *NodeId ();
67625
 
  const char *NodeName () const { return NodeId (); }
67626
 
  int Sons () const { return CTree::Sons (sons, 4); }
67627
 
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
67628
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
67629
 
  CT_MembList *Members () const { return (CT_MembList*)sons[3]; }
67630
 
  CT_BaseSpecList *BaseClasses () const { return (CT_BaseSpecList*)sons[2]; }
67631
 
  CT_ObjDecl *ObjDecl () const { return (CT_ObjDecl*)obj_decl; }
67632
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
67633
 
  void Members (CTree *m) { sons[3] = m; }
67634
 
  void BaseClasses (CTree *bc) { sons[2] = bc; }
67635
 
  void ObjDecl (CTree *od) { obj_decl = od; }
67636
 
  void ReplaceSon (CTree *old_son, CTree *new_son) {
67637
 
    // &(...) is used here to avoid strange warnings by mingw32-g++
67638
 
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
67639
 
  }
67640
 
   private:
67641
 
 CTree * _intro_members ;
67642
 
public :
67643
 
CTree * IntroMembers ( ) const { return _intro_members ; }
67644
 
void IntroMembers ( CTree * members ) { _intro_members = members ; }
67645
 
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
67646
 
  typedef void Result;
67647
 
  typedef ::Puma::CT_ClassDef That;
67648
 
  typedef ::Puma::CT_ClassDef Target;
67649
 
  static const int JPID = 4;
67650
 
  static const AC::JPType JPTYPE = (AC::JPType)16;
67651
 
  struct Res {
67652
 
    typedef void Type;
67653
 
    typedef void ReferredType;
67654
 
  };
67655
 
  enum { ARGS = 1 };
67656
 
  template <int I, int DUMMY = 0> struct Arg {
67657
 
    typedef void Type;
67658
 
    typedef void ReferredType;
67659
 
  };
67660
 
  template <int DUMMY> struct Arg<0, DUMMY> {
67661
 
    typedef const ::Puma::CT_ClassDef & Type;
67662
 
    typedef const ::Puma::CT_ClassDef ReferredType;
67663
 
  };
67664
 
 
67665
 
  That *_that;
67666
 
 
67667
 
  inline That *that() {return (That*)_that;}
67668
 
 
67669
 
};
67670
 
 
67671
 
 
67672
 
public:
67673
 
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
67674
 
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
67675
 
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0::That*)this;
67676
 
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0> (&tjp);
67677
 
 
67678
 
}
67679
 
 
67680
 
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
67681
 
  typedef void Result;
67682
 
  typedef ::Puma::CT_ClassDef That;
67683
 
  typedef ::Puma::CT_ClassDef Target;
67684
 
  static const int JPID = 4;
67685
 
  static const AC::JPType JPTYPE = (AC::JPType)32;
67686
 
  struct Res {
67687
 
    typedef void Type;
67688
 
    typedef void ReferredType;
67689
 
  };
67690
 
  enum { ARGS = 0 };
67691
 
  template <int I, int DUMMY = 0> struct Arg {
67692
 
    typedef void Type;
67693
 
    typedef void ReferredType;
67694
 
  };
67695
 
 
67696
 
  That *_that;
67697
 
 
67698
 
  inline That *that() {return (That*)_that;}
67699
 
 
67700
 
};
67701
 
 
67702
 
 
67703
 
public:
67704
 
inline ~CT_ClassDef () {
67705
 
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
67706
 
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefD1Ev_0::That*)this;
67707
 
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
67708
 
 
67709
 
}
67710
 
};
67711
 
      
67712
 
} // closed Puma
67713
 
class WinIfExists;
67714
 
class WinImportHandler;
67715
 
class WinMacros;
67716
 
class CMatchSyntax;
67717
 
class ExtGnu;
67718
 
class ExtAC;
67719
 
class ExtACBuilderCoupling;
67720
 
class ExtACSyntaxCoupling;
67721
 
class ExtACTree;
67722
 
class ExtACKeywords;
67723
 
class WinAsm;
67724
 
class WinDeclSpecs;
67725
 
class WinMemberExplSpec;
67726
 
class WinTypeKeywords;
67727
 
class PragmaOnceUnitState;
67728
 
class PragmaOnce;
67729
 
class CCExprResolve;
67730
 
class CExprResolve;
67731
 
namespace Puma {
67732
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
67733
 
  friend class ::WinImportHandler;
67734
 
  friend class ::WinMacros;
67735
 
  friend class ::CMatchSyntax;
67736
 
  friend class ::ExtGnu;
67737
 
  friend class ::ExtAC;
67738
 
  friend class ::ExtACBuilderCoupling;
67739
 
  friend class ::ExtACSyntaxCoupling;
67740
 
  friend class ::ExtACTree;
67741
 
  friend class ::ExtACKeywords;
67742
 
  friend class ::WinAsm;
67743
 
  friend class ::WinDeclSpecs;
67744
 
  friend class ::WinMemberExplSpec;
67745
 
  friend class ::WinTypeKeywords;
67746
 
  friend class ::PragmaOnceUnitState;
67747
 
  friend class ::PragmaOnce;
67748
 
  friend class ::CCExprResolve;
67749
 
  friend class ::CExprResolve;
67750
 
 
67751
 
public:
67752
 
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
67753
 
  static const char *NodeId ();
67754
 
  const char *NodeName () const { return NodeId (); }
67755
 
};
67756
 
      
67757
 
} // closed Puma
67758
 
class WinIfExists;
67759
 
class WinImportHandler;
67760
 
class WinMacros;
67761
 
class CMatchSyntax;
67762
 
class ExtGnu;
67763
 
class ExtAC;
67764
 
class ExtACBuilderCoupling;
67765
 
class ExtACSyntaxCoupling;
67766
 
class ExtACTree;
67767
 
class ExtACKeywords;
67768
 
class WinAsm;
67769
 
class WinDeclSpecs;
67770
 
class WinMemberExplSpec;
67771
 
class WinTypeKeywords;
67772
 
class PragmaOnceUnitState;
67773
 
class PragmaOnce;
67774
 
class CCExprResolve;
67775
 
class CExprResolve;
67776
 
namespace Puma {
67777
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
67778
 
  friend class ::WinImportHandler;
67779
 
  friend class ::WinMacros;
67780
 
  friend class ::CMatchSyntax;
67781
 
  friend class ::ExtGnu;
67782
 
  friend class ::ExtAC;
67783
 
  friend class ::ExtACBuilderCoupling;
67784
 
  friend class ::ExtACSyntaxCoupling;
67785
 
  friend class ::ExtACTree;
67786
 
  friend class ::ExtACKeywords;
67787
 
  friend class ::WinAsm;
67788
 
  friend class ::WinDeclSpecs;
67789
 
  friend class ::WinMemberExplSpec;
67790
 
  friend class ::WinTypeKeywords;
67791
 
  friend class ::PragmaOnceUnitState;
67792
 
  friend class ::PragmaOnce;
67793
 
  friend class ::CCExprResolve;
67794
 
  friend class ::CExprResolve;
67795
 
 
67796
 
public:
67797
 
  CT_MembList (int size = 10, int incr = 10) : 
67798
 
    CT_DeclList (size, incr) {}
67799
 
  static const char *NodeId ();
67800
 
  const char *NodeName () const { return NodeId (); }
67801
 
};
67802
 
 
67803
 
} // closed Puma
67804
 
class WinIfExists;
67805
 
class WinImportHandler;
67806
 
class WinMacros;
67807
 
class CMatchSyntax;
67808
 
class ExtGnu;
67809
 
class ExtAC;
67810
 
class ExtACBuilderCoupling;
67811
 
class ExtACSyntaxCoupling;
67812
 
class ExtACTree;
67813
 
class ExtACKeywords;
67814
 
class WinAsm;
67815
 
class WinDeclSpecs;
67816
 
class WinMemberExplSpec;
67817
 
class WinTypeKeywords;
67818
 
class PragmaOnceUnitState;
67819
 
class PragmaOnce;
67820
 
class CCExprResolve;
67821
 
class CExprResolve;
67822
 
namespace Puma {
67823
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
67824
 
  friend class ::WinImportHandler;
67825
 
  friend class ::WinMacros;
67826
 
  friend class ::CMatchSyntax;
67827
 
  friend class ::ExtGnu;
67828
 
  friend class ::ExtAC;
67829
 
  friend class ::ExtACBuilderCoupling;
67830
 
  friend class ::ExtACSyntaxCoupling;
67831
 
  friend class ::ExtACTree;
67832
 
  friend class ::ExtACKeywords;
67833
 
  friend class ::WinAsm;
67834
 
  friend class ::WinDeclSpecs;
67835
 
  friend class ::WinMemberExplSpec;
67836
 
  friend class ::WinTypeKeywords;
67837
 
  friend class ::PragmaOnceUnitState;
67838
 
  friend class ::PragmaOnce;
67839
 
  friend class ::CCExprResolve;
67840
 
  friend class ::CExprResolve;
67841
 
 
67842
 
public:
67843
 
  CT_MembInitList (int size = 2) : 
67844
 
    CT_List (size, 2, CT_List::OPEN) {}
67845
 
  static const char *NodeId ();
67846
 
  const char *NodeName () const { return NodeId (); }
67847
 
};
67848
 
 
67849
 
} // closed Puma
67850
 
class WinIfExists;
67851
 
class WinImportHandler;
67852
 
class WinMacros;
67853
 
class CMatchSyntax;
67854
 
class ExtGnu;
67855
 
class ExtAC;
67856
 
class ExtACBuilderCoupling;
67857
 
class ExtACSyntaxCoupling;
67858
 
class ExtACTree;
67859
 
class ExtACKeywords;
67860
 
class WinAsm;
67861
 
class WinDeclSpecs;
67862
 
class WinMemberExplSpec;
67863
 
class WinTypeKeywords;
67864
 
class PragmaOnceUnitState;
67865
 
class PragmaOnce;
67866
 
class CCExprResolve;
67867
 
class CExprResolve;
67868
 
namespace Puma {
67869
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
67870
 
  friend class ::WinImportHandler;
67871
 
  friend class ::WinMacros;
67872
 
  friend class ::CMatchSyntax;
67873
 
  friend class ::ExtGnu;
67874
 
  friend class ::ExtAC;
67875
 
  friend class ::ExtACBuilderCoupling;
67876
 
  friend class ::ExtACSyntaxCoupling;
67877
 
  friend class ::ExtACTree;
67878
 
  friend class ::ExtACKeywords;
67879
 
  friend class ::WinAsm;
67880
 
  friend class ::WinDeclSpecs;
67881
 
  friend class ::WinMemberExplSpec;
67882
 
  friend class ::WinTypeKeywords;
67883
 
  friend class ::PragmaOnceUnitState;
67884
 
  friend class ::PragmaOnce;
67885
 
  friend class ::CCExprResolve;
67886
 
  friend class ::CExprResolve;
67887
 
 
67888
 
  CTree *sons[2]; // name, init
67889
 
 
67890
 
public:
67891
 
  CT_MembInit (CTree *n, CTree *i) { sons[0] = n; sons[1] = i; }
67892
 
  static const char *NodeId ();
67893
 
  const char *NodeName () const { return NodeId (); }
67894
 
  int Sons () const { return 2; }
67895
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
67896
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
67897
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
67898
 
  }
67899
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[0]; }
67900
 
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
67901
 
  CSemObject *SemObject () const { return (CSemObject*)this; }
67902
 
   private:
67903
 
  typedef CT_MembInit CCExprResolveExpr;
67904
 
 public :
67905
 
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
67906
 
  typedef CT_MembInit CExprResolveExpr;
67907
 
 public :
67908
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
67909
 
 
67910
 
} // closed Puma
67911
 
class WinIfExists;
67912
 
class WinImportHandler;
67913
 
class WinMacros;
67914
 
class CMatchSyntax;
67915
 
class ExtGnu;
67916
 
class ExtAC;
67917
 
class ExtACBuilderCoupling;
67918
 
class ExtACSyntaxCoupling;
67919
 
class ExtACTree;
67920
 
class ExtACKeywords;
67921
 
class WinAsm;
67922
 
class WinDeclSpecs;
67923
 
class WinMemberExplSpec;
67924
 
class WinTypeKeywords;
67925
 
class PragmaOnceUnitState;
67926
 
class PragmaOnce;
67927
 
class CCExprResolve;
67928
 
class CExprResolve;
67929
 
namespace Puma {
67930
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
67931
 
  friend class ::WinImportHandler;
67932
 
  friend class ::WinMacros;
67933
 
  friend class ::CMatchSyntax;
67934
 
  friend class ::ExtGnu;
67935
 
  friend class ::ExtAC;
67936
 
  friend class ::ExtACBuilderCoupling;
67937
 
  friend class ::ExtACSyntaxCoupling;
67938
 
  friend class ::ExtACTree;
67939
 
  friend class ::ExtACKeywords;
67940
 
  friend class ::WinAsm;
67941
 
  friend class ::WinDeclSpecs;
67942
 
  friend class ::WinMemberExplSpec;
67943
 
  friend class ::WinTypeKeywords;
67944
 
  friend class ::PragmaOnceUnitState;
67945
 
  friend class ::PragmaOnce;
67946
 
  friend class ::CCExprResolve;
67947
 
  friend class ::CExprResolve;
67948
 
 
67949
 
public:
67950
 
  CT_BaseSpecList (int size = 2) : 
67951
 
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
67952
 
  static const char *NodeId ();
67953
 
  const char *NodeName () const { return NodeId (); }
67954
 
};
67955
 
 
67956
 
} // closed Puma
67957
 
class WinIfExists;
67958
 
class WinImportHandler;
67959
 
class WinMacros;
67960
 
class CMatchSyntax;
67961
 
class ExtGnu;
67962
 
class ExtAC;
67963
 
class ExtACBuilderCoupling;
67964
 
class ExtACSyntaxCoupling;
67965
 
class ExtACTree;
67966
 
class ExtACKeywords;
67967
 
class WinAsm;
67968
 
class WinDeclSpecs;
67969
 
class WinMemberExplSpec;
67970
 
class WinTypeKeywords;
67971
 
class PragmaOnceUnitState;
67972
 
class PragmaOnce;
67973
 
class CCExprResolve;
67974
 
class CExprResolve;
67975
 
namespace Puma {
67976
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
67977
 
  friend class ::WinImportHandler;
67978
 
  friend class ::WinMacros;
67979
 
  friend class ::CMatchSyntax;
67980
 
  friend class ::ExtGnu;
67981
 
  friend class ::ExtAC;
67982
 
  friend class ::ExtACBuilderCoupling;
67983
 
  friend class ::ExtACSyntaxCoupling;
67984
 
  friend class ::ExtACTree;
67985
 
  friend class ::ExtACKeywords;
67986
 
  friend class ::WinAsm;
67987
 
  friend class ::WinDeclSpecs;
67988
 
  friend class ::WinMemberExplSpec;
67989
 
  friend class ::WinTypeKeywords;
67990
 
  friend class ::PragmaOnceUnitState;
67991
 
  friend class ::PragmaOnce;
67992
 
  friend class ::CCExprResolve;
67993
 
  friend class ::CExprResolve;
67994
 
 
67995
 
  CTree *sons[2]; // access, colon
67996
 
 
67997
 
public:
67998
 
  CT_AccessSpec (CTree *a, CTree *c) { sons[0] = a; sons[1] = c; }
67999
 
  static const char *NodeId ();
68000
 
  const char *NodeName () const { return NodeId (); }
68001
 
  int Sons () const { return 2; }
68002
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
68003
 
  int Access () const { return sons[0]->token ()->type (); }
68004
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
68005
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
68006
 
  }
68007
 
};
68008
 
 
68009
 
} // closed Puma
68010
 
class WinIfExists;
68011
 
class WinImportHandler;
68012
 
class WinMacros;
68013
 
class CMatchSyntax;
68014
 
class ExtGnu;
68015
 
class ExtAC;
68016
 
class ExtACBuilderCoupling;
68017
 
class ExtACSyntaxCoupling;
68018
 
class ExtACTree;
68019
 
class ExtACKeywords;
68020
 
class WinAsm;
68021
 
class WinDeclSpecs;
68022
 
class WinMemberExplSpec;
68023
 
class WinTypeKeywords;
68024
 
class PragmaOnceUnitState;
68025
 
class PragmaOnce;
68026
 
class CCExprResolve;
68027
 
class CExprResolve;
68028
 
namespace Puma {
68029
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
68030
 
  friend class ::WinImportHandler;
68031
 
  friend class ::WinMacros;
68032
 
  friend class ::CMatchSyntax;
68033
 
  friend class ::ExtGnu;
68034
 
  friend class ::ExtAC;
68035
 
  friend class ::ExtACBuilderCoupling;
68036
 
  friend class ::ExtACSyntaxCoupling;
68037
 
  friend class ::ExtACTree;
68038
 
  friend class ::ExtACKeywords;
68039
 
  friend class ::WinAsm;
68040
 
  friend class ::WinDeclSpecs;
68041
 
  friend class ::WinMemberExplSpec;
68042
 
  friend class ::WinTypeKeywords;
68043
 
  friend class ::PragmaOnceUnitState;
68044
 
  friend class ::PragmaOnce;
68045
 
  friend class ::CCExprResolve;
68046
 
  friend class ::CExprResolve;
68047
 
 
68048
 
  CTree *sons[3]; // virtual, access, name
68049
 
 
68050
 
public:
68051
 
  CT_BaseSpec (CTree *v, CTree *a, CTree *n) {
68052
 
    sons[0] = v; sons[1] = a; sons[2] = n; 
68053
 
  }
68054
 
  static const char *NodeId ();
68055
 
  const char *NodeName () const { return NodeId (); }
68056
 
  int Sons () const { return CTree::Sons (sons, 3); }
68057
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
68058
 
  int Access () const { return sons[1]->token ()->type (); }
68059
 
  CTree *AccessSpec () const { return sons[1]; }
68060
 
  CTree *Virtual () const { return sons[0]; }
68061
 
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[2]; }
68062
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
68063
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
68064
 
  }
68065
 
};
68066
 
 
68067
 
} // closed Puma
68068
 
class WinIfExists;
68069
 
class WinImportHandler;
68070
 
class WinMacros;
68071
 
class CMatchSyntax;
68072
 
class ExtGnu;
68073
 
class ExtAC;
68074
 
class ExtACBuilderCoupling;
68075
 
class ExtACSyntaxCoupling;
68076
 
class ExtACTree;
68077
 
class ExtACKeywords;
68078
 
class WinAsm;
68079
 
class WinDeclSpecs;
68080
 
class WinMemberExplSpec;
68081
 
class WinTypeKeywords;
68082
 
class PragmaOnceUnitState;
68083
 
class PragmaOnce;
68084
 
class CCExprResolve;
68085
 
class CExprResolve;
68086
 
namespace Puma {
68087
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
68088
 
  friend class ::WinImportHandler;
68089
 
  friend class ::WinMacros;
68090
 
  friend class ::CMatchSyntax;
68091
 
  friend class ::ExtGnu;
68092
 
  friend class ::ExtAC;
68093
 
  friend class ::ExtACBuilderCoupling;
68094
 
  friend class ::ExtACSyntaxCoupling;
68095
 
  friend class ::ExtACTree;
68096
 
  friend class ::ExtACKeywords;
68097
 
  friend class ::WinAsm;
68098
 
  friend class ::WinDeclSpecs;
68099
 
  friend class ::WinMemberExplSpec;
68100
 
  friend class ::WinTypeKeywords;
68101
 
  friend class ::PragmaOnceUnitState;
68102
 
  friend class ::PragmaOnce;
68103
 
  friend class ::CCExprResolve;
68104
 
  friend class ::CExprResolve;
68105
 
 
68106
 
  CTree *sons[2]; // name, semi_colon
68107
 
 
68108
 
public:
68109
 
  CT_AccessDecl (CTree *n, CTree *s) { sons[0] = n; sons[1] = s; }
68110
 
  static const char *NodeId ();
68111
 
  const char *NodeName () const { return NodeId (); }
68112
 
  int Sons () const { return 2; }
68113
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
68114
 
  CT_QualName *Member () const { return (CT_QualName*)sons[0]; }
68115
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
68116
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
68117
 
  }
68118
 
};
68119
 
 
68120
 
} // closed Puma
68121
 
class WinIfExists;
68122
 
class WinImportHandler;
68123
 
class WinMacros;
68124
 
class CMatchSyntax;
68125
 
class ExtGnu;
68126
 
class ExtAC;
68127
 
class ExtACBuilderCoupling;
68128
 
class ExtACSyntaxCoupling;
68129
 
class ExtACTree;
68130
 
class ExtACKeywords;
68131
 
class WinAsm;
68132
 
class WinDeclSpecs;
68133
 
class WinMemberExplSpec;
68134
 
class WinTypeKeywords;
68135
 
class PragmaOnceUnitState;
68136
 
class PragmaOnce;
68137
 
class CCExprResolve;
68138
 
class CExprResolve;
68139
 
namespace Puma {
68140
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
68141
 
  friend class ::WinImportHandler;
68142
 
  friend class ::WinMacros;
68143
 
  friend class ::CMatchSyntax;
68144
 
  friend class ::ExtGnu;
68145
 
  friend class ::ExtAC;
68146
 
  friend class ::ExtACBuilderCoupling;
68147
 
  friend class ::ExtACSyntaxCoupling;
68148
 
  friend class ::ExtACTree;
68149
 
  friend class ::ExtACKeywords;
68150
 
  friend class ::WinAsm;
68151
 
  friend class ::WinDeclSpecs;
68152
 
  friend class ::WinMemberExplSpec;
68153
 
  friend class ::WinTypeKeywords;
68154
 
  friend class ::PragmaOnceUnitState;
68155
 
  friend class ::PragmaOnce;
68156
 
  friend class ::CCExprResolve;
68157
 
  friend class ::CExprResolve;
68158
 
 
68159
 
  CTree *sons[2]; // using, typename
68160
 
 
68161
 
public:
68162
 
  CT_UsingDecl (CTree *u, CTree *n, CTree *s) : CT_AccessDecl (n, s) {
68163
 
    sons[0] = u; sons[1] = 0; 
68164
 
  }
68165
 
  CT_UsingDecl (CTree *u, CTree *t, CTree *n, CTree *s) : CT_AccessDecl (n, s) {
68166
 
    sons[0] = u; sons[1] = t; 
68167
 
  }
68168
 
  static const char *NodeId ();
68169
 
  const char *NodeName () const { return NodeId (); }
68170
 
  int Sons () const { return CTree::Sons (sons, 2) + CT_AccessDecl::Sons (); }
68171
 
  CTree *Son (int n) const {
68172
 
    int num = CTree::Sons (sons, 2);
68173
 
    CTree *result = CTree::Son (sons, 2, n);
68174
 
    return result ? result : CT_AccessDecl::Son (n-num);
68175
 
  }
68176
 
  CTree *Typename () const { return sons[1]; }
68177
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
68178
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
68179
 
    CT_AccessDecl::ReplaceSon (old_son, new_son);
68180
 
  }
68181
 
};
68182
 
 
68183
 
/*****************************************************************************/
68184
 
/*                                                                           */
68185
 
/*                              Wildcards                                    */
68186
 
/*                                                                           */
68187
 
/*****************************************************************************/
68188
 
 
68189
 
} // closed Puma
68190
 
class WinIfExists;
68191
 
class WinImportHandler;
68192
 
class WinMacros;
68193
 
class CMatchSyntax;
68194
 
class ExtGnu;
68195
 
class ExtAC;
68196
 
class ExtACBuilderCoupling;
68197
 
class ExtACSyntaxCoupling;
68198
 
class ExtACTree;
68199
 
class ExtACKeywords;
68200
 
class WinAsm;
68201
 
class WinDeclSpecs;
68202
 
class WinMemberExplSpec;
68203
 
class WinTypeKeywords;
68204
 
class PragmaOnceUnitState;
68205
 
class PragmaOnce;
68206
 
class CCExprResolve;
68207
 
class CExprResolve;
68208
 
namespace Puma {
68209
 
class CT_Any : public CTree {  friend class ::WinIfExists;
68210
 
  friend class ::WinImportHandler;
68211
 
  friend class ::WinMacros;
68212
 
  friend class ::CMatchSyntax;
68213
 
  friend class ::ExtGnu;
68214
 
  friend class ::ExtAC;
68215
 
  friend class ::ExtACBuilderCoupling;
68216
 
  friend class ::ExtACSyntaxCoupling;
68217
 
  friend class ::ExtACTree;
68218
 
  friend class ::ExtACKeywords;
68219
 
  friend class ::WinAsm;
68220
 
  friend class ::WinDeclSpecs;
68221
 
  friend class ::WinMemberExplSpec;
68222
 
  friend class ::WinTypeKeywords;
68223
 
  friend class ::PragmaOnceUnitState;
68224
 
  friend class ::PragmaOnce;
68225
 
  friend class ::CCExprResolve;
68226
 
  friend class ::CExprResolve;
68227
 
 
68228
 
  CTree *sons[2]; // keyword, extension
68229
 
 
68230
 
public:
68231
 
  CT_Any (CTree *k, CTree *e = (CTree*)0) { sons[0] = k; sons[1] = e; }
68232
 
  static const char *NodeId ();
68233
 
  const char *NodeName () const { return NodeId (); }
68234
 
  int Sons () const { return CTree::Sons (sons, 2); }
68235
 
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
68236
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
68237
 
    CTree::ReplaceSon (sons, 2, old_son, new_son);
68238
 
  }
68239
 
  int AnyType () const { return sons[0]->token ()->type (); }
68240
 
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
68241
 
};
68242
 
 
68243
 
} // closed Puma
68244
 
class WinIfExists;
68245
 
class WinImportHandler;
68246
 
class WinMacros;
68247
 
class CMatchSyntax;
68248
 
class ExtGnu;
68249
 
class ExtAC;
68250
 
class ExtACBuilderCoupling;
68251
 
class ExtACSyntaxCoupling;
68252
 
class ExtACTree;
68253
 
class ExtACKeywords;
68254
 
class WinAsm;
68255
 
class WinDeclSpecs;
68256
 
class WinMemberExplSpec;
68257
 
class WinTypeKeywords;
68258
 
class PragmaOnceUnitState;
68259
 
class PragmaOnce;
68260
 
class CCExprResolve;
68261
 
class CExprResolve;
68262
 
namespace Puma {
68263
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
68264
 
  friend class ::WinImportHandler;
68265
 
  friend class ::WinMacros;
68266
 
  friend class ::CMatchSyntax;
68267
 
  friend class ::ExtGnu;
68268
 
  friend class ::ExtAC;
68269
 
  friend class ::ExtACBuilderCoupling;
68270
 
  friend class ::ExtACSyntaxCoupling;
68271
 
  friend class ::ExtACTree;
68272
 
  friend class ::ExtACKeywords;
68273
 
  friend class ::WinAsm;
68274
 
  friend class ::WinDeclSpecs;
68275
 
  friend class ::WinMemberExplSpec;
68276
 
  friend class ::WinTypeKeywords;
68277
 
  friend class ::PragmaOnceUnitState;
68278
 
  friend class ::PragmaOnce;
68279
 
  friend class ::CCExprResolve;
68280
 
  friend class ::CExprResolve;
68281
 
 
68282
 
public:
68283
 
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
68284
 
  static const char *NodeId ();
68285
 
  const char *NodeName () const { return NodeId (); }
68286
 
};
68287
 
 
68288
 
} // closed Puma
68289
 
class WinIfExists;
68290
 
class WinImportHandler;
68291
 
class WinMacros;
68292
 
class CMatchSyntax;
68293
 
class ExtGnu;
68294
 
class ExtAC;
68295
 
class ExtACBuilderCoupling;
68296
 
class ExtACSyntaxCoupling;
68297
 
class ExtACTree;
68298
 
class ExtACKeywords;
68299
 
class WinAsm;
68300
 
class WinDeclSpecs;
68301
 
class WinMemberExplSpec;
68302
 
class WinTypeKeywords;
68303
 
class PragmaOnceUnitState;
68304
 
class PragmaOnce;
68305
 
class CCExprResolve;
68306
 
class CExprResolve;
68307
 
namespace Puma {
68308
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
68309
 
  friend class ::WinImportHandler;
68310
 
  friend class ::WinMacros;
68311
 
  friend class ::CMatchSyntax;
68312
 
  friend class ::ExtGnu;
68313
 
  friend class ::ExtAC;
68314
 
  friend class ::ExtACBuilderCoupling;
68315
 
  friend class ::ExtACSyntaxCoupling;
68316
 
  friend class ::ExtACTree;
68317
 
  friend class ::ExtACKeywords;
68318
 
  friend class ::WinAsm;
68319
 
  friend class ::WinDeclSpecs;
68320
 
  friend class ::WinMemberExplSpec;
68321
 
  friend class ::WinTypeKeywords;
68322
 
  friend class ::PragmaOnceUnitState;
68323
 
  friend class ::PragmaOnce;
68324
 
  friend class ::CCExprResolve;
68325
 
  friend class ::CExprResolve;
68326
 
 
68327
 
  CTree *sons[5]; // open, string, comma, cond, close
68328
 
 
68329
 
public:
68330
 
  CT_AnyExtension (CTree *o, CTree *n, CTree *co, CTree *c, CTree *cr) {
68331
 
    sons[0] = o; sons[1] = n; sons[2] = co; sons[3] = c; sons[4] = cr; 
68332
 
  }
68333
 
  static const char *NodeId ();
68334
 
  const char *NodeName () const { return NodeId (); }
68335
 
  int Sons () const { return CTree::Sons (sons, 5); }
68336
 
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
68337
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
68338
 
    CTree::ReplaceSon (sons, 5, old_son, new_son);
68339
 
  }
68340
 
  CTree *Condition () const { return sons[3]; }
68341
 
  CT_Token *String () const { return (CT_Token*)sons[1]; }
68342
 
  const char *Name () const { 
68343
 
    return value ? value->StrLiteral ()->String () : (const char*)0; }
68344
 
 
68345
 
  CExprValue *Value () const { return value; }
68346
 
  CSemValue *SemValue () const { return (CSemValue*)this; }
68347
 
};
68348
 
 
68349
 
} // closed Puma
68350
 
class WinIfExists;
68351
 
class WinImportHandler;
68352
 
class WinMacros;
68353
 
class CMatchSyntax;
68354
 
class ExtGnu;
68355
 
class ExtAC;
68356
 
class ExtACBuilderCoupling;
68357
 
class ExtACSyntaxCoupling;
68358
 
class ExtACTree;
68359
 
class ExtACKeywords;
68360
 
class WinAsm;
68361
 
class WinDeclSpecs;
68362
 
class WinMemberExplSpec;
68363
 
class WinTypeKeywords;
68364
 
class PragmaOnceUnitState;
68365
 
class PragmaOnce;
68366
 
class CCExprResolve;
68367
 
class CExprResolve;
68368
 
namespace Puma {
68369
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
68370
 
  friend class ::WinImportHandler;
68371
 
  friend class ::WinMacros;
68372
 
  friend class ::CMatchSyntax;
68373
 
  friend class ::ExtGnu;
68374
 
  friend class ::ExtAC;
68375
 
  friend class ::ExtACBuilderCoupling;
68376
 
  friend class ::ExtACSyntaxCoupling;
68377
 
  friend class ::ExtACTree;
68378
 
  friend class ::ExtACKeywords;
68379
 
  friend class ::WinAsm;
68380
 
  friend class ::WinDeclSpecs;
68381
 
  friend class ::WinMemberExplSpec;
68382
 
  friend class ::WinTypeKeywords;
68383
 
  friend class ::PragmaOnceUnitState;
68384
 
  friend class ::PragmaOnce;
68385
 
  friend class ::CCExprResolve;
68386
 
  friend class ::CExprResolve;
68387
 
 
68388
 
  CTree *sons[3]; // arg1, arg2, arg3
68389
 
 
68390
 
public:
68391
 
  CT_AnyCondition (CTree *a1, CTree *a2 = (CTree*)0, CTree *a3 = (CTree*)0) {
68392
 
    sons[0] = a1; sons[1] = a2; sons[2] = a3; 
68393
 
  }
68394
 
  static const char *NodeId ();
68395
 
  const char *NodeName () const { return NodeId (); }
68396
 
  int Sons () const { return CTree::Sons (sons, 3); }
68397
 
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
68398
 
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
68399
 
    CTree::ReplaceSon (sons, 3, old_son, new_son);
68400
 
  }
68401
 
};
68402
 
 
68403
 
 
68404
 
} // namespace Puma
68405
 
 
68406
 
#endif /* __CTree_h__ */
68407
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
68408
 
namespace Puma {
68409
 
 
68410
 
 
68411
 
} // closed Puma
68412
 
class WinIfExists;
68413
 
class WinImportHandler;
68414
 
class WinMacros;
68415
 
class CMatchSyntax;
68416
 
class ExtGnu;
68417
 
class ExtAC;
68418
 
class ExtACBuilderCoupling;
68419
 
class ExtACSyntaxCoupling;
68420
 
class ExtACTree;
68421
 
class ExtACKeywords;
68422
 
class WinAsm;
68423
 
class WinDeclSpecs;
68424
 
class WinMemberExplSpec;
68425
 
class WinTypeKeywords;
68426
 
class PragmaOnceUnitState;
68427
 
class PragmaOnce;
68428
 
class CCExprResolve;
68429
 
class CExprResolve;
68430
 
namespace Puma {
68431
 
class CT_AsmBlock : public CT_Statement {  friend class ::WinIfExists;
68432
 
  friend class ::WinImportHandler;
68433
 
  friend class ::WinMacros;
68434
 
  friend class ::CMatchSyntax;
68435
 
  friend class ::ExtGnu;
68436
 
  friend class ::ExtAC;
68437
 
  friend class ::ExtACBuilderCoupling;
68438
 
  friend class ::ExtACSyntaxCoupling;
68439
 
  friend class ::ExtACTree;
68440
 
  friend class ::ExtACKeywords;
68441
 
  friend class ::WinAsm;
68442
 
  friend class ::WinDeclSpecs;
68443
 
  friend class ::WinMemberExplSpec;
68444
 
  friend class ::WinTypeKeywords;
68445
 
  friend class ::PragmaOnceUnitState;
68446
 
  friend class ::PragmaOnce;
68447
 
  friend class ::CCExprResolve;
68448
 
  friend class ::CExprResolve;
68449
 
 
68450
 
  CTree *_key;
68451
 
  CTree *_begin;
68452
 
  CTree *_end;
68453
 
 
68454
 
public:
68455
 
  CT_AsmBlock (CTree *k, CTree *b, CTree *e) :
68456
 
    _key (k), _begin (b), _end (e) {}
68457
 
  static const char *NodeId ();
68458
 
  const char *NodeName () const { return NodeId (); }  
68459
 
  virtual int Sons () const { return 3; }
68460
 
  virtual CTree *Son (int n) const {
68461
 
    switch (n) {
68462
 
      case 0: return _key;
68463
 
      case 1: return _begin;
68464
 
      case 2: return _end;
68465
 
      default: return (CTree*)0;
68466
 
    }
68467
 
  }
68468
 
  virtual void ReplaceSon (CTree *old_son, CTree *new_son) {
68469
 
    if (old_son == _key) _key = new_son;
68470
 
    else if (old_son == _begin) _begin = new_son;
68471
 
    else if (old_son == _end) _end = new_son;
68472
 
  }
68473
 
};
68474
 
 
68475
 
 
68476
 
} // namespace Puma
68477
 
 
68478
 
#endif /* __win_c_tree_h__ */
68479
 
namespace Puma {
68480
 
  class CCSyntax;
68481
 
  class CCBuilder;
68482
 
} // namespace Puma
68483
 
 
68484
 
 
68485
 
using namespace Puma;
68486
 
 
68487
 
namespace Puma {
68488
 
  
68489
 
  
68490
 
}
68491
 
 
68492
 
class WinIfExists;
68493
 
class WinImportHandler;
68494
 
class WinMacros;
68495
 
class CMatchSyntax;
68496
 
class ExtGnu;
68497
 
class ExtAC;
68498
 
class ExtACBuilderCoupling;
68499
 
class ExtACSyntaxCoupling;
68500
 
class ExtACTree;
68501
 
class ExtACKeywords;
68502
 
class WinDeclSpecs;
68503
 
class WinMemberExplSpec;
68504
 
class WinTypeKeywords;
68505
 
class PragmaOnceUnitState;
68506
 
class PragmaOnce;
68507
 
class CCExprResolve;
68508
 
class CExprResolve;
68509
 
class WinAsm {
68510
 
public:
68511
 
  static WinAsm *aspectof () {
68512
 
    static WinAsm __instance;
68513
 
    return &__instance;
68514
 
  }
68515
 
  static WinAsm *aspectOf () {
68516
 
    return aspectof ();
68517
 
  }
68518
 
private:
68519
 
  friend class ::WinIfExists;
68520
 
  friend class ::WinImportHandler;
68521
 
  friend class ::WinMacros;
68522
 
  friend class ::CMatchSyntax;
68523
 
  friend class ::ExtGnu;
68524
 
  friend class ::ExtAC;
68525
 
  friend class ::ExtACBuilderCoupling;
68526
 
  friend class ::ExtACSyntaxCoupling;
68527
 
  friend class ::ExtACTree;
68528
 
  friend class ::ExtACKeywords;
68529
 
  friend class ::WinDeclSpecs;
68530
 
  friend class ::WinMemberExplSpec;
68531
 
  friend class ::WinTypeKeywords;
68532
 
  friend class ::PragmaOnceUnitState;
68533
 
  friend class ::PragmaOnce;
68534
 
  friend class ::CCExprResolve;
68535
 
  friend class ::CExprResolve;
68536
 
 
68537
 
  /********************************************************/
68538
 
  /* Visual C++ asm statement                             */
68539
 
  /********************************************************/
68540
 
 
68541
 
  // pointcut definitions
68542
 
  
68543
 
  
68544
 
 
68545
 
  // extend the builder
68546
 
  
68547
 
 
68548
 
  // add rules to the syntax
68549
 
  
68550
 
 
68551
 
  // let first parse asm_block() and then stmt() if failed
68552
 
  
68553
 
public: template<class JoinPoint> void __a0_after (JoinPoint *tjp) {
68554
 
  JoinPoint *&thisJoinPoint = tjp;
68555
 
 
68556
 
  typedef typename JoinPoint::That __JP_That;
68557
 
  typedef typename JoinPoint::Target __JP_Target;
68558
 
  typedef typename JoinPoint::Result __JP_Result;
68559
 
 
68560
 
    CTree *&result = *(CTree**)thisJoinPoint->result ();
68561
 
    if (!result && tjp->that ()->asm_block ())
68562
 
      result = thisJoinPoint->that ()->builder().stmt ();
68563
 
  }
68564
 
private:
68565
 
 
68566
 
 
68567
 
protected:
68568
 
  WinAsm () {}
68569
 
};
68570
 
namespace AC {
68571
 
  template <class JoinPoint>
68572
 
  inline void invoke_WinAsm_WinAsm_a0_after (JoinPoint *tjp) {
68573
 
    ::WinAsm::aspectof()->__a0_after (tjp);
68574
 
  }
68575
 
68576
 
 
68577
 
 
68578
 
 
68579
 
 
68580
 
 
68581
 
 
68582
 
 
68583
 
 
68584
 
 
68585
 
 
68586
 
 
68587
 
 
68588
 
 
68589
 
#endif /* __WinAsm__ */
 
71252
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__
 
71253
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__
 
71254
#endif
 
71255
 
 
71256
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
 
71257
 
 
71258
#line 71259 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71259
 
 
71260
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68590
71261
// This file is part of PUMA.
68591
71262
// Copyright (C) 1999-2003  The PUMA developer team.
68592
71263
//                                                                
68608
71279
#ifndef __CMatchSyntax_ah__
68609
71280
#define __CMatchSyntax_ah__
68610
71281
 
 
71282
 
 
71283
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CWildcardTokens.h"
68611
71284
// This file is part of PUMA.
68612
71285
// Copyright (C) 1999-2003  The PUMA developer team.
68613
71286
//                                                                
68701
71374
} // namespace Puma
68702
71375
 
68703
71376
#endif /* __WILDCARD_TOKENS__ */
 
71377
 
 
71378
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68704
71379
namespace Puma {
68705
71380
  class CSyntax;
68706
71381
  class CCSyntax;
68721
71396
 
68722
71397
namespace Puma {
68723
71398
  
68724
 
  
68725
 
  
 
71399
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71400
 
 
71401
  
 
71402
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71403
 
 
71404
  
 
71405
#line 49 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71406
 
68726
71407
}
68727
71408
 
 
71409
 
 
71410
#line 71411 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
68728
71411
class WinIfExists;
68729
71412
class WinImportHandler;
68730
71413
class WinMacros;
68742
71425
class PragmaOnce;
68743
71426
class CCExprResolve;
68744
71427
class CExprResolve;
 
71428
 
 
71429
#line 52 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68745
71430
class CMatchSyntax {
 
71431
#line 71432 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71432
 
68746
71433
public:
68747
71434
  static CMatchSyntax *aspectof () {
68748
71435
    static CMatchSyntax __instance;
68752
71439
    return aspectof ();
68753
71440
  }
68754
71441
private:
 
71442
 
 
71443
#line 52 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71444
 
 
71445
#line 71446 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
68755
71446
  friend class ::WinIfExists;
68756
71447
  friend class ::WinImportHandler;
68757
71448
  friend class ::WinMacros;
68770
71461
  friend class ::CCExprResolve;
68771
71462
  friend class ::CExprResolve;
68772
71463
 
68773
 
  
68774
 
    
68775
 
  
68776
 
  
 
71464
#line 52 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71465
 
 
71466
  
 
71467
#line 53 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71468
 
 
71469
  
 
71470
#line 54 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71471
  
 
71472
  
 
71473
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71474
 
 
71475
  
 
71476
#line 56 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71477
 
68777
71478
 
68778
71479
protected:
68779
71480
  // flag to enable/disable parsing match expressions
68784
71485
  
68785
71486
  // introduce wildcard rules to CSyntax and CCSyntax
68786
71487
  
 
71488
#line 66 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71489
 
68787
71490
  
 
71491
#line 67 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71492
 
68788
71493
 
68789
71494
  // extend CBuilder
68790
71495
  
 
71496
#line 70 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71497
 
68791
71498
 
68792
71499
  // extend CSemantic
68793
71500
  
 
71501
#line 85 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71502
 
68794
71503
 
68795
71504
  // let first parse wildcards before parsing anything else
68796
71505
  
68797
 
public: template<class JoinPoint> void __a0_around (JoinPoint *tjp) {
 
71506
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71507
 
 
71508
public: template<class JoinPoint> void __a0_around 
 
71509
#line 89 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71510
 
 
71511
#line 89 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71512
(JoinPoint *tjp)
 
71513
#line 89 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71514
 {
 
71515
#line 71516 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71516
 
68798
71517
  JoinPoint *&thisJoinPoint = tjp;
68799
71518
 
 
71519
#line 89 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71520
 
 
71521
#line 71522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71522
 
68800
71523
  typedef typename JoinPoint::That __JP_That;
68801
71524
  typedef typename JoinPoint::Target __JP_Target;
68802
71525
  typedef typename JoinPoint::Result __JP_Result;
 
71526
 
 
71527
#line 89 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68803
71528
 
68804
71529
    if (match_expr &&
68805
 
        thisJoinPoint->that ()->parse (&__JP_That::wildcards)) 
 
71530
        thisJoinPoint->that ()->parse (&__JP_That
 
71531
#line 91 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71532
::wildcards)) 
68806
71533
      *(CTree**)thisJoinPoint->result () = 
68807
71534
        thisJoinPoint->that ()->builder ().get_node (); 
68808
71535
    else 
68809
71536
      thisJoinPoint->action ().trigger (); 
68810
71537
  }
 
71538
#line 71539 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71539
 
68811
71540
protected:
68812
71541
 
 
71542
#line 96 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71543
 
68813
71544
 
68814
71545
  // extend the syntax to parse ANYs
68815
71546
 
68816
71547
  
68817
 
public: template<class JoinPoint> void __a1_around (JoinPoint *tjp) {
 
71548
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71549
 
 
71550
public: template<class JoinPoint> void __a1_around 
 
71551
#line 101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71552
 
 
71553
#line 101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71554
(JoinPoint *tjp)
 
71555
#line 101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71556
 {
 
71557
#line 71558 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71558
 
68818
71559
  JoinPoint *&thisJoinPoint = tjp;
68819
71560
 
 
71561
#line 101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71562
 
 
71563
#line 71564 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71564
 
68820
71565
  typedef typename JoinPoint::That __JP_That;
68821
71566
  typedef typename JoinPoint::Target __JP_Target;
68822
71567
  typedef typename JoinPoint::Result __JP_Result;
 
71568
 
 
71569
#line 101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68823
71570
 
68824
71571
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_EXPR)) {
68825
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71572
      thisJoinPoint->that ()->parse (&__JP_That
 
71573
#line 103 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71574
::wc_extension); 
68826
71575
      *(CTree**)thisJoinPoint->result () = 
68827
71576
        thisJoinPoint->that ()->builder ().any (); 
68828
71577
    } else 
68829
71578
      thisJoinPoint->action ().trigger (); 
68830
71579
  }
 
71580
#line 71581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71581
 
68831
71582
protected:
68832
71583
 
 
71584
#line 108 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71585
 
68833
71586
 
68834
71587
  
68835
 
public: template<class JoinPoint> void __a2_around (JoinPoint *tjp) {
 
71588
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71589
 
 
71590
public: template<class JoinPoint> void __a2_around 
 
71591
#line 111 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71592
 
 
71593
#line 111 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71594
(JoinPoint *tjp)
 
71595
#line 111 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71596
 {
 
71597
#line 71598 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71598
 
68836
71599
  JoinPoint *&thisJoinPoint = tjp;
68837
71600
 
 
71601
#line 111 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71602
 
 
71603
#line 71604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71604
 
68838
71605
  typedef typename JoinPoint::That __JP_That;
68839
71606
  typedef typename JoinPoint::Target __JP_Target;
68840
71607
  typedef typename JoinPoint::Result __JP_Result;
 
71608
 
 
71609
#line 111 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68841
71610
 
68842
71611
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_EXPR_LIST)) {
68843
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71612
      thisJoinPoint->that ()->parse (&__JP_That
 
71613
#line 113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71614
::wc_extension); 
68844
71615
      *(CTree**)thisJoinPoint->result () = 
68845
71616
        thisJoinPoint->that ()->builder ().any_list (); 
68846
71617
    } else 
68847
71618
      thisJoinPoint->action ().trigger (); 
68848
71619
  }
 
71620
#line 71621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71621
 
68849
71622
protected:
68850
71623
 
 
71624
#line 118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71625
 
68851
71626
 
68852
71627
  
68853
 
public: template<class JoinPoint> void __a3_around (JoinPoint *tjp) {
 
71628
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71629
 
 
71630
public: template<class JoinPoint> void __a3_around 
 
71631
#line 121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71632
 
 
71633
#line 121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71634
(JoinPoint *tjp)
 
71635
#line 121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71636
 {
 
71637
#line 71638 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71638
 
68854
71639
  JoinPoint *&thisJoinPoint = tjp;
68855
71640
 
 
71641
#line 121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71642
 
 
71643
#line 71644 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71644
 
68856
71645
  typedef typename JoinPoint::That __JP_That;
68857
71646
  typedef typename JoinPoint::Target __JP_Target;
68858
71647
  typedef typename JoinPoint::Result __JP_Result;
 
71648
 
 
71649
#line 121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68859
71650
 
68860
71651
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_ID_EXPR)) {
68861
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71652
      thisJoinPoint->that ()->parse (&__JP_That
 
71653
#line 123 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71654
::wc_extension); 
68862
71655
      *(CTree**)thisJoinPoint->result () = 
68863
71656
        thisJoinPoint->that ()->builder ().any (); 
68864
71657
    } else 
68865
71658
      thisJoinPoint->action ().trigger (); 
68866
71659
  }
 
71660
#line 71661 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71661
 
68867
71662
protected:
68868
71663
 
 
71664
#line 128 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71665
 
68869
71666
 
68870
71667
  
68871
 
public: template<class JoinPoint> void __a4_around (JoinPoint *tjp) {
 
71668
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71669
 
 
71670
public: template<class JoinPoint> void __a4_around 
 
71671
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71672
 
 
71673
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71674
(JoinPoint *tjp)
 
71675
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71676
 {
 
71677
#line 71678 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71678
 
68872
71679
  JoinPoint *&thisJoinPoint = tjp;
68873
71680
 
 
71681
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71682
 
 
71683
#line 71684 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71684
 
68874
71685
  typedef typename JoinPoint::That __JP_That;
68875
71686
  typedef typename JoinPoint::Target __JP_Target;
68876
71687
  typedef typename JoinPoint::Result __JP_Result;
 
71688
 
 
71689
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68877
71690
 
68878
71691
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_IDENTIFIER)) {
68879
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71692
      thisJoinPoint->that ()->parse (&__JP_That
 
71693
#line 133 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71694
::wc_extension); 
68880
71695
      *(CTree**)thisJoinPoint->result () = 
68881
71696
        thisJoinPoint->that ()->builder ().any (); 
68882
71697
    } else 
68883
71698
      thisJoinPoint->action ().trigger (); 
68884
71699
  }
 
71700
#line 71701 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71701
 
68885
71702
protected:
68886
71703
 
 
71704
#line 138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71705
 
68887
71706
 
68888
71707
  
68889
 
public: template<class JoinPoint> void __a5_after (JoinPoint *tjp) {
 
71708
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71709
 
 
71710
public: template<class JoinPoint> void __a5_after 
 
71711
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71712
 
 
71713
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71714
(JoinPoint *tjp)
 
71715
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71716
 {
 
71717
#line 71718 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71718
 
68890
71719
  typedef typename JoinPoint::That __JP_That;
68891
71720
  typedef typename JoinPoint::Target __JP_Target;
68892
71721
  typedef typename JoinPoint::Result __JP_Result;
68893
71722
 
 
71723
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71724
 
68894
71725
      tjp->that ()->_decl_spec_1.set (TOK_ANY_DECL_SPEC);
68895
71726
  }
 
71727
#line 71728 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71728
 
68896
71729
protected:
68897
71730
 
68898
 
  
68899
 
  
68900
 
public: template<class JoinPoint> void __a6_after (JoinPoint *tjp) {
 
71731
#line 143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71732
 
 
71733
  
 
71734
  
 
71735
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71736
 
 
71737
public: template<class JoinPoint> void __a6_after 
 
71738
#line 146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71739
 
 
71740
#line 146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71741
(JoinPoint *tjp)
 
71742
#line 146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71743
 {
 
71744
#line 71745 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71745
 
68901
71746
  typedef typename JoinPoint::That __JP_That;
68902
71747
  typedef typename JoinPoint::Target __JP_Target;
68903
71748
  typedef typename JoinPoint::Result __JP_Result;
 
71749
 
 
71750
#line 146 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68904
71751
 
68905
71752
    CTree *&result = *(CTree**)tjp->result ();
68906
71753
    if (match_expr && !result &&
68907
71754
        tjp->that ()->parse (TOK_ANY_DECL_SPEC) &&
68908
 
        tjp->that ()->parse (&__JP_That::wc_extension)) {
 
71755
        tjp->that ()->parse (&__JP_That
 
71756
#line 150 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71757
::wc_extension)) {
68909
71758
      result = tjp->that ()->builder().any ();
68910
71759
    }
68911
71760
  }
 
71761
#line 71762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71762
 
68912
71763
protected:
68913
71764
 
 
71765
#line 153 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71766
 
68914
71767
 
68915
71768
  
68916
 
public: template<class JoinPoint> void __a7_around (JoinPoint *tjp) {
 
71769
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71770
 
 
71771
public: template<class JoinPoint> void __a7_around 
 
71772
#line 156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71773
 
 
71774
#line 156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71775
(JoinPoint *tjp)
 
71776
#line 156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71777
 {
 
71778
#line 71779 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71779
 
68917
71780
  JoinPoint *&thisJoinPoint = tjp;
68918
71781
 
 
71782
#line 156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71783
 
 
71784
#line 71785 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71785
 
68919
71786
  typedef typename JoinPoint::That __JP_That;
68920
71787
  typedef typename JoinPoint::Target __JP_Target;
68921
71788
  typedef typename JoinPoint::Result __JP_Result;
 
71789
 
 
71790
#line 156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68922
71791
 
68923
71792
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_DECL_SPEC_SEQ)) {
68924
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71793
      thisJoinPoint->that ()->parse (&__JP_That
 
71794
#line 158 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71795
::wc_extension); 
68925
71796
      *(CTree**)thisJoinPoint->result () = 
68926
71797
        thisJoinPoint->that ()->builder ().any_list (); 
68927
71798
    } else 
68928
71799
      thisJoinPoint->action ().trigger (); 
68929
71800
  }
 
71801
#line 71802 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71802
 
68930
71803
protected:
68931
71804
 
 
71805
#line 163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71806
 
68932
71807
 
68933
71808
  
68934
 
public: template<class JoinPoint> void __a8_around (JoinPoint *tjp) {
 
71809
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71810
 
 
71811
public: template<class JoinPoint> void __a8_around 
 
71812
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71813
 
 
71814
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71815
(JoinPoint *tjp)
 
71816
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71817
 {
 
71818
#line 71819 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71819
 
68935
71820
  JoinPoint *&thisJoinPoint = tjp;
68936
71821
 
 
71822
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71823
 
 
71824
#line 71825 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71825
 
68937
71826
  typedef typename JoinPoint::That __JP_That;
68938
71827
  typedef typename JoinPoint::Target __JP_Target;
68939
71828
  typedef typename JoinPoint::Result __JP_Result;
 
71829
 
 
71830
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68940
71831
 
68941
71832
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_INIT_DECLARATOR_LIST)) {
68942
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71833
      thisJoinPoint->that ()->parse (&__JP_That
 
71834
#line 168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71835
::wc_extension); 
68943
71836
      *(CTree**)thisJoinPoint->result () = 
68944
71837
        thisJoinPoint->that ()->builder ().any_list (); 
68945
71838
    } else 
68946
71839
      thisJoinPoint->action ().trigger (); 
68947
71840
  }
 
71841
#line 71842 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71842
 
68948
71843
protected:
68949
71844
 
 
71845
#line 173 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71846
 
68950
71847
 
68951
71848
  
68952
 
public: template<class JoinPoint> void __a9_around (JoinPoint *tjp) {
 
71849
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71850
 
 
71851
public: template<class JoinPoint> void __a9_around 
 
71852
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71853
 
 
71854
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71855
(JoinPoint *tjp)
 
71856
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71857
 {
 
71858
#line 71859 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71859
 
68953
71860
  JoinPoint *&thisJoinPoint = tjp;
68954
71861
 
 
71862
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71863
 
 
71864
#line 71865 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71865
 
68955
71866
  typedef typename JoinPoint::That __JP_That;
68956
71867
  typedef typename JoinPoint::Target __JP_Target;
68957
71868
  typedef typename JoinPoint::Result __JP_Result;
 
71869
 
 
71870
#line 176 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68958
71871
 
68959
71872
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_INIT_DECLARATOR)) {
68960
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71873
      thisJoinPoint->that ()->parse (&__JP_That
 
71874
#line 178 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71875
::wc_extension); 
68961
71876
      *(CTree**)thisJoinPoint->result () = 
68962
71877
        thisJoinPoint->that ()->builder ().any (); 
68963
71878
    } else 
68964
71879
      thisJoinPoint->action ().trigger (); 
68965
71880
  }
 
71881
#line 71882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71882
 
68966
71883
protected:
68967
71884
 
 
71885
#line 183 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71886
 
68968
71887
 
68969
71888
  
68970
 
public: template<class JoinPoint> void __a10_around (JoinPoint *tjp) {
 
71889
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71890
 
 
71891
public: template<class JoinPoint> void __a10_around 
 
71892
#line 186 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71893
 
 
71894
#line 186 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71895
(JoinPoint *tjp)
 
71896
#line 186 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71897
 {
 
71898
#line 71899 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71899
 
68971
71900
  JoinPoint *&thisJoinPoint = tjp;
68972
71901
 
 
71902
#line 186 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71903
 
 
71904
#line 71905 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71905
 
68973
71906
  typedef typename JoinPoint::That __JP_That;
68974
71907
  typedef typename JoinPoint::Target __JP_Target;
68975
71908
  typedef typename JoinPoint::Result __JP_Result;
 
71909
 
 
71910
#line 186 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68976
71911
 
68977
71912
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_DECLARATOR)) {
68978
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71913
      thisJoinPoint->that ()->parse (&__JP_That
 
71914
#line 188 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71915
::wc_extension); 
68979
71916
      *(CTree**)thisJoinPoint->result () = 
68980
71917
        thisJoinPoint->that ()->builder ().any (); 
68981
71918
    } else 
68982
71919
      thisJoinPoint->action ().trigger (); 
68983
71920
  }
 
71921
#line 71922 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71922
 
68984
71923
protected:
68985
71924
 
 
71925
#line 193 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71926
 
68986
71927
 
68987
71928
  
68988
 
public: template<class JoinPoint> void __a11_around (JoinPoint *tjp) {
 
71929
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71930
 
 
71931
public: template<class JoinPoint> void __a11_around 
 
71932
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71933
 
 
71934
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71935
(JoinPoint *tjp)
 
71936
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71937
 {
 
71938
#line 71939 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71939
 
68989
71940
  JoinPoint *&thisJoinPoint = tjp;
68990
71941
 
 
71942
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71943
 
 
71944
#line 71945 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71945
 
68991
71946
  typedef typename JoinPoint::That __JP_That;
68992
71947
  typedef typename JoinPoint::Target __JP_Target;
68993
71948
  typedef typename JoinPoint::Result __JP_Result;
 
71949
 
 
71950
#line 196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
68994
71951
 
68995
71952
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_INIT)) {
68996
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71953
      thisJoinPoint->that ()->parse (&__JP_That
 
71954
#line 198 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71955
::wc_extension); 
68997
71956
      *(CTree**)thisJoinPoint->result () = 
68998
71957
        thisJoinPoint->that ()->builder ().any (); 
68999
71958
    } else 
69000
71959
      thisJoinPoint->action ().trigger (); 
69001
71960
  }
 
71961
#line 71962 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71962
 
69002
71963
protected:
69003
71964
 
 
71965
#line 203 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71966
 
69004
71967
 
69005
71968
  
69006
 
public: template<class JoinPoint> void __a12_around (JoinPoint *tjp) {
 
71969
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71970
 
 
71971
public: template<class JoinPoint> void __a12_around 
 
71972
#line 206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71973
 
 
71974
#line 206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71975
(JoinPoint *tjp)
 
71976
#line 206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71977
 {
 
71978
#line 71979 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71979
 
69007
71980
  JoinPoint *&thisJoinPoint = tjp;
69008
71981
 
 
71982
#line 206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71983
 
 
71984
#line 71985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
71985
 
69009
71986
  typedef typename JoinPoint::That __JP_That;
69010
71987
  typedef typename JoinPoint::Target __JP_Target;
69011
71988
  typedef typename JoinPoint::Result __JP_Result;
 
71989
 
 
71990
#line 206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69012
71991
 
69013
71992
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_ARG_DECL_SEQ)) {
69014
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
71993
      thisJoinPoint->that ()->parse (&__JP_That
 
71994
#line 208 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
71995
::wc_extension); 
69015
71996
      *(CTree**)thisJoinPoint->result () = 
69016
71997
        thisJoinPoint->that ()->builder ().any_list (); 
69017
71998
    } else 
69018
71999
      thisJoinPoint->action ().trigger (); 
69019
72000
  }
 
72001
#line 72002 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72002
 
69020
72003
protected:
69021
72004
 
 
72005
#line 213 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72006
 
69022
72007
 
69023
72008
  
69024
 
public: template<class JoinPoint> void __a13_around (JoinPoint *tjp) {
 
72009
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72010
 
 
72011
public: template<class JoinPoint> void __a13_around 
 
72012
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72013
 
 
72014
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72015
(JoinPoint *tjp)
 
72016
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72017
 {
 
72018
#line 72019 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72019
 
69025
72020
  JoinPoint *&thisJoinPoint = tjp;
69026
72021
 
 
72022
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72023
 
 
72024
#line 72025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72025
 
69027
72026
  typedef typename JoinPoint::That __JP_That;
69028
72027
  typedef typename JoinPoint::Target __JP_Target;
69029
72028
  typedef typename JoinPoint::Result __JP_Result;
 
72029
 
 
72030
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69030
72031
 
69031
72032
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_FCT_BODY)) {
69032
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72033
      thisJoinPoint->that ()->parse (&__JP_That
 
72034
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72035
::wc_extension); 
69033
72036
      *(CTree**)thisJoinPoint->result () = 
69034
72037
        thisJoinPoint->that ()->builder ().any (); 
69035
72038
    } else 
69036
72039
      thisJoinPoint->action ().trigger (); 
69037
72040
  }
 
72041
#line 72042 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72042
 
69038
72043
protected:
69039
72044
 
 
72045
#line 223 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72046
 
69040
72047
 
69041
72048
  
69042
 
public: template<class JoinPoint> void __a14_around (JoinPoint *tjp) {
 
72049
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72050
 
 
72051
public: template<class JoinPoint> void __a14_around 
 
72052
#line 226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72053
 
 
72054
#line 226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72055
(JoinPoint *tjp)
 
72056
#line 226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72057
 {
 
72058
#line 72059 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72059
 
69043
72060
  JoinPoint *&thisJoinPoint = tjp;
69044
72061
 
 
72062
#line 226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72063
 
 
72064
#line 72065 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72065
 
69045
72066
  typedef typename JoinPoint::That __JP_That;
69046
72067
  typedef typename JoinPoint::Target __JP_Target;
69047
72068
  typedef typename JoinPoint::Result __JP_Result;
 
72069
 
 
72070
#line 226 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69048
72071
 
69049
72072
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_CLASS_SPEC)) {
69050
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72073
      thisJoinPoint->that ()->parse (&__JP_That
 
72074
#line 228 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72075
::wc_extension); 
69051
72076
      *(CTree**)thisJoinPoint->result () = 
69052
72077
        thisJoinPoint->that ()->builder ().any (); 
69053
72078
    } else 
69054
72079
      thisJoinPoint->action ().trigger (); 
69055
72080
  }
 
72081
#line 72082 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72082
 
69056
72083
protected:
69057
72084
 
 
72085
#line 233 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72086
 
69058
72087
 
69059
72088
  
69060
 
public: template<class JoinPoint> void __a15_around (JoinPoint *tjp) {
 
72089
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72090
 
 
72091
public: template<class JoinPoint> void __a15_around 
 
72092
#line 236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72093
 
 
72094
#line 236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72095
(JoinPoint *tjp)
 
72096
#line 236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72097
 {
 
72098
#line 72099 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72099
 
69061
72100
  JoinPoint *&thisJoinPoint = tjp;
69062
72101
 
 
72102
#line 236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72103
 
 
72104
#line 72105 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72105
 
69063
72106
  typedef typename JoinPoint::That __JP_That;
69064
72107
  typedef typename JoinPoint::Target __JP_Target;
69065
72108
  typedef typename JoinPoint::Result __JP_Result;
 
72109
 
 
72110
#line 236 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69066
72111
 
69067
72112
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_MEMBER_SPEC)) {
69068
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72113
      thisJoinPoint->that ()->parse (&__JP_That
 
72114
#line 238 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72115
::wc_extension); 
69069
72116
      *(CTree**)thisJoinPoint->result () = 
69070
72117
        thisJoinPoint->that ()->builder ().any_list (); 
69071
72118
    } else 
69072
72119
      thisJoinPoint->action ().trigger (); 
69073
72120
  }
 
72121
#line 72122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72122
 
69074
72123
protected:
69075
72124
 
 
72125
#line 243 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72126
 
69076
72127
 
69077
72128
  
69078
 
public: template<class JoinPoint> void __a16_around (JoinPoint *tjp) {
 
72129
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72130
 
 
72131
public: template<class JoinPoint> void __a16_around 
 
72132
#line 246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72133
 
 
72134
#line 246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72135
(JoinPoint *tjp)
 
72136
#line 246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72137
 {
 
72138
#line 72139 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72139
 
69079
72140
  JoinPoint *&thisJoinPoint = tjp;
69080
72141
 
 
72142
#line 246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72143
 
 
72144
#line 72145 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72145
 
69081
72146
  typedef typename JoinPoint::That __JP_That;
69082
72147
  typedef typename JoinPoint::Target __JP_Target;
69083
72148
  typedef typename JoinPoint::Result __JP_Result;
 
72149
 
 
72150
#line 246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69084
72151
 
69085
72152
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_MEMBER_DECL)) {
69086
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72153
      thisJoinPoint->that ()->parse (&__JP_That
 
72154
#line 248 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72155
::wc_extension); 
69087
72156
      *(CTree**)thisJoinPoint->result () = 
69088
72157
        thisJoinPoint->that ()->builder ().any (); 
69089
72158
    } else 
69090
72159
      thisJoinPoint->action ().trigger (); 
69091
72160
  }
 
72161
#line 72162 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72162
 
69092
72163
protected:
69093
72164
 
 
72165
#line 253 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72166
 
69094
72167
 
69095
72168
  
69096
 
public: template<class JoinPoint> void __a17_around (JoinPoint *tjp) {
 
72169
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72170
 
 
72171
public: template<class JoinPoint> void __a17_around 
 
72172
#line 256 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72173
 
 
72174
#line 256 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72175
(JoinPoint *tjp)
 
72176
#line 256 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72177
 {
 
72178
#line 72179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72179
 
69097
72180
  JoinPoint *&thisJoinPoint = tjp;
69098
72181
 
 
72182
#line 256 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72183
 
 
72184
#line 72185 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72185
 
69099
72186
  typedef typename JoinPoint::That __JP_That;
69100
72187
  typedef typename JoinPoint::Target __JP_Target;
69101
72188
  typedef typename JoinPoint::Result __JP_Result;
 
72189
 
 
72190
#line 256 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69102
72191
 
69103
72192
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_STMT)) {
69104
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72193
      thisJoinPoint->that ()->parse (&__JP_That
 
72194
#line 258 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72195
::wc_extension); 
69105
72196
      *(CTree**)thisJoinPoint->result () = 
69106
72197
        thisJoinPoint->that ()->builder ().any (); 
69107
72198
    } else 
69108
72199
      thisJoinPoint->action ().trigger (); 
69109
72200
  }
 
72201
#line 72202 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72202
 
69110
72203
protected:
69111
72204
 
 
72205
#line 263 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72206
 
69112
72207
 
69113
72208
  
69114
 
public: template<class JoinPoint> void __a18_around (JoinPoint *tjp) {
 
72209
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72210
 
 
72211
public: template<class JoinPoint> void __a18_around 
 
72212
#line 266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72213
 
 
72214
#line 266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72215
(JoinPoint *tjp)
 
72216
#line 266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72217
 {
 
72218
#line 72219 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72219
 
69115
72220
  JoinPoint *&thisJoinPoint = tjp;
69116
72221
 
 
72222
#line 266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72223
 
 
72224
#line 72225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72225
 
69117
72226
  typedef typename JoinPoint::That __JP_That;
69118
72227
  typedef typename JoinPoint::Target __JP_Target;
69119
72228
  typedef typename JoinPoint::Result __JP_Result;
 
72229
 
 
72230
#line 266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69120
72231
 
69121
72232
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_STMT_SEQ)) {
69122
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72233
      thisJoinPoint->that ()->parse (&__JP_That
 
72234
#line 268 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72235
::wc_extension); 
69123
72236
      *(CTree**)thisJoinPoint->result () = 
69124
72237
        thisJoinPoint->that ()->builder ().any_list (); 
69125
72238
    } else 
69126
72239
      thisJoinPoint->action ().trigger (); 
69127
72240
  }
 
72241
#line 72242 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72242
 
69128
72243
protected:
69129
72244
 
 
72245
#line 273 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72246
 
69130
72247
 
69131
72248
  
69132
 
public: template<class JoinPoint> void __a19_around (JoinPoint *tjp) {
 
72249
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72250
 
 
72251
public: template<class JoinPoint> void __a19_around 
 
72252
#line 276 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72253
 
 
72254
#line 276 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72255
(JoinPoint *tjp)
 
72256
#line 276 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72257
 {
 
72258
#line 72259 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72259
 
69133
72260
  JoinPoint *&thisJoinPoint = tjp;
69134
72261
 
 
72262
#line 276 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72263
 
 
72264
#line 72265 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72265
 
69135
72266
  typedef typename JoinPoint::That __JP_That;
69136
72267
  typedef typename JoinPoint::Target __JP_Target;
69137
72268
  typedef typename JoinPoint::Result __JP_Result;
 
72269
 
 
72270
#line 276 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69138
72271
 
69139
72272
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_BASE_CLAUSE)) {
69140
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72273
      thisJoinPoint->that ()->parse (&__JP_That
 
72274
#line 278 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72275
::wc_extension); 
69141
72276
      *(CTree**)thisJoinPoint->result () = 
69142
72277
        thisJoinPoint->that ()->builder ().any_list (); 
69143
72278
    } else 
69144
72279
      thisJoinPoint->action ().trigger (); 
69145
72280
  }
 
72281
#line 72282 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72282
 
69146
72283
protected:
69147
72284
 
 
72285
#line 283 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72286
 
69148
72287
 
69149
72288
  
69150
 
public: template<class JoinPoint> void __a20_around (JoinPoint *tjp) {
 
72289
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72290
 
 
72291
public: template<class JoinPoint> void __a20_around 
 
72292
#line 286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72293
 
 
72294
#line 286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72295
(JoinPoint *tjp)
 
72296
#line 286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72297
 {
 
72298
#line 72299 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72299
 
69151
72300
  JoinPoint *&thisJoinPoint = tjp;
69152
72301
 
 
72302
#line 286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72303
 
 
72304
#line 72305 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72305
 
69153
72306
  typedef typename JoinPoint::That __JP_That;
69154
72307
  typedef typename JoinPoint::Target __JP_Target;
69155
72308
  typedef typename JoinPoint::Result __JP_Result;
 
72309
 
 
72310
#line 286 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69156
72311
 
69157
72312
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_CTOR_INIT)) {
69158
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72313
      thisJoinPoint->that ()->parse (&__JP_That
 
72314
#line 288 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72315
::wc_extension); 
69159
72316
      *(CTree**)thisJoinPoint->result () = 
69160
72317
        thisJoinPoint->that ()->builder ().any (); 
69161
72318
    } else 
69162
72319
      thisJoinPoint->action ().trigger (); 
69163
72320
  }
 
72321
#line 72322 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72322
 
69164
72323
protected:
69165
72324
 
 
72325
#line 293 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72326
 
69166
72327
 
69167
72328
  
69168
 
public: template<class JoinPoint> void __a21_around (JoinPoint *tjp) {
 
72329
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72330
 
 
72331
public: template<class JoinPoint> void __a21_around 
 
72332
#line 296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72333
 
 
72334
#line 296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72335
(JoinPoint *tjp)
 
72336
#line 296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72337
 {
 
72338
#line 72339 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72339
 
69169
72340
  JoinPoint *&thisJoinPoint = tjp;
69170
72341
 
 
72342
#line 296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72343
 
 
72344
#line 72345 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72345
 
69171
72346
  typedef typename JoinPoint::That __JP_That;
69172
72347
  typedef typename JoinPoint::Target __JP_Target;
69173
72348
  typedef typename JoinPoint::Result __JP_Result;
 
72349
 
 
72350
#line 296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69174
72351
 
69175
72352
    if (match_expr && thisJoinPoint->that ()->parse (TOK_ANY_MEM_INIT)) {
69176
 
      thisJoinPoint->that ()->parse (&__JP_That::wc_extension); 
 
72353
      thisJoinPoint->that ()->parse (&__JP_That
 
72354
#line 298 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72355
::wc_extension); 
69177
72356
      *(CTree**)thisJoinPoint->result () = 
69178
72357
        thisJoinPoint->that ()->builder ().any (); 
69179
72358
    } else 
69180
72359
      thisJoinPoint->action ().trigger (); 
69181
72360
  }
 
72361
#line 72362 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72362
 
69182
72363
protected:
69183
72364
 
 
72365
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72366
 
69184
72367
 
69185
72368
  // extend the syntax to be able to parse match trees
69186
72369
 
69187
72370
  
69188
 
public: template<class JoinPoint> void __a22_around (JoinPoint *tjp) {
 
72371
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72372
 
 
72373
public: template<class JoinPoint> void __a22_around 
 
72374
#line 308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72375
 
 
72376
#line 308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72377
(JoinPoint *tjp)
 
72378
#line 308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72379
 {
 
72380
#line 72381 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72381
 
69189
72382
  JoinPoint *&thisJoinPoint = tjp;
69190
72383
 
 
72384
#line 308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72385
 
 
72386
#line 72387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72387
 
69191
72388
  typedef typename JoinPoint::That __JP_That;
69192
72389
  typedef typename JoinPoint::Target __JP_Target;
69193
72390
  typedef typename JoinPoint::Result __JP_Result;
 
72391
 
 
72392
#line 308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69194
72393
 
69195
72394
    if (match_expr && thisJoinPoint->that ()->parse (TOK_IS_TYPEDEF)) {
69196
72395
      *(CTree**)thisJoinPoint->result () = 
69199
72398
    } else 
69200
72399
      thisJoinPoint->action ().trigger (); 
69201
72400
  }
 
72401
#line 72402 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72402
 
69202
72403
protected:
69203
72404
 
 
72405
#line 315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72406
 
69204
72407
 
69205
72408
  
69206
 
public: template<class JoinPoint> void __a23_around (JoinPoint *tjp) {
 
72409
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72410
 
 
72411
public: template<class JoinPoint> void __a23_around 
 
72412
#line 318 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72413
 
 
72414
#line 318 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72415
(JoinPoint *tjp)
 
72416
#line 318 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72417
 {
 
72418
#line 72419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72419
 
69207
72420
  JoinPoint *&thisJoinPoint = tjp;
69208
72421
 
 
72422
#line 318 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72423
 
 
72424
#line 72425 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72425
 
69209
72426
  typedef typename JoinPoint::That __JP_That;
69210
72427
  typedef typename JoinPoint::Target __JP_Target;
69211
72428
  typedef typename JoinPoint::Result __JP_Result;
 
72429
 
 
72430
#line 318 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69212
72431
 
69213
72432
    if (match_expr && thisJoinPoint->that ()->parse (TOK_IS_CLASS)) {
69214
72433
      *(CTree**)thisJoinPoint->result () = 
69217
72436
    } else 
69218
72437
      thisJoinPoint->action ().trigger (); 
69219
72438
  }
 
72439
#line 72440 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72440
 
69220
72441
protected:
69221
72442
 
 
72443
#line 325 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72444
 
69222
72445
 
69223
72446
  
69224
 
public: template<class JoinPoint> void __a24_around (JoinPoint *tjp) {
 
72447
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72448
 
 
72449
public: template<class JoinPoint> void __a24_around 
 
72450
#line 328 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72451
 
 
72452
#line 328 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72453
(JoinPoint *tjp)
 
72454
#line 328 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72455
 {
 
72456
#line 72457 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72457
 
69225
72458
  JoinPoint *&thisJoinPoint = tjp;
69226
72459
 
 
72460
#line 328 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72461
 
 
72462
#line 72463 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72463
 
69227
72464
  typedef typename JoinPoint::That __JP_That;
69228
72465
  typedef typename JoinPoint::Target __JP_Target;
69229
72466
  typedef typename JoinPoint::Result __JP_Result;
 
72467
 
 
72468
#line 328 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69230
72469
 
69231
72470
    if (match_expr && thisJoinPoint->that ()->parse (TOK_IS_ENUM)) {
69232
72471
      *(CTree**)thisJoinPoint->result () = 
69235
72474
    } else 
69236
72475
      thisJoinPoint->action ().trigger (); 
69237
72476
  }
 
72477
#line 72478 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72478
 
69238
72479
protected:
69239
72480
 
 
72481
#line 335 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72482
 
69240
72483
 
69241
72484
  // configure parsing match expressions
69242
72485
  
69243
72486
  
69244
 
public: void __a25_before (Config &config) {
 
72487
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72488
 
 
72489
public: void __a25_before 
 
72490
#line 340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72491
 
 
72492
#line 340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72493
(Config &config)
 
72494
#line 340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72495
 {
69245
72496
    match_expr = (config.Option ("--match-expr"));
69246
72497
  }
 
72498
#line 72499 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72499
 
69247
72500
protected:
69248
72501
 
 
72502
#line 342 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72503
 
69249
72504
};
 
72505
#line 72506 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72506
 
69250
72507
namespace AC {
69251
72508
  template <class JoinPoint>
69252
72509
  inline void invoke_CMatchSyntax_CMatchSyntax_a0_around (JoinPoint *tjp) {
69355
72612
  }
69356
72613
69357
72614
 
 
72615
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72616
 
69358
72617
 
69359
72618
// introduce wildcard rules to CSyntax
69360
72619
 
 
72620
#line 356 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72621
 
69361
72622
 
69362
72623
// introduce wildcard rules to CCSyntax
69363
72624
 
 
72625
#line 362 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72626
 
69364
72627
 
69365
72628
// extend CBuilder
69366
72629
 
69367
 
 
 
72630
#line 378 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72631
 
 
72632
 
 
72633
 
 
72634
#line 400 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69368
72635
 
69369
72636
         
69370
72637
 
69371
 
 
69372
 
 
69373
 
 
69374
 
 
69375
 
 
69376
 
 
69377
 
 
 
72638
#line 414 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72639
 
 
72640
 
 
72641
 
 
72642
#line 420 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72643
 
 
72644
 
 
72645
 
 
72646
#line 426 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72647
 
 
72648
 
 
72649
 
 
72650
#line 432 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72651
 
 
72652
 
 
72653
 
 
72654
#line 437 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69378
72655
 
69379
72656
 
69380
72657
/*****************************************************************************/
69384
72661
/*****************************************************************************/
69385
72662
 
69386
72663
 
69387
 
 
69388
 
 
69389
 
 
69390
 
 
69391
 
 
69392
 
 
69393
 
 
69394
 
 
69395
 
 
69396
 
 
69397
 
 
 
72664
#line 449 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72665
 
 
72666
 
 
72667
 
 
72668
#line 470 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72669
 
 
72670
 
 
72671
 
 
72672
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72673
 
 
72674
 
 
72675
 
 
72676
#line 481 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72677
 
 
72678
 
 
72679
 
 
72680
#line 487 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72681
 
 
72682
 
 
72683
 
 
72684
#line 494 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72685
 
 
72686
 
 
72687
 
 
72688
#line 510 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69398
72689
 
69399
72690
            
69400
72691
 
69401
 
 
69402
 
 
69403
 
 
69404
 
 
69405
 
 
69406
 
 
69407
 
 
69408
 
 
69409
 
 
69410
 
 
69411
 
 
 
72692
#line 523 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72693
 
 
72694
 
 
72695
 
 
72696
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72697
 
 
72698
 
 
72699
 
 
72700
#line 540 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72701
 
 
72702
 
 
72703
 
 
72704
#line 550 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72705
 
 
72706
 
 
72707
 
 
72708
#line 563 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72709
 
 
72710
 
 
72711
 
 
72712
#line 569 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
 
72713
 
 
72714
 
 
72715
 
 
72716
#line 575 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
69412
72717
 
69413
72718
 
69414
72719
#endif /* __CMatchSyntax_ah__ */
 
72720
 
 
72721
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
69415
72722
// This file is part of PUMA.
69416
72723
// Copyright (C) 1999-2003  The PUMA developer team.
69417
72724
//                                                                
69439
72746
 
69440
72747
// new C and CC Syntax member functions
69441
72748
 
69442
 
 
 
72749
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72750
 
 
72751
 
 
72752
 
 
72753
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
69443
72754
 
69444
72755
 
69445
72756
// *************************
69446
72757
// C and CC-Syntax extension
69447
72758
// *************************
69448
72759
 
 
72760
 
 
72761
#line 72762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
69449
72762
class WinIfExists;
69450
72763
class WinImportHandler;
69451
72764
class WinMacros;
69463
72776
class PragmaOnce;
69464
72777
class CCExprResolve;
69465
72778
class CExprResolve;
 
72779
 
 
72780
#line 56 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
69466
72781
class ExtACSyntaxCoupling {
 
72782
#line 72783 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72783
 
69467
72784
public:
69468
72785
  static ExtACSyntaxCoupling *aspectof () {
69469
72786
    static ExtACSyntaxCoupling __instance;
69473
72790
    return aspectof ();
69474
72791
  }
69475
72792
private:
 
72793
 
 
72794
#line 56 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72795
 
 
72796
#line 72797 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
69476
72797
  friend class ::WinIfExists;
69477
72798
  friend class ::WinImportHandler;
69478
72799
  friend class ::WinMacros;
69491
72812
  friend class ::CCExprResolve;
69492
72813
  friend class ::CExprResolve;
69493
72814
 
 
72815
#line 56 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72816
 
69494
72817
 
69495
72818
  // relevant pointcuts
69496
72819
  
 
72820
#line 59 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72821
 
69497
72822
  
 
72823
#line 60 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72824
 
69498
72825
 
69499
72826
  // structural extensions
69500
72827
  
 
72828
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72829
 
69501
72830
  
 
72831
#line 64 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72832
 
69502
72833
  
69503
72834
  // behavioral extensions
69504
72835
  
69505
 
public: template<class JoinPoint> void __a0_after (JoinPoint *tjp) {
 
72836
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72837
 
 
72838
public: template<class JoinPoint> void __a0_after 
 
72839
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72840
 
 
72841
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72842
(JoinPoint *tjp)
 
72843
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72844
 {
 
72845
#line 72846 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72846
 
69506
72847
  typedef typename JoinPoint::That __JP_That;
69507
72848
  typedef typename JoinPoint::Target __JP_Target;
69508
72849
  typedef typename JoinPoint::Result __JP_Result;
69509
72850
 
 
72851
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72852
 
69510
72853
    tjp->that ()->_class_key_1.set (TOK_ASPECT);
69511
72854
  }
 
72855
#line 72856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72856
 
69512
72857
private:
69513
72858
 
 
72859
#line 70 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72860
 
69514
72861
 
69515
72862
  
69516
 
public: template<class JoinPoint> void __a1_around (JoinPoint *tjp) {
 
72863
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72864
 
 
72865
public: template<class JoinPoint> void __a1_around 
 
72866
#line 73 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72867
 
 
72868
#line 73 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72869
(JoinPoint *tjp)
 
72870
#line 73 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72871
 {
 
72872
#line 72873 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72873
 
69517
72874
  typedef typename JoinPoint::That __JP_That;
69518
72875
  typedef typename JoinPoint::Target __JP_Target;
69519
72876
  typedef typename JoinPoint::Result __JP_Result;
69520
72877
 
 
72878
#line 73 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72879
 
69521
72880
    // 1: pointcut_decl
69522
72881
    // 1: advice_decl
69523
72882
    // 1: class_slice_decl
69524
 
    if (tjp->that ()->parse (&__JP_That::pointcut_decl) ||
69525
 
        tjp->that ()->parse (&__JP_That::advice_decl) ||
69526
 
        tjp->that ()->parse (&__JP_That::class_slice_decl) ||
69527
 
        tjp->that ()->parse (&__JP_That::class_slice_member_decl))
 
72883
    if (tjp->that ()->parse (&__JP_That
 
72884
#line 77 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72885
::pointcut_decl) ||
 
72886
        tjp->that ()->parse (&__JP_That
 
72887
#line 78 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72888
::advice_decl) ||
 
72889
        tjp->that ()->parse (&__JP_That
 
72890
#line 79 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72891
::class_slice_decl) ||
 
72892
        tjp->that ()->parse (&__JP_That
 
72893
#line 80 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72894
::class_slice_member_decl))
69528
72895
      *tjp->result () = tjp->that ()->builder ().block_decl ();
69529
72896
    else 
69530
72897
      tjp->proceed ();
69531
72898
  }
 
72899
#line 72900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72900
 
69532
72901
private:
69533
72902
 
 
72903
#line 84 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72904
 
69534
72905
 
69535
72906
  
69536
 
public: template<class JoinPoint> void __a2_around (JoinPoint *tjp) {
 
72907
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72908
 
 
72909
public: template<class JoinPoint> void __a2_around 
 
72910
#line 87 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72911
 
 
72912
#line 87 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72913
(JoinPoint *tjp)
 
72914
#line 87 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72915
 {
 
72916
#line 72917 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72917
 
69537
72918
  typedef typename JoinPoint::That __JP_That;
69538
72919
  typedef typename JoinPoint::Target __JP_Target;
69539
72920
  typedef typename JoinPoint::Result __JP_Result;
69540
72921
 
 
72922
#line 87 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72923
 
69541
72924
    // 1: pointcut_member_decl
69542
72925
    // 1: advice_member_decl
69543
 
    if (tjp->that ()->parse (&__JP_That::pointcut_member_decl) ||
69544
 
        tjp->that ()->parse (&__JP_That::advice_member_decl) ||
69545
 
        tjp->that ()->parse (&__JP_That::class_slice_decl)) 
 
72926
    if (tjp->that ()->parse (&__JP_That
 
72927
#line 90 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72928
::pointcut_member_decl) ||
 
72929
        tjp->that ()->parse (&__JP_That
 
72930
#line 91 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72931
::advice_member_decl) ||
 
72932
        tjp->that ()->parse (&__JP_That
 
72933
#line 92 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72934
::class_slice_decl)) 
69546
72935
      *tjp->result () = tjp->that ()->builder ().member_decl ();
69547
72936
    else 
69548
72937
      tjp->proceed ();
69549
72938
  }
 
72939
#line 72940 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72940
 
69550
72941
private:
69551
72942
 
 
72943
#line 96 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72944
 
69552
72945
};
 
72946
#line 72947 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
72947
 
69553
72948
namespace AC {
69554
72949
  template <class JoinPoint>
69555
72950
  inline void invoke_ExtACSyntaxCoupling_ExtACSyntaxCoupling_a0_after (JoinPoint *tjp) {
69565
72960
  }
69566
72961
69567
72962
 
 
72963
#line 97 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
 
72964
 
69568
72965
 
69569
72966
#endif /* __ext_ac_syntax_h_ah__ */
 
72967
 
 
72968
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
72969
// This file is part of PUMA.
 
72970
// Copyright (C) 1999-2003  The PUMA developer team.
 
72971
//                                                                
 
72972
// This program is free software;  you can redistribute it and/or 
 
72973
// modify it under the terms of the GNU General Public License as 
 
72974
// published by the Free Software Foundation; either version 2 of 
 
72975
// the License, or (at your option) any later version.            
 
72976
//                                                                
 
72977
// This program is distributed in the hope that it will be useful,
 
72978
// but WITHOUT ANY WARRANTY; without even the implied warranty of 
 
72979
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
 
72980
// GNU General Public License for more details.                   
 
72981
//                                                                
 
72982
// You should have received a copy of the GNU General Public      
 
72983
// License along with this program; if not, write to the Free     
 
72984
// Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
 
72985
// MA  02111-1307  USA                                            
 
72986
 
 
72987
#ifndef __WinAsm__
 
72988
#define __WinAsm__
 
72989
 
 
72990
/********************************************************/
 
72991
/* Win asm support aspect                               */
 
72992
/********************************************************/
 
72993
 
 
72994
 
 
72995
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/WinCTree.h"
 
72996
// This file is part of PUMA.
 
72997
// Copyright (C) 1999-2003  The PUMA developer team.
 
72998
//                                                                
 
72999
// This program is free software;  you can redistribute it and/or 
 
73000
// modify it under the terms of the GNU General Public License as 
 
73001
// published by the Free Software Foundation; either version 2 of 
 
73002
// the License, or (at your option) any later version.            
 
73003
//                                                                
 
73004
// This program is distributed in the hope that it will be useful,
 
73005
// but WITHOUT ANY WARRANTY; without even the implied warranty of 
 
73006
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
 
73007
// GNU General Public License for more details.                   
 
73008
//                                                                
 
73009
// You should have received a copy of the GNU General Public      
 
73010
// License along with this program; if not, write to the Free     
 
73011
// Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
 
73012
// MA  02111-1307  USA                                            
 
73013
 
 
73014
#ifndef __win_c_tree_h__
 
73015
#define __win_c_tree_h__
 
73016
 
 
73017
namespace Puma {
 
73018
 
 
73019
 
 
73020
// Syntax tree node hierarchy:
 
73021
class CTree;
 
73022
class   CT_Statement;
 
73023
class     CT_AsmBlock;
 
73024
 
 
73025
 
 
73026
} // namespace Puma
 
73027
 
 
73028
 
 
73029
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73030
 
 
73031
#line 73032 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73032
 
 
73033
#ifndef __ac_fwd_ExtACTree__
 
73034
#define __ac_fwd_ExtACTree__
 
73035
class ExtACTree;
 
73036
namespace AC {
 
73037
  template <class JoinPoint>
 
73038
  inline void invoke_ExtACTree_ExtACTree_a0_after (JoinPoint *tjp);
 
73039
  template <class JoinPoint>
 
73040
  inline void invoke_ExtACTree_ExtACTree_a1_before (JoinPoint *tjp);
 
73041
}
 
73042
#endif
 
73043
 
 
73044
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
73045
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
73046
#endif
 
73047
 
 
73048
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73049
 
 
73050
#line 73051 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73051
 
 
73052
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73053
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
73054
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
73055
 
 
73056
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73057
// This file is part of PUMA.
 
73058
// Copyright (C) 1999-2003  The PUMA developer team.
 
73059
//                                                                
 
73060
// This program is free software;  you can redistribute it and/or 
 
73061
// modify it under the terms of the GNU General Public License as 
 
73062
// published by the Free Software Foundation; either version 2 of 
 
73063
// the License, or (at your option) any later version.            
 
73064
//                                                                
 
73065
// This program is distributed in the hope that it will be useful,
 
73066
// but WITHOUT ANY WARRANTY; without even the implied warranty of 
 
73067
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
 
73068
// GNU General Public License for more details.                   
 
73069
//                                                                
 
73070
// You should have received a copy of the GNU General Public      
 
73071
// License along with this program; if not, write to the Free     
 
73072
// Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, 
 
73073
// MA  02111-1307  USA                                            
 
73074
 
 
73075
#ifndef __CTree_h__
 
73076
#define __CTree_h__
 
73077
 
 
73078
namespace Puma {
 
73079
 
 
73080
 
 
73081
// Syntax tree node hierarchy:
 
73082
class CTree;
 
73083
class   CT_Statement;          
 
73084
class     CT_LabelStmt;
 
73085
class     CT_IfStmt;
 
73086
class     CT_IfElseStmt;
 
73087
class     CT_SwitchStmt;
 
73088
class     CT_BreakStmt;
 
73089
class     CT_ExprStmt;
 
73090
class     CT_WhileStmt;
 
73091
class     CT_DoStmt;
 
73092
class     CT_ForStmt;
 
73093
class     CT_ContinueStmt;
 
73094
class     CT_ReturnStmt;
 
73095
class     CT_GotoStmt;
 
73096
class     CT_DeclStmt;
 
73097
class     CT_CaseStmt;
 
73098
class     CT_DefaultStmt;
 
73099
class     CT_TryStmt;
 
73100
class   CT_Expression;
 
73101
class     CT_ThrowExpr;
 
73102
class     CT_NewExpr;
 
73103
class     CT_DeleteExpr;
 
73104
class     CT_ConstructExpr;
 
73105
class     CT_Integer;
 
73106
class     CT_Character;
 
73107
class       CT_WideCharacter;
 
73108
class     CT_Float;
 
73109
class     CT_Bool;
 
73110
class     CT_BracedExpr;
 
73111
class     CT_BinaryExpr;
 
73112
class       CT_MembPtrExpr;
 
73113
class         CT_MembRefExpr;
 
73114
class     CT_UnaryExpr;
 
73115
class       CT_PostfixExpr;
 
73116
class       CT_AddrExpr;
 
73117
class       CT_DerefExpr;
 
73118
class     CT_IfThenExpr;
 
73119
class     CT_CmpdLiteral;
 
73120
class     CT_IndexExpr;
 
73121
class     CT_CallExpr;
 
73122
class     CT_CastExpr;
 
73123
class     CT_StaticCast;
 
73124
class       CT_ConstCast;
 
73125
class       CT_ReintCast;
 
73126
class       CT_DynamicCast;
 
73127
class     CT_TypeidExpr;
 
73128
class     CT_SizeofExpr;
 
73129
class     CT_MembDesignator;
 
73130
class     CT_IndexDesignator;
 
73131
class     CT_ImplicitCast;
 
73132
class   CT_DeclSpec;
 
73133
class     CT_PrimDeclSpec;
 
73134
class     CT_NamedType;
 
73135
class     CT_ClassSpec;
 
73136
class       CT_UnionSpec;
 
73137
class       CT_EnumSpec;
 
73138
class     CT_ExceptionSpec;
 
73139
class   CT_Declarator;
 
73140
class     CT_InitDeclarator;
 
73141
class     CT_BracedDeclarator;
 
73142
class     CT_ArrayDeclarator;
 
73143
class     CT_FctDeclarator;
 
73144
class     CT_RefDeclarator;
 
73145
class     CT_PtrDeclarator;
 
73146
class     CT_MembPtrDeclarator;
 
73147
class     CT_BitFieldDeclarator;
 
73148
class   CT_Decl;
 
73149
class     CT_ObjDecl;
 
73150
class     CT_ArgDecl;
 
73151
class     CT_AccessDecl;
 
73152
class       CT_UsingDecl;
 
73153
class     CT_FctDef;
 
73154
class     CT_AsmDef;
 
73155
class     CT_EnumDef;
 
73156
class     CT_ClassDef;
 
73157
class       CT_UnionDef;
 
73158
class     CT_Enumerator;
 
73159
class     CT_LinkageSpec;
 
73160
class     CT_Handler;
 
73161
class     CT_TemplateDecl;
 
73162
class     CT_TemplateParamDecl;
 
73163
class       CT_TypeParamDecl;
 
73164
class       CT_NonTypeParamDecl;
 
73165
class     CT_NamespaceDef;
 
73166
class     CT_NamespaceAliasDef;
 
73167
class     CT_UsingDirective;
 
73168
class   CT_List;
 
73169
class     CT_CmpdStmt;
 
73170
class     CT_DeclSpecSeq;
 
73171
class     CT_HandlerSeq;
 
73172
class     CT_DesignatorSeq;
 
73173
class     CT_DeclList;
 
73174
class       CT_Program;
 
73175
class       CT_ArgDeclList;
 
73176
class         CT_ArgNameList;
 
73177
class       CT_ArgDeclSeq;
 
73178
class       CT_MembList;
 
73179
class     CT_ExprList;
 
73180
class     CT_DeclaratorList;
 
73181
class     CT_BaseSpecList;
 
73182
class     CT_MembInitList;
 
73183
class     CT_SimpleName;
 
73184
class       CT_SpecialName;
 
73185
class         CT_PrivateName;
 
73186
class         CT_OperatorName;
 
73187
class         CT_DestructorName;
 
73188
class         CT_ConversionName;
 
73189
class         CT_TemplateName;
 
73190
class       CT_QualName;
 
73191
class         CT_RootQualName;
 
73192
class     CT_String;
 
73193
class       CT_WideString;
 
73194
class     CT_TemplateParamList;
 
73195
class     CT_TemplateArgList;
 
73196
class   CT_Token;
 
73197
class   CT_Error;
 
73198
class   CT_Condition;
 
73199
class   CT_BaseSpec;
 
73200
class   CT_AccessSpec;
 
73201
class   CT_ArrayDelimiter;
 
73202
class   CT_Any;
 
73203
class   CT_AnyList;
 
73204
class   CT_AnyExtension;
 
73205
class   CT_AnyCondition;
 
73206
 
 
73207
 
 
73208
} // namespace Puma
 
73209
 
 
73210
#include "Puma/ErrorSeverity.h"
 
73211
#include "Puma/CSemObject.h"
 
73212
#include "Puma/CSemScope.h"
 
73213
#include "Puma/CSemValue.h"
 
73214
#include "Puma/CExprValue.h"
 
73215
#include "Puma/CStrLiteral.h"
 
73216
#include "Puma/CTypeInfo.h"
 
73217
#include "Puma/Printable.h"
 
73218
#include "Puma/CTokens.h"
 
73219
#include "Puma/Token.h"
 
73220
 
 
73221
#include <iostream>
 
73222
#include <string.h>
 
73223
using namespace std;
 
73224
 
 
73225
namespace Puma {
 
73226
 
 
73227
 
 
73228
class ErrorStream;
 
73229
class CObjectInfo;
 
73230
class CStructure;
 
73231
 
 
73232
/*****************************************************************************/
 
73233
/*                                                                           */
 
73234
/*                    S y n t a x  t r e e  n o d e s                        */
 
73235
/*                                                                           */
 
73236
/*****************************************************************************/
 
73237
 
 
73238
 
 
73239
#line 73240 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73240
} // closed Puma
 
73241
class WinIfExists;
 
73242
class WinImportHandler;
 
73243
class WinMacros;
 
73244
class CMatchSyntax;
 
73245
class ExtGnu;
 
73246
class ExtAC;
 
73247
class ExtACBuilderCoupling;
 
73248
class ExtACSyntaxCoupling;
 
73249
class ExtACTree;
 
73250
class ExtACKeywords;
 
73251
class WinAsm;
 
73252
class WinDeclSpecs;
 
73253
class WinMemberExplSpec;
 
73254
class WinTypeKeywords;
 
73255
class PragmaOnceUnitState;
 
73256
class PragmaOnce;
 
73257
class CCExprResolve;
 
73258
class CExprResolve;
 
73259
namespace Puma {
 
73260
 
 
73261
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73262
class CTree {
 
73263
#line 73264 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73264
  friend class ::WinIfExists;
 
73265
  friend class ::WinImportHandler;
 
73266
  friend class ::WinMacros;
 
73267
  friend class ::CMatchSyntax;
 
73268
  friend class ::ExtGnu;
 
73269
  friend class ::ExtAC;
 
73270
  friend class ::ExtACBuilderCoupling;
 
73271
  friend class ::ExtACSyntaxCoupling;
 
73272
  friend class ::ExtACTree;
 
73273
  friend class ::ExtACKeywords;
 
73274
  friend class ::WinAsm;
 
73275
  friend class ::WinDeclSpecs;
 
73276
  friend class ::WinMemberExplSpec;
 
73277
  friend class ::WinTypeKeywords;
 
73278
  friend class ::PragmaOnceUnitState;
 
73279
  friend class ::PragmaOnce;
 
73280
  friend class ::CCExprResolve;
 
73281
  friend class ::CExprResolve;
 
73282
 
 
73283
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73284
 
 
73285
public:
 
73286
  /*DEBUG*/static int alloc;
 
73287
  /*DEBUG*/static int release;
 
73288
 
 
73289
protected:
 
73290
  CTree *Son (CTree * const *, int, int) const;
 
73291
  int Sons (CTree * const *, int) const;
 
73292
  void ReplaceSon (CTree * const *, int, CTree *, CTree *) const;
 
73293
  
 
73294
protected:
 
73295
  CTree () { /*DEBUG*/alloc++; }
 
73296
 
 
73297
public:
 
73298
  virtual ~CTree () { /*DEBUG*/release++; }
 
73299
  virtual int Sons () const = 0;
 
73300
  virtual CTree *Son (int n) const { return (CTree*)0; }
 
73301
  virtual const char *NodeName () const = 0;
 
73302
  virtual Token *token () const;
 
73303
  virtual Token *end_token () const;
 
73304
  virtual CT_Token *token_node () const;
 
73305
  virtual CT_Token *end_token_node () const;
 
73306
  virtual void ReplaceSon (CTree *, CTree *) {}
 
73307
 
 
73308
public: // semantic information
 
73309
  virtual CTypeInfo *Type () const { return (CTypeInfo*)0; }
 
73310
  virtual CExprValue *Value () const { return (CExprValue*)0; }
 
73311
  
 
73312
  virtual CSemValue *SemValue () const { return (CSemValue*)0; }
 
73313
  virtual CSemObject *SemObject () const { return (CSemObject*)0; }
 
73314
  
 
73315
public: // node classification function
 
73316
  virtual CT_SimpleName *IsSimpleName () { return 0; }
 
73317
  virtual CT_Declarator *IsDeclarator () { return 0; }
 
73318
   private:
 
73319
  typedef CTree CCExprResolveCTree;
 
73320
 
 
73321
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
73322
 public :
 
73323
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
73324
  typedef CTree CExprResolveCTree;
 
73325
 
 
73326
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
73327
 public :
 
73328
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
73329
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73330
};
 
73331
 
 
73332
 
 
73333
#line 73334 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73334
} // closed Puma
 
73335
class WinIfExists;
 
73336
class WinImportHandler;
 
73337
class WinMacros;
 
73338
class CMatchSyntax;
 
73339
class ExtGnu;
 
73340
class ExtAC;
 
73341
class ExtACBuilderCoupling;
 
73342
class ExtACSyntaxCoupling;
 
73343
class ExtACTree;
 
73344
class ExtACKeywords;
 
73345
class WinAsm;
 
73346
class WinDeclSpecs;
 
73347
class WinMemberExplSpec;
 
73348
class WinTypeKeywords;
 
73349
class PragmaOnceUnitState;
 
73350
class PragmaOnce;
 
73351
class CCExprResolve;
 
73352
class CExprResolve;
 
73353
namespace Puma {
 
73354
 
 
73355
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73356
class CT_Error : public CTree {
 
73357
#line 73358 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73358
  friend class ::WinIfExists;
 
73359
  friend class ::WinImportHandler;
 
73360
  friend class ::WinMacros;
 
73361
  friend class ::CMatchSyntax;
 
73362
  friend class ::ExtGnu;
 
73363
  friend class ::ExtAC;
 
73364
  friend class ::ExtACBuilderCoupling;
 
73365
  friend class ::ExtACSyntaxCoupling;
 
73366
  friend class ::ExtACTree;
 
73367
  friend class ::ExtACKeywords;
 
73368
  friend class ::WinAsm;
 
73369
  friend class ::WinDeclSpecs;
 
73370
  friend class ::WinMemberExplSpec;
 
73371
  friend class ::WinTypeKeywords;
 
73372
  friend class ::PragmaOnceUnitState;
 
73373
  friend class ::PragmaOnce;
 
73374
  friend class ::CCExprResolve;
 
73375
  friend class ::CExprResolve;
 
73376
 
 
73377
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73378
 
 
73379
public:
 
73380
  static const char *NodeId ();
 
73381
  const char *NodeName () const { return NodeId (); }
 
73382
  int Sons () const { return 0; }
 
73383
};
 
73384
 
 
73385
 
 
73386
#line 73387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73387
} // closed Puma
 
73388
class WinIfExists;
 
73389
class WinImportHandler;
 
73390
class WinMacros;
 
73391
class CMatchSyntax;
 
73392
class ExtGnu;
 
73393
class ExtAC;
 
73394
class ExtACBuilderCoupling;
 
73395
class ExtACSyntaxCoupling;
 
73396
class ExtACTree;
 
73397
class ExtACKeywords;
 
73398
class WinAsm;
 
73399
class WinDeclSpecs;
 
73400
class WinMemberExplSpec;
 
73401
class WinTypeKeywords;
 
73402
class PragmaOnceUnitState;
 
73403
class PragmaOnce;
 
73404
class CCExprResolve;
 
73405
class CExprResolve;
 
73406
namespace Puma {
 
73407
 
 
73408
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73409
class CT_Token : public CTree {
 
73410
#line 73411 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73411
  friend class ::WinIfExists;
 
73412
  friend class ::WinImportHandler;
 
73413
  friend class ::WinMacros;
 
73414
  friend class ::CMatchSyntax;
 
73415
  friend class ::ExtGnu;
 
73416
  friend class ::ExtAC;
 
73417
  friend class ::ExtACBuilderCoupling;
 
73418
  friend class ::ExtACSyntaxCoupling;
 
73419
  friend class ::ExtACTree;
 
73420
  friend class ::ExtACKeywords;
 
73421
  friend class ::WinAsm;
 
73422
  friend class ::WinDeclSpecs;
 
73423
  friend class ::WinMemberExplSpec;
 
73424
  friend class ::WinTypeKeywords;
 
73425
  friend class ::PragmaOnceUnitState;
 
73426
  friend class ::PragmaOnce;
 
73427
  friend class ::CCExprResolve;
 
73428
  friend class ::CExprResolve;
 
73429
 
 
73430
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73431
 
 
73432
  Token *_token;
 
73433
  unsigned long int _number;
 
73434
  
 
73435
public:
 
73436
  CT_Token (Token *t, unsigned long int n = 0) : 
 
73437
    _token (t), _number (n) {}
 
73438
  static const char *NodeId ();
 
73439
  const char *NodeName () const { return NodeId (); }
 
73440
  int Sons () const { return 0; }
 
73441
  Token *token () const { return _token; }
 
73442
  Token *end_token () const { return _token; }
 
73443
  CT_Token *token_node () const { return (CT_Token*)this; }
 
73444
  CT_Token *end_token_node () const { return (CT_Token*)this; }
 
73445
  void Number (unsigned long int n) { _number = n; }
 
73446
  unsigned long int Number () const { return _number; }
 
73447
  // special new / delete with reusing memory
 
73448
  void *operator new (size_t);
 
73449
  void  operator delete (void *);
 
73450
};
 
73451
 
 
73452
/*****************************************************************************/
 
73453
/*                                                                           */
 
73454
/*                              List nodes                                   */
 
73455
/*                                                                           */
 
73456
/*****************************************************************************/
 
73457
 
 
73458
 
 
73459
#line 73460 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73460
} // closed Puma
 
73461
class WinIfExists;
 
73462
class WinImportHandler;
 
73463
class WinMacros;
 
73464
class CMatchSyntax;
 
73465
class ExtGnu;
 
73466
class ExtAC;
 
73467
class ExtACBuilderCoupling;
 
73468
class ExtACSyntaxCoupling;
 
73469
class ExtACTree;
 
73470
class ExtACKeywords;
 
73471
class WinAsm;
 
73472
class WinDeclSpecs;
 
73473
class WinMemberExplSpec;
 
73474
class WinTypeKeywords;
 
73475
class PragmaOnceUnitState;
 
73476
class PragmaOnce;
 
73477
class CCExprResolve;
 
73478
class CExprResolve;
 
73479
namespace Puma {
 
73480
 
 
73481
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73482
class CT_List : public CTree {
 
73483
#line 73484 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73484
  friend class ::WinIfExists;
 
73485
  friend class ::WinImportHandler;
 
73486
  friend class ::WinMacros;
 
73487
  friend class ::CMatchSyntax;
 
73488
  friend class ::ExtGnu;
 
73489
  friend class ::ExtAC;
 
73490
  friend class ::ExtACBuilderCoupling;
 
73491
  friend class ::ExtACSyntaxCoupling;
 
73492
  friend class ::ExtACTree;
 
73493
  friend class ::ExtACKeywords;
 
73494
  friend class ::WinAsm;
 
73495
  friend class ::WinDeclSpecs;
 
73496
  friend class ::WinMemberExplSpec;
 
73497
  friend class ::WinTypeKeywords;
 
73498
  friend class ::PragmaOnceUnitState;
 
73499
  friend class ::PragmaOnce;
 
73500
  friend class ::CCExprResolve;
 
73501
  friend class ::CExprResolve;
 
73502
 
 
73503
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73504
 
 
73505
  Array<CTree*> _sons;
 
73506
  int _properties;
 
73507
 
 
73508
protected:
 
73509
  CT_List(int size = 5, int incr = 5, int props = 0) : 
 
73510
    _sons (size, incr), _properties (props) {}
 
73511
 
 
73512
public:
 
73513
  enum {
 
73514
    OPEN = 1,         // has a start token like ':' in ":a(1),b(2)"
 
73515
    CLOSE = 2,
 
73516
    OPEN_CLOSE = 3,   // has opening and closing delimiters, e.g. '(' ')'
 
73517
    SEPARATORS = 4,   // the list has separators like ','
 
73518
    FORCE_EMPTY = 8,  // pretend to be empty, e.g. for "(void)"
 
73519
    END_SEP = 16,     // has separator after last element, e.g. "a,b,c,"
 
73520
    NO_LAST_SEP = 32, // no separator before last element, e.g. "(a,b...)"
 
73521
    INTRO = 64        // has an introduction char, e.g. "=" in "={a,b}"
 
73522
  };
 
73523
 
 
73524
  int Entries () const;
 
73525
  CTree *Entry (int no) const;
 
73526
  int Sons () const { return _sons.length (); }
 
73527
  CTree *Son (int n) const { return _sons.lookup (n); }
 
73528
  int GetProperties () const { return _properties; }
 
73529
  void AddProperties (int p) { _properties |= p; }
 
73530
  void AddSon (CTree *s) { if (s) _sons.append (s); }
 
73531
  void PrefixSon (CTree *s) { if (s) _sons.prepend (s); }
 
73532
  void InsertSon (CTree *, CTree *);  // before given son
 
73533
  void ReplaceSon (CTree *, CTree *);
 
73534
  void RemoveSon (CTree *);
 
73535
  void InsertSon (int idx, CTree *s)
 
73536
   { if (idx <= Sons ()) _sons.insert (idx, s); }
 
73537
  void ReplaceSon (int idx, CTree *s) 
 
73538
   { if (idx < Sons ()) _sons[idx] = s; }
 
73539
  void RemoveSon (int idx) 
 
73540
   { if (idx < Sons ()) _sons.remove (idx); }
 
73541
};
 
73542
 
 
73543
 
 
73544
#line 73545 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73545
} // closed Puma
 
73546
class WinIfExists;
 
73547
class WinImportHandler;
 
73548
class WinMacros;
 
73549
class CMatchSyntax;
 
73550
class ExtGnu;
 
73551
class ExtAC;
 
73552
class ExtACBuilderCoupling;
 
73553
class ExtACSyntaxCoupling;
 
73554
class ExtACTree;
 
73555
class ExtACKeywords;
 
73556
class WinAsm;
 
73557
class WinDeclSpecs;
 
73558
class WinMemberExplSpec;
 
73559
class WinTypeKeywords;
 
73560
class PragmaOnceUnitState;
 
73561
class PragmaOnce;
 
73562
class CCExprResolve;
 
73563
class CExprResolve;
 
73564
namespace Puma {
 
73565
 
 
73566
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73567
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
73568
#line 73569 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73569
  friend class ::WinIfExists;
 
73570
  friend class ::WinImportHandler;
 
73571
  friend class ::WinMacros;
 
73572
  friend class ::CMatchSyntax;
 
73573
  friend class ::ExtGnu;
 
73574
  friend class ::ExtAC;
 
73575
  friend class ::ExtACBuilderCoupling;
 
73576
  friend class ::ExtACSyntaxCoupling;
 
73577
  friend class ::ExtACTree;
 
73578
  friend class ::ExtACKeywords;
 
73579
  friend class ::WinAsm;
 
73580
  friend class ::WinDeclSpecs;
 
73581
  friend class ::WinMemberExplSpec;
 
73582
  friend class ::WinTypeKeywords;
 
73583
  friend class ::PragmaOnceUnitState;
 
73584
  friend class ::PragmaOnce;
 
73585
  friend class ::CCExprResolve;
 
73586
  friend class ::CExprResolve;
 
73587
 
 
73588
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73589
 
 
73590
public:
 
73591
  CT_ExprList () { AddProperties (SEPARATORS); }
 
73592
  static const char *NodeId ();
 
73593
  const char *NodeName () const { return NodeId (); }
 
73594
 
 
73595
  CTypeInfo *Type () const { return type; }
 
73596
  CExprValue *Value () const { return value; }
 
73597
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
73598
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
73599
};
 
73600
 
 
73601
 
 
73602
#line 73603 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73603
} // closed Puma
 
73604
class WinIfExists;
 
73605
class WinImportHandler;
 
73606
class WinMacros;
 
73607
class CMatchSyntax;
 
73608
class ExtGnu;
 
73609
class ExtAC;
 
73610
class ExtACBuilderCoupling;
 
73611
class ExtACSyntaxCoupling;
 
73612
class ExtACTree;
 
73613
class ExtACKeywords;
 
73614
class WinAsm;
 
73615
class WinDeclSpecs;
 
73616
class WinMemberExplSpec;
 
73617
class WinTypeKeywords;
 
73618
class PragmaOnceUnitState;
 
73619
class PragmaOnce;
 
73620
class CCExprResolve;
 
73621
class CExprResolve;
 
73622
namespace Puma {
 
73623
 
 
73624
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73625
class CT_DeclaratorList : public CT_List {
 
73626
#line 73627 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73627
  friend class ::WinIfExists;
 
73628
  friend class ::WinImportHandler;
 
73629
  friend class ::WinMacros;
 
73630
  friend class ::CMatchSyntax;
 
73631
  friend class ::ExtGnu;
 
73632
  friend class ::ExtAC;
 
73633
  friend class ::ExtACBuilderCoupling;
 
73634
  friend class ::ExtACSyntaxCoupling;
 
73635
  friend class ::ExtACTree;
 
73636
  friend class ::ExtACKeywords;
 
73637
  friend class ::WinAsm;
 
73638
  friend class ::WinDeclSpecs;
 
73639
  friend class ::WinMemberExplSpec;
 
73640
  friend class ::WinTypeKeywords;
 
73641
  friend class ::PragmaOnceUnitState;
 
73642
  friend class ::PragmaOnce;
 
73643
  friend class ::CCExprResolve;
 
73644
  friend class ::CExprResolve;
 
73645
 
 
73646
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73647
 
 
73648
public:
 
73649
  static const char *NodeId ();
 
73650
  const char *NodeName () const { return NodeId (); }
 
73651
};
 
73652
 
 
73653
 
 
73654
#line 73655 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73655
} // closed Puma
 
73656
class WinIfExists;
 
73657
class WinImportHandler;
 
73658
class WinMacros;
 
73659
class CMatchSyntax;
 
73660
class ExtGnu;
 
73661
class ExtAC;
 
73662
class ExtACBuilderCoupling;
 
73663
class ExtACSyntaxCoupling;
 
73664
class ExtACTree;
 
73665
class ExtACKeywords;
 
73666
class WinAsm;
 
73667
class WinDeclSpecs;
 
73668
class WinMemberExplSpec;
 
73669
class WinTypeKeywords;
 
73670
class PragmaOnceUnitState;
 
73671
class PragmaOnce;
 
73672
class CCExprResolve;
 
73673
class CExprResolve;
 
73674
namespace Puma {
 
73675
 
 
73676
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73677
class CT_EnumeratorList : public CT_List {
 
73678
#line 73679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73679
  friend class ::WinIfExists;
 
73680
  friend class ::WinImportHandler;
 
73681
  friend class ::WinMacros;
 
73682
  friend class ::CMatchSyntax;
 
73683
  friend class ::ExtGnu;
 
73684
  friend class ::ExtAC;
 
73685
  friend class ::ExtACBuilderCoupling;
 
73686
  friend class ::ExtACSyntaxCoupling;
 
73687
  friend class ::ExtACTree;
 
73688
  friend class ::ExtACKeywords;
 
73689
  friend class ::WinAsm;
 
73690
  friend class ::WinDeclSpecs;
 
73691
  friend class ::WinMemberExplSpec;
 
73692
  friend class ::WinTypeKeywords;
 
73693
  friend class ::PragmaOnceUnitState;
 
73694
  friend class ::PragmaOnce;
 
73695
  friend class ::CCExprResolve;
 
73696
  friend class ::CExprResolve;
 
73697
 
 
73698
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73699
 
 
73700
public:
 
73701
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
 
73702
  static const char *NodeId ();
 
73703
  const char *NodeName () const { return NodeId (); }
 
73704
};
 
73705
   
 
73706
 
 
73707
#line 73708 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73708
} // closed Puma
 
73709
class WinIfExists;
 
73710
class WinImportHandler;
 
73711
class WinMacros;
 
73712
class CMatchSyntax;
 
73713
class ExtGnu;
 
73714
class ExtAC;
 
73715
class ExtACBuilderCoupling;
 
73716
class ExtACSyntaxCoupling;
 
73717
class ExtACTree;
 
73718
class ExtACKeywords;
 
73719
class WinAsm;
 
73720
class WinDeclSpecs;
 
73721
class WinMemberExplSpec;
 
73722
class WinTypeKeywords;
 
73723
class PragmaOnceUnitState;
 
73724
class PragmaOnce;
 
73725
class CCExprResolve;
 
73726
class CExprResolve;
 
73727
namespace Puma {
 
73728
 
 
73729
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73730
class CT_DeclList : public CT_List {
 
73731
#line 73732 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73732
  friend class ::WinIfExists;
 
73733
  friend class ::WinImportHandler;
 
73734
  friend class ::WinMacros;
 
73735
  friend class ::CMatchSyntax;
 
73736
  friend class ::ExtGnu;
 
73737
  friend class ::ExtAC;
 
73738
  friend class ::ExtACBuilderCoupling;
 
73739
  friend class ::ExtACSyntaxCoupling;
 
73740
  friend class ::ExtACTree;
 
73741
  friend class ::ExtACKeywords;
 
73742
  friend class ::WinAsm;
 
73743
  friend class ::WinDeclSpecs;
 
73744
  friend class ::WinMemberExplSpec;
 
73745
  friend class ::WinTypeKeywords;
 
73746
  friend class ::PragmaOnceUnitState;
 
73747
  friend class ::PragmaOnce;
 
73748
  friend class ::CCExprResolve;
 
73749
  friend class ::CExprResolve;
 
73750
 
 
73751
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73752
 
 
73753
public:
 
73754
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
 
73755
  static const char *NodeId ();
 
73756
  const char *NodeName () const { return NodeId (); }
 
73757
  void Linkage (CT_LinkageSpec *l);
 
73758
};
 
73759
 
 
73760
 
 
73761
#line 73762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73762
} // closed Puma
 
73763
class WinIfExists;
 
73764
class WinImportHandler;
 
73765
class WinMacros;
 
73766
class CMatchSyntax;
 
73767
class ExtGnu;
 
73768
class ExtAC;
 
73769
class ExtACBuilderCoupling;
 
73770
class ExtACSyntaxCoupling;
 
73771
class ExtACTree;
 
73772
class ExtACKeywords;
 
73773
class WinAsm;
 
73774
class WinDeclSpecs;
 
73775
class WinMemberExplSpec;
 
73776
class WinTypeKeywords;
 
73777
class PragmaOnceUnitState;
 
73778
class PragmaOnce;
 
73779
class CCExprResolve;
 
73780
class CExprResolve;
 
73781
namespace Puma {
 
73782
 
 
73783
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73784
class CT_DeclSpecSeq : public CT_List {
 
73785
#line 73786 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73786
  friend class ::WinIfExists;
 
73787
  friend class ::WinImportHandler;
 
73788
  friend class ::WinMacros;
 
73789
  friend class ::CMatchSyntax;
 
73790
  friend class ::ExtGnu;
 
73791
  friend class ::ExtAC;
 
73792
  friend class ::ExtACBuilderCoupling;
 
73793
  friend class ::ExtACSyntaxCoupling;
 
73794
  friend class ::ExtACTree;
 
73795
  friend class ::ExtACKeywords;
 
73796
  friend class ::WinAsm;
 
73797
  friend class ::WinDeclSpecs;
 
73798
  friend class ::WinMemberExplSpec;
 
73799
  friend class ::WinTypeKeywords;
 
73800
  friend class ::PragmaOnceUnitState;
 
73801
  friend class ::PragmaOnce;
 
73802
  friend class ::CCExprResolve;
 
73803
  friend class ::CExprResolve;
 
73804
 
 
73805
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73806
 
 
73807
public:
 
73808
  static const char *NodeId ();
 
73809
  const char *NodeName () const { return NodeId (); }
 
73810
};
 
73811
 
 
73812
 
 
73813
#line 73814 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73814
} // closed Puma
 
73815
class WinIfExists;
 
73816
class WinImportHandler;
 
73817
class WinMacros;
 
73818
class CMatchSyntax;
 
73819
class ExtGnu;
 
73820
class ExtAC;
 
73821
class ExtACBuilderCoupling;
 
73822
class ExtACSyntaxCoupling;
 
73823
class ExtACTree;
 
73824
class ExtACKeywords;
 
73825
class WinAsm;
 
73826
class WinDeclSpecs;
 
73827
class WinMemberExplSpec;
 
73828
class WinTypeKeywords;
 
73829
class PragmaOnceUnitState;
 
73830
class PragmaOnce;
 
73831
class CCExprResolve;
 
73832
class CExprResolve;
 
73833
namespace Puma {
 
73834
 
 
73835
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73836
class CT_CmpdStmt : public CT_List, public CSemScope {
 
73837
#line 73838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73838
  friend class ::WinIfExists;
 
73839
  friend class ::WinImportHandler;
 
73840
  friend class ::WinMacros;
 
73841
  friend class ::CMatchSyntax;
 
73842
  friend class ::ExtGnu;
 
73843
  friend class ::ExtAC;
 
73844
  friend class ::ExtACBuilderCoupling;
 
73845
  friend class ::ExtACSyntaxCoupling;
 
73846
  friend class ::ExtACTree;
 
73847
  friend class ::ExtACKeywords;
 
73848
  friend class ::WinAsm;
 
73849
  friend class ::WinDeclSpecs;
 
73850
  friend class ::WinMemberExplSpec;
 
73851
  friend class ::WinTypeKeywords;
 
73852
  friend class ::PragmaOnceUnitState;
 
73853
  friend class ::PragmaOnce;
 
73854
  friend class ::CCExprResolve;
 
73855
  friend class ::CExprResolve;
 
73856
 
 
73857
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73858
 
 
73859
public:
 
73860
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
 
73861
  static const char *NodeId ();
 
73862
  const char *NodeName () const { return NodeId (); }
 
73863
};
 
73864
 
 
73865
 
 
73866
#line 73867 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73867
} // closed Puma
 
73868
class WinIfExists;
 
73869
class WinImportHandler;
 
73870
class WinMacros;
 
73871
class CMatchSyntax;
 
73872
class ExtGnu;
 
73873
class ExtAC;
 
73874
class ExtACBuilderCoupling;
 
73875
class ExtACSyntaxCoupling;
 
73876
class ExtACTree;
 
73877
class ExtACKeywords;
 
73878
class WinAsm;
 
73879
class WinDeclSpecs;
 
73880
class WinMemberExplSpec;
 
73881
class WinTypeKeywords;
 
73882
class PragmaOnceUnitState;
 
73883
class PragmaOnce;
 
73884
class CCExprResolve;
 
73885
class CExprResolve;
 
73886
namespace Puma {
 
73887
 
 
73888
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73889
class CT_HandlerSeq : public CT_List {
 
73890
#line 73891 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73891
  friend class ::WinIfExists;
 
73892
  friend class ::WinImportHandler;
 
73893
  friend class ::WinMacros;
 
73894
  friend class ::CMatchSyntax;
 
73895
  friend class ::ExtGnu;
 
73896
  friend class ::ExtAC;
 
73897
  friend class ::ExtACBuilderCoupling;
 
73898
  friend class ::ExtACSyntaxCoupling;
 
73899
  friend class ::ExtACTree;
 
73900
  friend class ::ExtACKeywords;
 
73901
  friend class ::WinAsm;
 
73902
  friend class ::WinDeclSpecs;
 
73903
  friend class ::WinMemberExplSpec;
 
73904
  friend class ::WinTypeKeywords;
 
73905
  friend class ::PragmaOnceUnitState;
 
73906
  friend class ::PragmaOnce;
 
73907
  friend class ::CCExprResolve;
 
73908
  friend class ::CExprResolve;
 
73909
 
 
73910
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73911
 
 
73912
public:
 
73913
  static const char *NodeId ();
 
73914
  const char *NodeName () const { return NodeId (); }
 
73915
};
 
73916
 
 
73917
 
 
73918
#line 73919 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73919
} // closed Puma
 
73920
class WinIfExists;
 
73921
class WinImportHandler;
 
73922
class WinMacros;
 
73923
class CMatchSyntax;
 
73924
class ExtGnu;
 
73925
class ExtAC;
 
73926
class ExtACBuilderCoupling;
 
73927
class ExtACSyntaxCoupling;
 
73928
class ExtACTree;
 
73929
class ExtACKeywords;
 
73930
class WinAsm;
 
73931
class WinDeclSpecs;
 
73932
class WinMemberExplSpec;
 
73933
class WinTypeKeywords;
 
73934
class PragmaOnceUnitState;
 
73935
class PragmaOnce;
 
73936
class CCExprResolve;
 
73937
class CExprResolve;
 
73938
namespace Puma {
 
73939
 
 
73940
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73941
class CT_TemplateParamList : public CT_List, public CSemScope {
 
73942
#line 73943 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73943
  friend class ::WinIfExists;
 
73944
  friend class ::WinImportHandler;
 
73945
  friend class ::WinMacros;
 
73946
  friend class ::CMatchSyntax;
 
73947
  friend class ::ExtGnu;
 
73948
  friend class ::ExtAC;
 
73949
  friend class ::ExtACBuilderCoupling;
 
73950
  friend class ::ExtACSyntaxCoupling;
 
73951
  friend class ::ExtACTree;
 
73952
  friend class ::ExtACKeywords;
 
73953
  friend class ::WinAsm;
 
73954
  friend class ::WinDeclSpecs;
 
73955
  friend class ::WinMemberExplSpec;
 
73956
  friend class ::WinTypeKeywords;
 
73957
  friend class ::PragmaOnceUnitState;
 
73958
  friend class ::PragmaOnce;
 
73959
  friend class ::CCExprResolve;
 
73960
  friend class ::CExprResolve;
 
73961
 
 
73962
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73963
 
 
73964
public:
 
73965
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
 
73966
  static const char *NodeId ();
 
73967
  const char *NodeName () const { return NodeId (); }
 
73968
};
 
73969
 
 
73970
 
 
73971
#line 73972 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73972
} // closed Puma
 
73973
class WinIfExists;
 
73974
class WinImportHandler;
 
73975
class WinMacros;
 
73976
class CMatchSyntax;
 
73977
class ExtGnu;
 
73978
class ExtAC;
 
73979
class ExtACBuilderCoupling;
 
73980
class ExtACSyntaxCoupling;
 
73981
class ExtACTree;
 
73982
class ExtACKeywords;
 
73983
class WinAsm;
 
73984
class WinDeclSpecs;
 
73985
class WinMemberExplSpec;
 
73986
class WinTypeKeywords;
 
73987
class PragmaOnceUnitState;
 
73988
class PragmaOnce;
 
73989
class CCExprResolve;
 
73990
class CExprResolve;
 
73991
namespace Puma {
 
73992
 
 
73993
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
73994
class CT_TemplateArgList : public CT_List {
 
73995
#line 73996 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
73996
  friend class ::WinIfExists;
 
73997
  friend class ::WinImportHandler;
 
73998
  friend class ::WinMacros;
 
73999
  friend class ::CMatchSyntax;
 
74000
  friend class ::ExtGnu;
 
74001
  friend class ::ExtAC;
 
74002
  friend class ::ExtACBuilderCoupling;
 
74003
  friend class ::ExtACSyntaxCoupling;
 
74004
  friend class ::ExtACTree;
 
74005
  friend class ::ExtACKeywords;
 
74006
  friend class ::WinAsm;
 
74007
  friend class ::WinDeclSpecs;
 
74008
  friend class ::WinMemberExplSpec;
 
74009
  friend class ::WinTypeKeywords;
 
74010
  friend class ::PragmaOnceUnitState;
 
74011
  friend class ::PragmaOnce;
 
74012
  friend class ::CCExprResolve;
 
74013
  friend class ::CExprResolve;
 
74014
 
 
74015
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74016
 
 
74017
public:
 
74018
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
 
74019
  static const char *NodeId ();
 
74020
  const char *NodeName () const { return NodeId (); }
 
74021
};
 
74022
 
 
74023
/*****************************************************************************/
 
74024
/*                                                                           */
 
74025
/*                              Expressions                                  */
 
74026
/*                                                                           */
 
74027
/*****************************************************************************/
 
74028
 
 
74029
 
 
74030
#line 74031 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74031
} // closed Puma
 
74032
class WinIfExists;
 
74033
class WinImportHandler;
 
74034
class WinMacros;
 
74035
class CMatchSyntax;
 
74036
class ExtGnu;
 
74037
class ExtAC;
 
74038
class ExtACBuilderCoupling;
 
74039
class ExtACSyntaxCoupling;
 
74040
class ExtACTree;
 
74041
class ExtACKeywords;
 
74042
class WinAsm;
 
74043
class WinDeclSpecs;
 
74044
class WinMemberExplSpec;
 
74045
class WinTypeKeywords;
 
74046
class PragmaOnceUnitState;
 
74047
class PragmaOnce;
 
74048
class CCExprResolve;
 
74049
class CExprResolve;
 
74050
namespace Puma {
 
74051
 
 
74052
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74053
class CT_Expression : public CTree, public CSemValue {
 
74054
#line 74055 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74055
  friend class ::WinIfExists;
 
74056
  friend class ::WinImportHandler;
 
74057
  friend class ::WinMacros;
 
74058
  friend class ::CMatchSyntax;
 
74059
  friend class ::ExtGnu;
 
74060
  friend class ::ExtAC;
 
74061
  friend class ::ExtACBuilderCoupling;
 
74062
  friend class ::ExtACSyntaxCoupling;
 
74063
  friend class ::ExtACTree;
 
74064
  friend class ::ExtACKeywords;
 
74065
  friend class ::WinAsm;
 
74066
  friend class ::WinDeclSpecs;
 
74067
  friend class ::WinMemberExplSpec;
 
74068
  friend class ::WinTypeKeywords;
 
74069
  friend class ::PragmaOnceUnitState;
 
74070
  friend class ::PragmaOnce;
 
74071
  friend class ::CCExprResolve;
 
74072
  friend class ::CExprResolve;
 
74073
 
 
74074
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74075
 
 
74076
protected:
 
74077
  CT_Expression () {}
 
74078
 
 
74079
public:
 
74080
  static const char *NodeId ();
 
74081
  const char *NodeName () const { return NodeId (); }
 
74082
  CTypeInfo *Type () const { return type; }
 
74083
  CExprValue *Value () const { return value; }
 
74084
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
74085
   private:
 
74086
  typedef CT_Expression CCExprResolveExpr;
 
74087
 
 
74088
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74089
 public :
 
74090
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74091
  typedef CT_Expression CExprResolveExpr;
 
74092
 
 
74093
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74094
 public :
 
74095
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74096
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74097
};
 
74098
 
 
74099
 
 
74100
#line 74101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74101
} // closed Puma
 
74102
class WinIfExists;
 
74103
class WinImportHandler;
 
74104
class WinMacros;
 
74105
class CMatchSyntax;
 
74106
class ExtGnu;
 
74107
class ExtAC;
 
74108
class ExtACBuilderCoupling;
 
74109
class ExtACSyntaxCoupling;
 
74110
class ExtACTree;
 
74111
class ExtACKeywords;
 
74112
class WinAsm;
 
74113
class WinDeclSpecs;
 
74114
class WinMemberExplSpec;
 
74115
class WinTypeKeywords;
 
74116
class PragmaOnceUnitState;
 
74117
class PragmaOnce;
 
74118
class CCExprResolve;
 
74119
class CExprResolve;
 
74120
namespace Puma {
 
74121
 
 
74122
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74123
class CT_String : public CT_List, public CSemValue {
 
74124
#line 74125 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74125
  friend class ::WinIfExists;
 
74126
  friend class ::WinImportHandler;
 
74127
  friend class ::WinMacros;
 
74128
  friend class ::CMatchSyntax;
 
74129
  friend class ::ExtGnu;
 
74130
  friend class ::ExtAC;
 
74131
  friend class ::ExtACBuilderCoupling;
 
74132
  friend class ::ExtACSyntaxCoupling;
 
74133
  friend class ::ExtACTree;
 
74134
  friend class ::ExtACKeywords;
 
74135
  friend class ::WinAsm;
 
74136
  friend class ::WinDeclSpecs;
 
74137
  friend class ::WinMemberExplSpec;
 
74138
  friend class ::WinTypeKeywords;
 
74139
  friend class ::PragmaOnceUnitState;
 
74140
  friend class ::PragmaOnce;
 
74141
  friend class ::CCExprResolve;
 
74142
  friend class ::CExprResolve;
 
74143
 
 
74144
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74145
 
 
74146
public:
 
74147
  CT_String (int size) : CT_List (size, 1) {}
 
74148
  static const char *NodeId ();
 
74149
  const char *NodeName () const { return NodeId (); }
 
74150
 
 
74151
  CTypeInfo *Type () const { return type; }
 
74152
  CExprValue *Value () const { return value; }
 
74153
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
74154
   private:
 
74155
  typedef CT_String CCExprResolveExpr;
 
74156
 
 
74157
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74158
 public :
 
74159
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74160
  typedef CT_String CExprResolveExpr;
 
74161
 
 
74162
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74163
 public :
 
74164
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74165
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74166
};
 
74167
 
 
74168
 
 
74169
#line 74170 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74170
} // closed Puma
 
74171
class WinIfExists;
 
74172
class WinImportHandler;
 
74173
class WinMacros;
 
74174
class CMatchSyntax;
 
74175
class ExtGnu;
 
74176
class ExtAC;
 
74177
class ExtACBuilderCoupling;
 
74178
class ExtACSyntaxCoupling;
 
74179
class ExtACTree;
 
74180
class ExtACKeywords;
 
74181
class WinAsm;
 
74182
class WinDeclSpecs;
 
74183
class WinMemberExplSpec;
 
74184
class WinTypeKeywords;
 
74185
class PragmaOnceUnitState;
 
74186
class PragmaOnce;
 
74187
class CCExprResolve;
 
74188
class CExprResolve;
 
74189
namespace Puma {
 
74190
 
 
74191
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74192
class CT_WideString : public CT_String {
 
74193
#line 74194 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74194
  friend class ::WinIfExists;
 
74195
  friend class ::WinImportHandler;
 
74196
  friend class ::WinMacros;
 
74197
  friend class ::CMatchSyntax;
 
74198
  friend class ::ExtGnu;
 
74199
  friend class ::ExtAC;
 
74200
  friend class ::ExtACBuilderCoupling;
 
74201
  friend class ::ExtACSyntaxCoupling;
 
74202
  friend class ::ExtACTree;
 
74203
  friend class ::ExtACKeywords;
 
74204
  friend class ::WinAsm;
 
74205
  friend class ::WinDeclSpecs;
 
74206
  friend class ::WinMemberExplSpec;
 
74207
  friend class ::WinTypeKeywords;
 
74208
  friend class ::PragmaOnceUnitState;
 
74209
  friend class ::PragmaOnce;
 
74210
  friend class ::CCExprResolve;
 
74211
  friend class ::CExprResolve;
 
74212
 
 
74213
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74214
 
 
74215
public:
 
74216
  CT_WideString (int size) : CT_String (size) {}
 
74217
  static const char *NodeId ();
 
74218
  const char *NodeName () const { return NodeId (); }
 
74219
   private:
 
74220
  typedef CT_WideString CCExprResolveExpr;
 
74221
 
 
74222
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74223
 public :
 
74224
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74225
  typedef CT_WideString CExprResolveExpr;
 
74226
 
 
74227
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74228
 public :
 
74229
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74230
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74231
};
 
74232
 
 
74233
 
 
74234
#line 74235 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74235
} // closed Puma
 
74236
class WinIfExists;
 
74237
class WinImportHandler;
 
74238
class WinMacros;
 
74239
class CMatchSyntax;
 
74240
class ExtGnu;
 
74241
class ExtAC;
 
74242
class ExtACBuilderCoupling;
 
74243
class ExtACSyntaxCoupling;
 
74244
class ExtACTree;
 
74245
class ExtACKeywords;
 
74246
class WinAsm;
 
74247
class WinDeclSpecs;
 
74248
class WinMemberExplSpec;
 
74249
class WinTypeKeywords;
 
74250
class PragmaOnceUnitState;
 
74251
class PragmaOnce;
 
74252
class CCExprResolve;
 
74253
class CExprResolve;
 
74254
namespace Puma {
 
74255
 
 
74256
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74257
class CT_Integer : public CT_Expression {
 
74258
#line 74259 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74259
  friend class ::WinIfExists;
 
74260
  friend class ::WinImportHandler;
 
74261
  friend class ::WinMacros;
 
74262
  friend class ::CMatchSyntax;
 
74263
  friend class ::ExtGnu;
 
74264
  friend class ::ExtAC;
 
74265
  friend class ::ExtACBuilderCoupling;
 
74266
  friend class ::ExtACSyntaxCoupling;
 
74267
  friend class ::ExtACTree;
 
74268
  friend class ::ExtACKeywords;
 
74269
  friend class ::WinAsm;
 
74270
  friend class ::WinDeclSpecs;
 
74271
  friend class ::WinMemberExplSpec;
 
74272
  friend class ::WinTypeKeywords;
 
74273
  friend class ::PragmaOnceUnitState;
 
74274
  friend class ::PragmaOnce;
 
74275
  friend class ::CCExprResolve;
 
74276
  friend class ::CExprResolve;
 
74277
 
 
74278
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74279
 
 
74280
  CTree *_value;  // CT_Token
 
74281
 
 
74282
public:
 
74283
  CT_Integer (CTree *t) : _value (t) {}
 
74284
  static const char *NodeId ();
 
74285
  const char *NodeName () const { return NodeId (); }
 
74286
  int Sons () const { return _value ? 1 : 0; }
 
74287
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
 
74288
  void ReplaceSon (CTree *old_son, CTree *new_son) 
 
74289
   { if (old_son == _value) _value = new_son; }
 
74290
   private:
 
74291
  typedef CT_Integer CCExprResolveExpr;
 
74292
 
 
74293
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74294
 public :
 
74295
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74296
  typedef CT_Integer CExprResolveExpr;
 
74297
 
 
74298
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74299
 public :
 
74300
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74301
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74302
};
 
74303
 
 
74304
 
 
74305
#line 74306 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74306
} // closed Puma
 
74307
class WinIfExists;
 
74308
class WinImportHandler;
 
74309
class WinMacros;
 
74310
class CMatchSyntax;
 
74311
class ExtGnu;
 
74312
class ExtAC;
 
74313
class ExtACBuilderCoupling;
 
74314
class ExtACSyntaxCoupling;
 
74315
class ExtACTree;
 
74316
class ExtACKeywords;
 
74317
class WinAsm;
 
74318
class WinDeclSpecs;
 
74319
class WinMemberExplSpec;
 
74320
class WinTypeKeywords;
 
74321
class PragmaOnceUnitState;
 
74322
class PragmaOnce;
 
74323
class CCExprResolve;
 
74324
class CExprResolve;
 
74325
namespace Puma {
 
74326
 
 
74327
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74328
class CT_Character : public CT_Expression {
 
74329
#line 74330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74330
  friend class ::WinIfExists;
 
74331
  friend class ::WinImportHandler;
 
74332
  friend class ::WinMacros;
 
74333
  friend class ::CMatchSyntax;
 
74334
  friend class ::ExtGnu;
 
74335
  friend class ::ExtAC;
 
74336
  friend class ::ExtACBuilderCoupling;
 
74337
  friend class ::ExtACSyntaxCoupling;
 
74338
  friend class ::ExtACTree;
 
74339
  friend class ::ExtACKeywords;
 
74340
  friend class ::WinAsm;
 
74341
  friend class ::WinDeclSpecs;
 
74342
  friend class ::WinMemberExplSpec;
 
74343
  friend class ::WinTypeKeywords;
 
74344
  friend class ::PragmaOnceUnitState;
 
74345
  friend class ::PragmaOnce;
 
74346
  friend class ::CCExprResolve;
 
74347
  friend class ::CExprResolve;
 
74348
 
 
74349
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74350
 
 
74351
  CTree *_value;  // CT_Token
 
74352
 
 
74353
public:
 
74354
  CT_Character (CTree *t) : _value (t) {}
 
74355
  static const char *NodeId ();
 
74356
  const char *NodeName () const { return NodeId (); }
 
74357
  int Sons () const { return 1; }
 
74358
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
 
74359
  void ReplaceSon (CTree *old_son, CTree *new_son) 
 
74360
   { if (old_son == _value) _value = new_son; }
 
74361
   private:
 
74362
  typedef CT_Character CCExprResolveExpr;
 
74363
 
 
74364
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74365
 public :
 
74366
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74367
  typedef CT_Character CExprResolveExpr;
 
74368
 
 
74369
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74370
 public :
 
74371
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74372
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74373
};
 
74374
 
 
74375
 
 
74376
#line 74377 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74377
} // closed Puma
 
74378
class WinIfExists;
 
74379
class WinImportHandler;
 
74380
class WinMacros;
 
74381
class CMatchSyntax;
 
74382
class ExtGnu;
 
74383
class ExtAC;
 
74384
class ExtACBuilderCoupling;
 
74385
class ExtACSyntaxCoupling;
 
74386
class ExtACTree;
 
74387
class ExtACKeywords;
 
74388
class WinAsm;
 
74389
class WinDeclSpecs;
 
74390
class WinMemberExplSpec;
 
74391
class WinTypeKeywords;
 
74392
class PragmaOnceUnitState;
 
74393
class PragmaOnce;
 
74394
class CCExprResolve;
 
74395
class CExprResolve;
 
74396
namespace Puma {
 
74397
 
 
74398
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74399
class CT_WideCharacter : public CT_Character {
 
74400
#line 74401 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74401
  friend class ::WinIfExists;
 
74402
  friend class ::WinImportHandler;
 
74403
  friend class ::WinMacros;
 
74404
  friend class ::CMatchSyntax;
 
74405
  friend class ::ExtGnu;
 
74406
  friend class ::ExtAC;
 
74407
  friend class ::ExtACBuilderCoupling;
 
74408
  friend class ::ExtACSyntaxCoupling;
 
74409
  friend class ::ExtACTree;
 
74410
  friend class ::ExtACKeywords;
 
74411
  friend class ::WinAsm;
 
74412
  friend class ::WinDeclSpecs;
 
74413
  friend class ::WinMemberExplSpec;
 
74414
  friend class ::WinTypeKeywords;
 
74415
  friend class ::PragmaOnceUnitState;
 
74416
  friend class ::PragmaOnce;
 
74417
  friend class ::CCExprResolve;
 
74418
  friend class ::CExprResolve;
 
74419
 
 
74420
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74421
 
 
74422
  CTree *_value;  // CT_Token
 
74423
 
 
74424
public:
 
74425
  CT_WideCharacter (CTree *t) : CT_Character (t) {}
 
74426
  static const char *NodeId ();
 
74427
  const char *NodeName () const { return NodeId (); }
 
74428
  void ReplaceSon (CTree *old_son, CTree *new_son) 
 
74429
   { if (old_son == _value) _value = new_son; }
 
74430
   private:
 
74431
  typedef CT_WideCharacter CCExprResolveExpr;
 
74432
 
 
74433
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74434
 public :
 
74435
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74436
  typedef CT_WideCharacter CExprResolveExpr;
 
74437
 
 
74438
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74439
 public :
 
74440
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74441
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74442
};
 
74443
 
 
74444
 
 
74445
#line 74446 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74446
} // closed Puma
 
74447
class WinIfExists;
 
74448
class WinImportHandler;
 
74449
class WinMacros;
 
74450
class CMatchSyntax;
 
74451
class ExtGnu;
 
74452
class ExtAC;
 
74453
class ExtACBuilderCoupling;
 
74454
class ExtACSyntaxCoupling;
 
74455
class ExtACTree;
 
74456
class ExtACKeywords;
 
74457
class WinAsm;
 
74458
class WinDeclSpecs;
 
74459
class WinMemberExplSpec;
 
74460
class WinTypeKeywords;
 
74461
class PragmaOnceUnitState;
 
74462
class PragmaOnce;
 
74463
class CCExprResolve;
 
74464
class CExprResolve;
 
74465
namespace Puma {
 
74466
 
 
74467
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74468
class CT_Float : public CT_Expression {
 
74469
#line 74470 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74470
  friend class ::WinIfExists;
 
74471
  friend class ::WinImportHandler;
 
74472
  friend class ::WinMacros;
 
74473
  friend class ::CMatchSyntax;
 
74474
  friend class ::ExtGnu;
 
74475
  friend class ::ExtAC;
 
74476
  friend class ::ExtACBuilderCoupling;
 
74477
  friend class ::ExtACSyntaxCoupling;
 
74478
  friend class ::ExtACTree;
 
74479
  friend class ::ExtACKeywords;
 
74480
  friend class ::WinAsm;
 
74481
  friend class ::WinDeclSpecs;
 
74482
  friend class ::WinMemberExplSpec;
 
74483
  friend class ::WinTypeKeywords;
 
74484
  friend class ::PragmaOnceUnitState;
 
74485
  friend class ::PragmaOnce;
 
74486
  friend class ::CCExprResolve;
 
74487
  friend class ::CExprResolve;
 
74488
 
 
74489
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74490
 
 
74491
  CTree *_value;  // CT_Token
 
74492
 
 
74493
public:
 
74494
  CT_Float (CTree *t) : _value (t) {}
 
74495
  static const char *NodeId ();
 
74496
  const char *NodeName () const { return NodeId (); }
 
74497
  int Sons () const { return 1; }
 
74498
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
 
74499
  void ReplaceSon (CTree *old_son, CTree *new_son) 
 
74500
   { if (old_son == _value) _value = new_son; }
 
74501
   private:
 
74502
  typedef CT_Float CCExprResolveExpr;
 
74503
 
 
74504
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74505
 public :
 
74506
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74507
  typedef CT_Float CExprResolveExpr;
 
74508
 
 
74509
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74510
 public :
 
74511
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74512
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74513
};
 
74514
 
 
74515
 
 
74516
#line 74517 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74517
} // closed Puma
 
74518
class WinIfExists;
 
74519
class WinImportHandler;
 
74520
class WinMacros;
 
74521
class CMatchSyntax;
 
74522
class ExtGnu;
 
74523
class ExtAC;
 
74524
class ExtACBuilderCoupling;
 
74525
class ExtACSyntaxCoupling;
 
74526
class ExtACTree;
 
74527
class ExtACKeywords;
 
74528
class WinAsm;
 
74529
class WinDeclSpecs;
 
74530
class WinMemberExplSpec;
 
74531
class WinTypeKeywords;
 
74532
class PragmaOnceUnitState;
 
74533
class PragmaOnce;
 
74534
class CCExprResolve;
 
74535
class CExprResolve;
 
74536
namespace Puma {
 
74537
 
 
74538
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74539
class CT_Bool : public CT_Expression {
 
74540
#line 74541 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74541
  friend class ::WinIfExists;
 
74542
  friend class ::WinImportHandler;
 
74543
  friend class ::WinMacros;
 
74544
  friend class ::CMatchSyntax;
 
74545
  friend class ::ExtGnu;
 
74546
  friend class ::ExtAC;
 
74547
  friend class ::ExtACBuilderCoupling;
 
74548
  friend class ::ExtACSyntaxCoupling;
 
74549
  friend class ::ExtACTree;
 
74550
  friend class ::ExtACKeywords;
 
74551
  friend class ::WinAsm;
 
74552
  friend class ::WinDeclSpecs;
 
74553
  friend class ::WinMemberExplSpec;
 
74554
  friend class ::WinTypeKeywords;
 
74555
  friend class ::PragmaOnceUnitState;
 
74556
  friend class ::PragmaOnce;
 
74557
  friend class ::CCExprResolve;
 
74558
  friend class ::CExprResolve;
 
74559
 
 
74560
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74561
 
 
74562
  CTree *_value;  // CT_Token
 
74563
 
 
74564
public:
 
74565
  CT_Bool (CTree *t) : _value (t) {}
 
74566
  static const char *NodeId ();
 
74567
  const char *NodeName () const { return NodeId (); }
 
74568
  int Sons () const { return 1; }
 
74569
  CTree *Son (int n) const { return (n == 0) ? _value : (CTree*)0; }
 
74570
  void ReplaceSon (CTree *old_son, CTree *new_son) 
 
74571
   { if (old_son == _value) _value = new_son; }
 
74572
   private:
 
74573
  typedef CT_Bool CCExprResolveExpr;
 
74574
 
 
74575
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74576
 public :
 
74577
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74578
  typedef CT_Bool CExprResolveExpr;
 
74579
 
 
74580
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74581
 public :
 
74582
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74583
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74584
};
 
74585
 
 
74586
 
 
74587
#line 74588 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74588
} // closed Puma
 
74589
class WinIfExists;
 
74590
class WinImportHandler;
 
74591
class WinMacros;
 
74592
class CMatchSyntax;
 
74593
class ExtGnu;
 
74594
class ExtAC;
 
74595
class ExtACBuilderCoupling;
 
74596
class ExtACSyntaxCoupling;
 
74597
class ExtACTree;
 
74598
class ExtACKeywords;
 
74599
class WinAsm;
 
74600
class WinDeclSpecs;
 
74601
class WinMemberExplSpec;
 
74602
class WinTypeKeywords;
 
74603
class PragmaOnceUnitState;
 
74604
class PragmaOnce;
 
74605
class CCExprResolve;
 
74606
class CExprResolve;
 
74607
namespace Puma {
 
74608
 
 
74609
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74610
class CT_BracedExpr : public CT_Expression {
 
74611
#line 74612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74612
  friend class ::WinIfExists;
 
74613
  friend class ::WinImportHandler;
 
74614
  friend class ::WinMacros;
 
74615
  friend class ::CMatchSyntax;
 
74616
  friend class ::ExtGnu;
 
74617
  friend class ::ExtAC;
 
74618
  friend class ::ExtACBuilderCoupling;
 
74619
  friend class ::ExtACSyntaxCoupling;
 
74620
  friend class ::ExtACTree;
 
74621
  friend class ::ExtACKeywords;
 
74622
  friend class ::WinAsm;
 
74623
  friend class ::WinDeclSpecs;
 
74624
  friend class ::WinMemberExplSpec;
 
74625
  friend class ::WinTypeKeywords;
 
74626
  friend class ::PragmaOnceUnitState;
 
74627
  friend class ::PragmaOnce;
 
74628
  friend class ::CCExprResolve;
 
74629
  friend class ::CExprResolve;
 
74630
 
 
74631
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74632
 
 
74633
  CTree *sons[3]; // open, expr, close
 
74634
 
 
74635
public:
 
74636
  CT_BracedExpr (CTree *o, CTree *e, CTree *c) { 
 
74637
    sons[0] = o; sons[1] = e; sons[2] = c; 
 
74638
  }
 
74639
  static const char *NodeId ();
 
74640
  const char *NodeName () const { return NodeId (); }
 
74641
  int Sons () const { return 3; }
 
74642
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
74643
  CTree *Expr () const { return sons[1]; }
 
74644
  CTypeInfo *Type () const { return Expr ()->Type (); }
 
74645
  CExprValue *Value () const { return Expr ()->Value (); }
 
74646
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
74647
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
74648
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
74649
  }
 
74650
   private:
 
74651
  typedef CT_BracedExpr CCExprResolveExpr;
 
74652
 
 
74653
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74654
 public :
 
74655
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74656
  typedef CT_BracedExpr CExprResolveExpr;
 
74657
 
 
74658
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74659
 public :
 
74660
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74661
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74662
};
 
74663
 
 
74664
 
 
74665
#line 74666 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74666
} // closed Puma
 
74667
class WinIfExists;
 
74668
class WinImportHandler;
 
74669
class WinMacros;
 
74670
class CMatchSyntax;
 
74671
class ExtGnu;
 
74672
class ExtAC;
 
74673
class ExtACBuilderCoupling;
 
74674
class ExtACSyntaxCoupling;
 
74675
class ExtACTree;
 
74676
class ExtACKeywords;
 
74677
class WinAsm;
 
74678
class WinDeclSpecs;
 
74679
class WinMemberExplSpec;
 
74680
class WinTypeKeywords;
 
74681
class PragmaOnceUnitState;
 
74682
class PragmaOnce;
 
74683
class CCExprResolve;
 
74684
class CExprResolve;
 
74685
namespace Puma {
 
74686
 
 
74687
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74688
class CT_SimpleName : public CT_List, public Printable, 
 
74689
                      public CSemValue, public CSemObject {
 
74690
#line 74691 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74691
  friend class ::WinIfExists;
 
74692
  friend class ::WinImportHandler;
 
74693
  friend class ::WinMacros;
 
74694
  friend class ::CMatchSyntax;
 
74695
  friend class ::ExtGnu;
 
74696
  friend class ::ExtAC;
 
74697
  friend class ::ExtACBuilderCoupling;
 
74698
  friend class ::ExtACSyntaxCoupling;
 
74699
  friend class ::ExtACTree;
 
74700
  friend class ::ExtACKeywords;
 
74701
  friend class ::WinAsm;
 
74702
  friend class ::WinDeclSpecs;
 
74703
  friend class ::WinMemberExplSpec;
 
74704
  friend class ::WinTypeKeywords;
 
74705
  friend class ::PragmaOnceUnitState;
 
74706
  friend class ::PragmaOnce;
 
74707
  friend class ::CCExprResolve;
 
74708
  friend class ::CExprResolve;
 
74709
 
 
74710
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74711
 
 
74712
protected:
 
74713
  CT_SimpleName (int size) : CT_List (size, 1) {}
 
74714
  CT_SimpleName (int size, int properties) : 
 
74715
    CT_List (size, 2, properties) {}
 
74716
  
 
74717
public:
 
74718
  CT_SimpleName (CTree *n) : CT_List (1, 1) { AddSon (n); }
 
74719
  static const char *NodeId ();
 
74720
  const char *NodeName () const { return NodeId (); }
 
74721
  virtual const char *Text () const 
 
74722
   { return Son (Sons ()-1)->token ()->text (); }
 
74723
  virtual void print (ostream &os) const { os << Text (); }
 
74724
  virtual CT_SimpleName *Name () const { return (CT_SimpleName*)this; }
 
74725
  CTypeInfo *Type () const { return type; }
 
74726
  CExprValue *Value () const { return value; }
 
74727
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
74728
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
74729
  // special new / delete with reusing memory
 
74730
  void *operator new (size_t);
 
74731
  void  operator delete (void *);
 
74732
  // classification function
 
74733
  virtual CT_SimpleName *IsSimpleName () { return this; }  
 
74734
   private:
 
74735
  typedef CT_SimpleName CCExprResolveExpr;
 
74736
 
 
74737
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74738
 public :
 
74739
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74740
  typedef CT_SimpleName CExprResolveExpr;
 
74741
 
 
74742
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74743
 public :
 
74744
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74745
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74746
};
 
74747
 
 
74748
 
 
74749
#line 74750 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74750
} // closed Puma
 
74751
class WinIfExists;
 
74752
class WinImportHandler;
 
74753
class WinMacros;
 
74754
class CMatchSyntax;
 
74755
class ExtGnu;
 
74756
class ExtAC;
 
74757
class ExtACBuilderCoupling;
 
74758
class ExtACSyntaxCoupling;
 
74759
class ExtACTree;
 
74760
class ExtACKeywords;
 
74761
class WinAsm;
 
74762
class WinDeclSpecs;
 
74763
class WinMemberExplSpec;
 
74764
class WinTypeKeywords;
 
74765
class PragmaOnceUnitState;
 
74766
class PragmaOnce;
 
74767
class CCExprResolve;
 
74768
class CExprResolve;
 
74769
namespace Puma {
 
74770
 
 
74771
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74772
class CT_SpecialName : public CT_SimpleName {
 
74773
#line 74774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74774
  friend class ::WinIfExists;
 
74775
  friend class ::WinImportHandler;
 
74776
  friend class ::WinMacros;
 
74777
  friend class ::CMatchSyntax;
 
74778
  friend class ::ExtGnu;
 
74779
  friend class ::ExtAC;
 
74780
  friend class ::ExtACBuilderCoupling;
 
74781
  friend class ::ExtACSyntaxCoupling;
 
74782
  friend class ::ExtACTree;
 
74783
  friend class ::ExtACKeywords;
 
74784
  friend class ::WinAsm;
 
74785
  friend class ::WinDeclSpecs;
 
74786
  friend class ::WinMemberExplSpec;
 
74787
  friend class ::WinTypeKeywords;
 
74788
  friend class ::PragmaOnceUnitState;
 
74789
  friend class ::PragmaOnce;
 
74790
  friend class ::CCExprResolve;
 
74791
  friend class ::CExprResolve;
 
74792
 
 
74793
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74794
 
 
74795
  char *_name;
 
74796
  
 
74797
protected:
 
74798
  CT_SpecialName (int size = 1) : CT_SimpleName (size), _name (0) {}
 
74799
  
 
74800
public:
 
74801
  ~CT_SpecialName () { if (_name) delete[] _name; }
 
74802
  const char *Text () const { return _name; }
 
74803
  void Name (const char *n) { 
 
74804
    if (n) { 
 
74805
      _name = new char[strlen(n) + 1];
 
74806
      strcpy (_name,n);
 
74807
    }
 
74808
  }
 
74809
  // special new / delete with reusing memory
 
74810
  void *operator new (size_t);
 
74811
  void  operator delete (void *);
 
74812
   private:
 
74813
  typedef CT_SpecialName CCExprResolveExpr;
 
74814
 
 
74815
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74816
 public :
 
74817
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74818
  typedef CT_SpecialName CExprResolveExpr;
 
74819
 
 
74820
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74821
 public :
 
74822
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74823
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74824
};
 
74825
 
 
74826
 
 
74827
#line 74828 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74828
} // closed Puma
 
74829
class WinIfExists;
 
74830
class WinImportHandler;
 
74831
class WinMacros;
 
74832
class CMatchSyntax;
 
74833
class ExtGnu;
 
74834
class ExtAC;
 
74835
class ExtACBuilderCoupling;
 
74836
class ExtACSyntaxCoupling;
 
74837
class ExtACTree;
 
74838
class ExtACKeywords;
 
74839
class WinAsm;
 
74840
class WinDeclSpecs;
 
74841
class WinMemberExplSpec;
 
74842
class WinTypeKeywords;
 
74843
class PragmaOnceUnitState;
 
74844
class PragmaOnce;
 
74845
class CCExprResolve;
 
74846
class CExprResolve;
 
74847
namespace Puma {
 
74848
 
 
74849
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74850
class CT_PrivateName : public CT_SpecialName {
 
74851
#line 74852 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74852
  friend class ::WinIfExists;
 
74853
  friend class ::WinImportHandler;
 
74854
  friend class ::WinMacros;
 
74855
  friend class ::CMatchSyntax;
 
74856
  friend class ::ExtGnu;
 
74857
  friend class ::ExtAC;
 
74858
  friend class ::ExtACBuilderCoupling;
 
74859
  friend class ::ExtACSyntaxCoupling;
 
74860
  friend class ::ExtACTree;
 
74861
  friend class ::ExtACKeywords;
 
74862
  friend class ::WinAsm;
 
74863
  friend class ::WinDeclSpecs;
 
74864
  friend class ::WinMemberExplSpec;
 
74865
  friend class ::WinTypeKeywords;
 
74866
  friend class ::PragmaOnceUnitState;
 
74867
  friend class ::PragmaOnce;
 
74868
  friend class ::CCExprResolve;
 
74869
  friend class ::CExprResolve;
 
74870
 
 
74871
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74872
 
 
74873
public:
 
74874
  CT_PrivateName (const char *n) { Name (n); }
 
74875
  static const char *NodeId ();
 
74876
  const char *NodeName () const { return NodeId (); }
 
74877
  int Sons () const { return 0; }
 
74878
  CTree *Son (int n) const { return (CTree*)0; }
 
74879
  // special new / delete with reusing memory
 
74880
  void *operator new (size_t);
 
74881
  void  operator delete (void *);
 
74882
   private:
 
74883
  typedef CT_PrivateName CCExprResolveExpr;
 
74884
 
 
74885
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74886
 public :
 
74887
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74888
  typedef CT_PrivateName CExprResolveExpr;
 
74889
 
 
74890
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74891
 public :
 
74892
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74893
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74894
};
 
74895
 
 
74896
 
 
74897
#line 74898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74898
} // closed Puma
 
74899
class WinIfExists;
 
74900
class WinImportHandler;
 
74901
class WinMacros;
 
74902
class CMatchSyntax;
 
74903
class ExtGnu;
 
74904
class ExtAC;
 
74905
class ExtACBuilderCoupling;
 
74906
class ExtACSyntaxCoupling;
 
74907
class ExtACTree;
 
74908
class ExtACKeywords;
 
74909
class WinAsm;
 
74910
class WinDeclSpecs;
 
74911
class WinMemberExplSpec;
 
74912
class WinTypeKeywords;
 
74913
class PragmaOnceUnitState;
 
74914
class PragmaOnce;
 
74915
class CCExprResolve;
 
74916
class CExprResolve;
 
74917
namespace Puma {
 
74918
 
 
74919
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74920
class CT_DestructorName : public CT_SpecialName {
 
74921
#line 74922 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74922
  friend class ::WinIfExists;
 
74923
  friend class ::WinImportHandler;
 
74924
  friend class ::WinMacros;
 
74925
  friend class ::CMatchSyntax;
 
74926
  friend class ::ExtGnu;
 
74927
  friend class ::ExtAC;
 
74928
  friend class ::ExtACBuilderCoupling;
 
74929
  friend class ::ExtACSyntaxCoupling;
 
74930
  friend class ::ExtACTree;
 
74931
  friend class ::ExtACKeywords;
 
74932
  friend class ::WinAsm;
 
74933
  friend class ::WinDeclSpecs;
 
74934
  friend class ::WinMemberExplSpec;
 
74935
  friend class ::WinTypeKeywords;
 
74936
  friend class ::PragmaOnceUnitState;
 
74937
  friend class ::PragmaOnce;
 
74938
  friend class ::CCExprResolve;
 
74939
  friend class ::CExprResolve;
 
74940
 
 
74941
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74942
 
 
74943
public:
 
74944
  CT_DestructorName (CTree *, CTree *);
 
74945
  static const char *NodeId ();
 
74946
  const char *NodeName () const { return NodeId (); }
 
74947
  // special new / delete with reusing memory
 
74948
  void *operator new (size_t);
 
74949
  void  operator delete (void *);
 
74950
   private:
 
74951
  typedef CT_DestructorName CCExprResolveExpr;
 
74952
 
 
74953
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
74954
 public :
 
74955
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
74956
  typedef CT_DestructorName CExprResolveExpr;
 
74957
 
 
74958
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
74959
 public :
 
74960
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
74961
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74962
};
 
74963
 
 
74964
 
 
74965
#line 74966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74966
} // closed Puma
 
74967
class WinIfExists;
 
74968
class WinImportHandler;
 
74969
class WinMacros;
 
74970
class CMatchSyntax;
 
74971
class ExtGnu;
 
74972
class ExtAC;
 
74973
class ExtACBuilderCoupling;
 
74974
class ExtACSyntaxCoupling;
 
74975
class ExtACTree;
 
74976
class ExtACKeywords;
 
74977
class WinAsm;
 
74978
class WinDeclSpecs;
 
74979
class WinMemberExplSpec;
 
74980
class WinTypeKeywords;
 
74981
class PragmaOnceUnitState;
 
74982
class PragmaOnce;
 
74983
class CCExprResolve;
 
74984
class CExprResolve;
 
74985
namespace Puma {
 
74986
 
 
74987
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
74988
class CT_TemplateName : public CT_SpecialName {
 
74989
#line 74990 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
74990
  friend class ::WinIfExists;
 
74991
  friend class ::WinImportHandler;
 
74992
  friend class ::WinMacros;
 
74993
  friend class ::CMatchSyntax;
 
74994
  friend class ::ExtGnu;
 
74995
  friend class ::ExtAC;
 
74996
  friend class ::ExtACBuilderCoupling;
 
74997
  friend class ::ExtACSyntaxCoupling;
 
74998
  friend class ::ExtACTree;
 
74999
  friend class ::ExtACKeywords;
 
75000
  friend class ::WinAsm;
 
75001
  friend class ::WinDeclSpecs;
 
75002
  friend class ::WinMemberExplSpec;
 
75003
  friend class ::WinTypeKeywords;
 
75004
  friend class ::PragmaOnceUnitState;
 
75005
  friend class ::PragmaOnce;
 
75006
  friend class ::CCExprResolve;
 
75007
  friend class ::CExprResolve;
 
75008
 
 
75009
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75010
 
 
75011
public:
 
75012
  CT_TemplateName (CTree *n, CTree *a) 
 
75013
   { AddSon (n); AddSon (a); }
 
75014
  static const char *NodeId ();
 
75015
  const char *NodeName () const { return NodeId (); }
 
75016
  CT_TemplateArgList *Arguments () const 
 
75017
   { return (CT_TemplateArgList*)Son (Sons ()-1); }
 
75018
  CT_SimpleName *TemplateName () const 
 
75019
   { return (CT_SimpleName*)Son (Sons ()-2); }
 
75020
  // may change in the future
 
75021
  const char *Text () const { return TemplateName ()->Text (); }
 
75022
  // special new / delete with reusing memory
 
75023
  void *operator new (size_t);
 
75024
  void  operator delete (void *);
 
75025
   private:
 
75026
  typedef CT_TemplateName CCExprResolveExpr;
 
75027
 
 
75028
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75029
 public :
 
75030
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75031
  typedef CT_TemplateName CExprResolveExpr;
 
75032
 
 
75033
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75034
 public :
 
75035
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75036
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75037
};
 
75038
 
 
75039
 
 
75040
#line 75041 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75041
} // closed Puma
 
75042
class WinIfExists;
 
75043
class WinImportHandler;
 
75044
class WinMacros;
 
75045
class CMatchSyntax;
 
75046
class ExtGnu;
 
75047
class ExtAC;
 
75048
class ExtACBuilderCoupling;
 
75049
class ExtACSyntaxCoupling;
 
75050
class ExtACTree;
 
75051
class ExtACKeywords;
 
75052
class WinAsm;
 
75053
class WinDeclSpecs;
 
75054
class WinMemberExplSpec;
 
75055
class WinTypeKeywords;
 
75056
class PragmaOnceUnitState;
 
75057
class PragmaOnce;
 
75058
class CCExprResolve;
 
75059
class CExprResolve;
 
75060
namespace Puma {
 
75061
 
 
75062
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75063
class CT_OperatorName : public CT_SpecialName {
 
75064
#line 75065 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75065
  friend class ::WinIfExists;
 
75066
  friend class ::WinImportHandler;
 
75067
  friend class ::WinMacros;
 
75068
  friend class ::CMatchSyntax;
 
75069
  friend class ::ExtGnu;
 
75070
  friend class ::ExtAC;
 
75071
  friend class ::ExtACBuilderCoupling;
 
75072
  friend class ::ExtACSyntaxCoupling;
 
75073
  friend class ::ExtACTree;
 
75074
  friend class ::ExtACKeywords;
 
75075
  friend class ::WinAsm;
 
75076
  friend class ::WinDeclSpecs;
 
75077
  friend class ::WinMemberExplSpec;
 
75078
  friend class ::WinTypeKeywords;
 
75079
  friend class ::PragmaOnceUnitState;
 
75080
  friend class ::PragmaOnce;
 
75081
  friend class ::CCExprResolve;
 
75082
  friend class ::CExprResolve;
 
75083
 
 
75084
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75085
 
 
75086
  int _oper;
 
75087
 
 
75088
public:
 
75089
  enum { // complex operators
 
75090
    FCT_CALL = -100,
 
75091
    SUBSCRIPT,
 
75092
    NEW_ARRAY,
 
75093
    DEL_ARRAY
 
75094
  };
 
75095
 
 
75096
public:
 
75097
  CT_OperatorName (CTree *);
 
75098
  CT_OperatorName (CTree *, CTree *, CTree *, CTree *);
 
75099
  static const char *NodeId ();
 
75100
  const char *NodeName () const { return NodeId (); }
 
75101
  int Operator () const { return _oper; }
 
75102
  // special new / delete with reusing memory
 
75103
  void *operator new (size_t);
 
75104
  void  operator delete (void *);
 
75105
   private:
 
75106
  typedef CT_OperatorName CCExprResolveExpr;
 
75107
 
 
75108
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75109
 public :
 
75110
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75111
  typedef CT_OperatorName CExprResolveExpr;
 
75112
 
 
75113
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75114
 public :
 
75115
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75116
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75117
};
 
75118
 
 
75119
 
 
75120
#line 75121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75121
} // closed Puma
 
75122
class WinIfExists;
 
75123
class WinImportHandler;
 
75124
class WinMacros;
 
75125
class CMatchSyntax;
 
75126
class ExtGnu;
 
75127
class ExtAC;
 
75128
class ExtACBuilderCoupling;
 
75129
class ExtACSyntaxCoupling;
 
75130
class ExtACTree;
 
75131
class ExtACKeywords;
 
75132
class WinAsm;
 
75133
class WinDeclSpecs;
 
75134
class WinMemberExplSpec;
 
75135
class WinTypeKeywords;
 
75136
class PragmaOnceUnitState;
 
75137
class PragmaOnce;
 
75138
class CCExprResolve;
 
75139
class CExprResolve;
 
75140
namespace Puma {
 
75141
 
 
75142
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75143
class CT_ConversionName : public CT_SpecialName {
 
75144
#line 75145 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75145
  friend class ::WinIfExists;
 
75146
  friend class ::WinImportHandler;
 
75147
  friend class ::WinMacros;
 
75148
  friend class ::CMatchSyntax;
 
75149
  friend class ::ExtGnu;
 
75150
  friend class ::ExtAC;
 
75151
  friend class ::ExtACBuilderCoupling;
 
75152
  friend class ::ExtACSyntaxCoupling;
 
75153
  friend class ::ExtACTree;
 
75154
  friend class ::ExtACKeywords;
 
75155
  friend class ::WinAsm;
 
75156
  friend class ::WinDeclSpecs;
 
75157
  friend class ::WinMemberExplSpec;
 
75158
  friend class ::WinTypeKeywords;
 
75159
  friend class ::PragmaOnceUnitState;
 
75160
  friend class ::PragmaOnce;
 
75161
  friend class ::CCExprResolve;
 
75162
  friend class ::CExprResolve;
 
75163
 
 
75164
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75165
 
 
75166
public:
 
75167
  CT_ConversionName (CTree *, CTree *);
 
75168
  static const char *NodeId ();
 
75169
  const char *NodeName () const { return NodeId (); }
 
75170
  CT_NamedType *TypeName () const { return (CT_NamedType*)Son (Sons ()-1); }
 
75171
  // special new / delete with reusing memory
 
75172
  void *operator new (size_t);
 
75173
  void  operator delete (void *);
 
75174
   private:
 
75175
  typedef CT_ConversionName CCExprResolveExpr;
 
75176
 
 
75177
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75178
 public :
 
75179
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75180
  typedef CT_ConversionName CExprResolveExpr;
 
75181
 
 
75182
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75183
 public :
 
75184
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75185
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75186
};
 
75187
 
 
75188
 
 
75189
#line 75190 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75190
} // closed Puma
 
75191
class WinIfExists;
 
75192
class WinImportHandler;
 
75193
class WinMacros;
 
75194
class CMatchSyntax;
 
75195
class ExtGnu;
 
75196
class ExtAC;
 
75197
class ExtACBuilderCoupling;
 
75198
class ExtACSyntaxCoupling;
 
75199
class ExtACTree;
 
75200
class ExtACKeywords;
 
75201
class WinAsm;
 
75202
class WinDeclSpecs;
 
75203
class WinMemberExplSpec;
 
75204
class WinTypeKeywords;
 
75205
class PragmaOnceUnitState;
 
75206
class PragmaOnce;
 
75207
class CCExprResolve;
 
75208
class CExprResolve;
 
75209
namespace Puma {
 
75210
 
 
75211
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75212
class CT_QualName : public CT_SimpleName {
 
75213
#line 75214 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75214
  friend class ::WinIfExists;
 
75215
  friend class ::WinImportHandler;
 
75216
  friend class ::WinMacros;
 
75217
  friend class ::CMatchSyntax;
 
75218
  friend class ::ExtGnu;
 
75219
  friend class ::ExtAC;
 
75220
  friend class ::ExtACBuilderCoupling;
 
75221
  friend class ::ExtACSyntaxCoupling;
 
75222
  friend class ::ExtACTree;
 
75223
  friend class ::ExtACKeywords;
 
75224
  friend class ::WinAsm;
 
75225
  friend class ::WinDeclSpecs;
 
75226
  friend class ::WinMemberExplSpec;
 
75227
  friend class ::WinTypeKeywords;
 
75228
  friend class ::PragmaOnceUnitState;
 
75229
  friend class ::PragmaOnce;
 
75230
  friend class ::CCExprResolve;
 
75231
  friend class ::CExprResolve;
 
75232
 
 
75233
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75234
 
 
75235
public:
 
75236
  CT_QualName (int size = 3) : 
 
75237
    CT_SimpleName (size, CT_List::SEPARATORS) {}
 
75238
  static const char *NodeId ();
 
75239
  const char *NodeName () const { return NodeId (); }
 
75240
  void print (ostream &) const;
 
75241
  CT_SimpleName *Name () const { return (CT_SimpleName*)Son (Sons ()-1); }
 
75242
  const char *Text () const { return Name ()->Text (); }
 
75243
  CTypeInfo *Type () const { return Name ()->Type (); }
 
75244
  CExprValue *Value () const { return Name ()->Value (); }
 
75245
  CSemValue *SemValue () const { return Name ()->SemValue (); }
 
75246
  CSemObject *SemObject () const { return Name ()->SemObject (); }
 
75247
  // special new / delete with reusing memory
 
75248
  void *operator new (size_t);
 
75249
  void  operator delete (void *);
 
75250
   private:
 
75251
  typedef CT_QualName CCExprResolveExpr;
 
75252
 
 
75253
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75254
 public :
 
75255
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75256
  typedef CT_QualName CExprResolveExpr;
 
75257
 
 
75258
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75259
 public :
 
75260
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75261
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75262
};
 
75263
 
 
75264
 
 
75265
#line 75266 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75266
} // closed Puma
 
75267
class WinIfExists;
 
75268
class WinImportHandler;
 
75269
class WinMacros;
 
75270
class CMatchSyntax;
 
75271
class ExtGnu;
 
75272
class ExtAC;
 
75273
class ExtACBuilderCoupling;
 
75274
class ExtACSyntaxCoupling;
 
75275
class ExtACTree;
 
75276
class ExtACKeywords;
 
75277
class WinAsm;
 
75278
class WinDeclSpecs;
 
75279
class WinMemberExplSpec;
 
75280
class WinTypeKeywords;
 
75281
class PragmaOnceUnitState;
 
75282
class PragmaOnce;
 
75283
class CCExprResolve;
 
75284
class CExprResolve;
 
75285
namespace Puma {
 
75286
 
 
75287
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75288
class CT_RootQualName : public CT_QualName {
 
75289
#line 75290 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75290
  friend class ::WinIfExists;
 
75291
  friend class ::WinImportHandler;
 
75292
  friend class ::WinMacros;
 
75293
  friend class ::CMatchSyntax;
 
75294
  friend class ::ExtGnu;
 
75295
  friend class ::ExtAC;
 
75296
  friend class ::ExtACBuilderCoupling;
 
75297
  friend class ::ExtACSyntaxCoupling;
 
75298
  friend class ::ExtACTree;
 
75299
  friend class ::ExtACKeywords;
 
75300
  friend class ::WinAsm;
 
75301
  friend class ::WinDeclSpecs;
 
75302
  friend class ::WinMemberExplSpec;
 
75303
  friend class ::WinTypeKeywords;
 
75304
  friend class ::PragmaOnceUnitState;
 
75305
  friend class ::PragmaOnce;
 
75306
  friend class ::CCExprResolve;
 
75307
  friend class ::CExprResolve;
 
75308
 
 
75309
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75310
 
 
75311
public:
 
75312
  CT_RootQualName (int size = 2) : 
 
75313
    CT_QualName (size) { AddProperties (INTRO); }
 
75314
  static const char *NodeId ();
 
75315
  const char *NodeName () const { return NodeId (); }
 
75316
  // special new / delete with reusing memory
 
75317
  void *operator new (size_t);
 
75318
  void  operator delete (void *);
 
75319
   private:
 
75320
  typedef CT_RootQualName CCExprResolveExpr;
 
75321
 
 
75322
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75323
 public :
 
75324
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75325
  typedef CT_RootQualName CExprResolveExpr;
 
75326
 
 
75327
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75328
 public :
 
75329
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75330
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75331
};
 
75332
 
 
75333
 
 
75334
#line 75335 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75335
} // closed Puma
 
75336
class WinIfExists;
 
75337
class WinImportHandler;
 
75338
class WinMacros;
 
75339
class CMatchSyntax;
 
75340
class ExtGnu;
 
75341
class ExtAC;
 
75342
class ExtACBuilderCoupling;
 
75343
class ExtACSyntaxCoupling;
 
75344
class ExtACTree;
 
75345
class ExtACKeywords;
 
75346
class WinAsm;
 
75347
class WinDeclSpecs;
 
75348
class WinMemberExplSpec;
 
75349
class WinTypeKeywords;
 
75350
class PragmaOnceUnitState;
 
75351
class PragmaOnce;
 
75352
class CCExprResolve;
 
75353
class CExprResolve;
 
75354
namespace Puma {
 
75355
 
 
75356
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75357
class CT_BinaryExpr : public CT_Expression {
 
75358
#line 75359 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75359
  friend class ::WinIfExists;
 
75360
  friend class ::WinImportHandler;
 
75361
  friend class ::WinMacros;
 
75362
  friend class ::CMatchSyntax;
 
75363
  friend class ::ExtGnu;
 
75364
  friend class ::ExtAC;
 
75365
  friend class ::ExtACBuilderCoupling;
 
75366
  friend class ::ExtACSyntaxCoupling;
 
75367
  friend class ::ExtACTree;
 
75368
  friend class ::ExtACKeywords;
 
75369
  friend class ::WinAsm;
 
75370
  friend class ::WinDeclSpecs;
 
75371
  friend class ::WinMemberExplSpec;
 
75372
  friend class ::WinTypeKeywords;
 
75373
  friend class ::PragmaOnceUnitState;
 
75374
  friend class ::PragmaOnce;
 
75375
  friend class ::CCExprResolve;
 
75376
  friend class ::CExprResolve;
 
75377
 
 
75378
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75379
 
 
75380
  CTree *sons[3]; // expr, oper, expr
 
75381
 
 
75382
public:
 
75383
  CT_BinaryExpr (CTree *l, CTree *o, CTree *r) {
 
75384
    sons[0] = l; sons[1] = o; sons[2] = r;
 
75385
  }
 
75386
  static const char *NodeId ();
 
75387
  const char *NodeName () const { return NodeId (); }
 
75388
  int Sons () const { return 3; }
 
75389
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
75390
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
75391
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
75392
  }
 
75393
   private:
 
75394
  typedef CT_BinaryExpr CCExprResolveExpr;
 
75395
 
 
75396
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75397
 public :
 
75398
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75399
  typedef CT_BinaryExpr CExprResolveExpr;
 
75400
 
 
75401
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75402
 public :
 
75403
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75404
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75405
};
 
75406
 
 
75407
 
 
75408
#line 75409 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75409
} // closed Puma
 
75410
class WinIfExists;
 
75411
class WinImportHandler;
 
75412
class WinMacros;
 
75413
class CMatchSyntax;
 
75414
class ExtGnu;
 
75415
class ExtAC;
 
75416
class ExtACBuilderCoupling;
 
75417
class ExtACSyntaxCoupling;
 
75418
class ExtACTree;
 
75419
class ExtACKeywords;
 
75420
class WinAsm;
 
75421
class WinDeclSpecs;
 
75422
class WinMemberExplSpec;
 
75423
class WinTypeKeywords;
 
75424
class PragmaOnceUnitState;
 
75425
class PragmaOnce;
 
75426
class CCExprResolve;
 
75427
class CExprResolve;
 
75428
namespace Puma {
 
75429
 
 
75430
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75431
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
75432
#line 75433 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75433
  friend class ::WinIfExists;
 
75434
  friend class ::WinImportHandler;
 
75435
  friend class ::WinMacros;
 
75436
  friend class ::CMatchSyntax;
 
75437
  friend class ::ExtGnu;
 
75438
  friend class ::ExtAC;
 
75439
  friend class ::ExtACBuilderCoupling;
 
75440
  friend class ::ExtACSyntaxCoupling;
 
75441
  friend class ::ExtACTree;
 
75442
  friend class ::ExtACKeywords;
 
75443
  friend class ::WinAsm;
 
75444
  friend class ::WinDeclSpecs;
 
75445
  friend class ::WinMemberExplSpec;
 
75446
  friend class ::WinTypeKeywords;
 
75447
  friend class ::PragmaOnceUnitState;
 
75448
  friend class ::PragmaOnce;
 
75449
  friend class ::CCExprResolve;
 
75450
  friend class ::CExprResolve;
 
75451
 
 
75452
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75453
 
 
75454
public:
 
75455
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
 
75456
    CT_BinaryExpr (e, o, i) {}
 
75457
  static const char *NodeId ();
 
75458
  const char *NodeName () const { return NodeId (); }
 
75459
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
75460
   private:
 
75461
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
75462
 
 
75463
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75464
 public :
 
75465
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75466
  typedef CT_MembPtrExpr CExprResolveExpr;
 
75467
 
 
75468
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75469
 public :
 
75470
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75471
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75472
};
 
75473
 
 
75474
 
 
75475
#line 75476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75476
} // closed Puma
 
75477
class WinIfExists;
 
75478
class WinImportHandler;
 
75479
class WinMacros;
 
75480
class CMatchSyntax;
 
75481
class ExtGnu;
 
75482
class ExtAC;
 
75483
class ExtACBuilderCoupling;
 
75484
class ExtACSyntaxCoupling;
 
75485
class ExtACTree;
 
75486
class ExtACKeywords;
 
75487
class WinAsm;
 
75488
class WinDeclSpecs;
 
75489
class WinMemberExplSpec;
 
75490
class WinTypeKeywords;
 
75491
class PragmaOnceUnitState;
 
75492
class PragmaOnce;
 
75493
class CCExprResolve;
 
75494
class CExprResolve;
 
75495
namespace Puma {
 
75496
 
 
75497
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75498
class CT_MembRefExpr : public CT_MembPtrExpr {
 
75499
#line 75500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75500
  friend class ::WinIfExists;
 
75501
  friend class ::WinImportHandler;
 
75502
  friend class ::WinMacros;
 
75503
  friend class ::CMatchSyntax;
 
75504
  friend class ::ExtGnu;
 
75505
  friend class ::ExtAC;
 
75506
  friend class ::ExtACBuilderCoupling;
 
75507
  friend class ::ExtACSyntaxCoupling;
 
75508
  friend class ::ExtACTree;
 
75509
  friend class ::ExtACKeywords;
 
75510
  friend class ::WinAsm;
 
75511
  friend class ::WinDeclSpecs;
 
75512
  friend class ::WinMemberExplSpec;
 
75513
  friend class ::WinTypeKeywords;
 
75514
  friend class ::PragmaOnceUnitState;
 
75515
  friend class ::PragmaOnce;
 
75516
  friend class ::CCExprResolve;
 
75517
  friend class ::CExprResolve;
 
75518
 
 
75519
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75520
 
 
75521
public:
 
75522
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
 
75523
    CT_MembPtrExpr (e, o, i) {}
 
75524
  static const char *NodeId ();
 
75525
  const char *NodeName () const { return NodeId (); }
 
75526
   private:
 
75527
  typedef CT_MembRefExpr CCExprResolveExpr;
 
75528
 
 
75529
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75530
 public :
 
75531
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75532
  typedef CT_MembRefExpr CExprResolveExpr;
 
75533
 
 
75534
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75535
 public :
 
75536
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75537
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75538
};
 
75539
 
 
75540
 
 
75541
#line 75542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75542
} // closed Puma
 
75543
class WinIfExists;
 
75544
class WinImportHandler;
 
75545
class WinMacros;
 
75546
class CMatchSyntax;
 
75547
class ExtGnu;
 
75548
class ExtAC;
 
75549
class ExtACBuilderCoupling;
 
75550
class ExtACSyntaxCoupling;
 
75551
class ExtACTree;
 
75552
class ExtACKeywords;
 
75553
class WinAsm;
 
75554
class WinDeclSpecs;
 
75555
class WinMemberExplSpec;
 
75556
class WinTypeKeywords;
 
75557
class PragmaOnceUnitState;
 
75558
class PragmaOnce;
 
75559
class CCExprResolve;
 
75560
class CExprResolve;
 
75561
namespace Puma {
 
75562
 
 
75563
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75564
class CT_UnaryExpr : public CT_Expression {
 
75565
#line 75566 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75566
  friend class ::WinIfExists;
 
75567
  friend class ::WinImportHandler;
 
75568
  friend class ::WinMacros;
 
75569
  friend class ::CMatchSyntax;
 
75570
  friend class ::ExtGnu;
 
75571
  friend class ::ExtAC;
 
75572
  friend class ::ExtACBuilderCoupling;
 
75573
  friend class ::ExtACSyntaxCoupling;
 
75574
  friend class ::ExtACTree;
 
75575
  friend class ::ExtACKeywords;
 
75576
  friend class ::WinAsm;
 
75577
  friend class ::WinDeclSpecs;
 
75578
  friend class ::WinMemberExplSpec;
 
75579
  friend class ::WinTypeKeywords;
 
75580
  friend class ::PragmaOnceUnitState;
 
75581
  friend class ::PragmaOnce;
 
75582
  friend class ::CCExprResolve;
 
75583
  friend class ::CExprResolve;
 
75584
 
 
75585
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75586
 
 
75587
  CTree *sons[2]; // oper, expr
 
75588
 
 
75589
public:
 
75590
  CT_UnaryExpr (CTree *o, CTree *e) { sons[0] = o; sons[1] = e; }
 
75591
  static const char *NodeId ();
 
75592
  const char *NodeName () const { return NodeId (); }
 
75593
  int Sons () const { return 2; }
 
75594
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
75595
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
75596
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
75597
  }
 
75598
  CTree *Expr () const { return sons[1]; }
 
75599
   private:
 
75600
  typedef CT_UnaryExpr CCExprResolveExpr;
 
75601
 
 
75602
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75603
 public :
 
75604
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75605
  typedef CT_UnaryExpr CExprResolveExpr;
 
75606
 
 
75607
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75608
 public :
 
75609
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75610
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75611
};
 
75612
 
 
75613
 
 
75614
#line 75615 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75615
} // closed Puma
 
75616
class WinIfExists;
 
75617
class WinImportHandler;
 
75618
class WinMacros;
 
75619
class CMatchSyntax;
 
75620
class ExtGnu;
 
75621
class ExtAC;
 
75622
class ExtACBuilderCoupling;
 
75623
class ExtACSyntaxCoupling;
 
75624
class ExtACTree;
 
75625
class ExtACKeywords;
 
75626
class WinAsm;
 
75627
class WinDeclSpecs;
 
75628
class WinMemberExplSpec;
 
75629
class WinTypeKeywords;
 
75630
class PragmaOnceUnitState;
 
75631
class PragmaOnce;
 
75632
class CCExprResolve;
 
75633
class CExprResolve;
 
75634
namespace Puma {
 
75635
 
 
75636
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75637
class CT_PostfixExpr : public CT_UnaryExpr {
 
75638
#line 75639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75639
  friend class ::WinIfExists;
 
75640
  friend class ::WinImportHandler;
 
75641
  friend class ::WinMacros;
 
75642
  friend class ::CMatchSyntax;
 
75643
  friend class ::ExtGnu;
 
75644
  friend class ::ExtAC;
 
75645
  friend class ::ExtACBuilderCoupling;
 
75646
  friend class ::ExtACSyntaxCoupling;
 
75647
  friend class ::ExtACTree;
 
75648
  friend class ::ExtACKeywords;
 
75649
  friend class ::WinAsm;
 
75650
  friend class ::WinDeclSpecs;
 
75651
  friend class ::WinMemberExplSpec;
 
75652
  friend class ::WinTypeKeywords;
 
75653
  friend class ::PragmaOnceUnitState;
 
75654
  friend class ::PragmaOnce;
 
75655
  friend class ::CCExprResolve;
 
75656
  friend class ::CExprResolve;
 
75657
 
 
75658
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75659
 
 
75660
public:
 
75661
  CT_PostfixExpr (CTree *e, CTree *o) :
 
75662
    CT_UnaryExpr (e, o) {}
 
75663
  static const char *NodeId ();
 
75664
  const char *NodeName () const { return NodeId (); }
 
75665
   private:
 
75666
  typedef CT_PostfixExpr CCExprResolveExpr;
 
75667
 
 
75668
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75669
 public :
 
75670
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75671
  typedef CT_PostfixExpr CExprResolveExpr;
 
75672
 
 
75673
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75674
 public :
 
75675
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75676
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75677
};
 
75678
 
 
75679
 
 
75680
#line 75681 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75681
} // closed Puma
 
75682
class WinIfExists;
 
75683
class WinImportHandler;
 
75684
class WinMacros;
 
75685
class CMatchSyntax;
 
75686
class ExtGnu;
 
75687
class ExtAC;
 
75688
class ExtACBuilderCoupling;
 
75689
class ExtACSyntaxCoupling;
 
75690
class ExtACTree;
 
75691
class ExtACKeywords;
 
75692
class WinAsm;
 
75693
class WinDeclSpecs;
 
75694
class WinMemberExplSpec;
 
75695
class WinTypeKeywords;
 
75696
class PragmaOnceUnitState;
 
75697
class PragmaOnce;
 
75698
class CCExprResolve;
 
75699
class CExprResolve;
 
75700
namespace Puma {
 
75701
 
 
75702
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75703
class CT_AddrExpr : public CT_UnaryExpr {
 
75704
#line 75705 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75705
  friend class ::WinIfExists;
 
75706
  friend class ::WinImportHandler;
 
75707
  friend class ::WinMacros;
 
75708
  friend class ::CMatchSyntax;
 
75709
  friend class ::ExtGnu;
 
75710
  friend class ::ExtAC;
 
75711
  friend class ::ExtACBuilderCoupling;
 
75712
  friend class ::ExtACSyntaxCoupling;
 
75713
  friend class ::ExtACTree;
 
75714
  friend class ::ExtACKeywords;
 
75715
  friend class ::WinAsm;
 
75716
  friend class ::WinDeclSpecs;
 
75717
  friend class ::WinMemberExplSpec;
 
75718
  friend class ::WinTypeKeywords;
 
75719
  friend class ::PragmaOnceUnitState;
 
75720
  friend class ::PragmaOnce;
 
75721
  friend class ::CCExprResolve;
 
75722
  friend class ::CExprResolve;
 
75723
 
 
75724
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75725
 
 
75726
public:
 
75727
  CT_AddrExpr (CTree *o, CTree *e) :
 
75728
    CT_UnaryExpr (o, e) {}
 
75729
  static const char *NodeId ();
 
75730
  const char *NodeName () const { return NodeId (); }
 
75731
   private:
 
75732
  typedef CT_AddrExpr CCExprResolveExpr;
 
75733
 
 
75734
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75735
 public :
 
75736
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75737
  typedef CT_AddrExpr CExprResolveExpr;
 
75738
 
 
75739
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75740
 public :
 
75741
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75742
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75743
};
 
75744
 
 
75745
 
 
75746
#line 75747 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75747
} // closed Puma
 
75748
class WinIfExists;
 
75749
class WinImportHandler;
 
75750
class WinMacros;
 
75751
class CMatchSyntax;
 
75752
class ExtGnu;
 
75753
class ExtAC;
 
75754
class ExtACBuilderCoupling;
 
75755
class ExtACSyntaxCoupling;
 
75756
class ExtACTree;
 
75757
class ExtACKeywords;
 
75758
class WinAsm;
 
75759
class WinDeclSpecs;
 
75760
class WinMemberExplSpec;
 
75761
class WinTypeKeywords;
 
75762
class PragmaOnceUnitState;
 
75763
class PragmaOnce;
 
75764
class CCExprResolve;
 
75765
class CExprResolve;
 
75766
namespace Puma {
 
75767
 
 
75768
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75769
class CT_DerefExpr : public CT_UnaryExpr {
 
75770
#line 75771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75771
  friend class ::WinIfExists;
 
75772
  friend class ::WinImportHandler;
 
75773
  friend class ::WinMacros;
 
75774
  friend class ::CMatchSyntax;
 
75775
  friend class ::ExtGnu;
 
75776
  friend class ::ExtAC;
 
75777
  friend class ::ExtACBuilderCoupling;
 
75778
  friend class ::ExtACSyntaxCoupling;
 
75779
  friend class ::ExtACTree;
 
75780
  friend class ::ExtACKeywords;
 
75781
  friend class ::WinAsm;
 
75782
  friend class ::WinDeclSpecs;
 
75783
  friend class ::WinMemberExplSpec;
 
75784
  friend class ::WinTypeKeywords;
 
75785
  friend class ::PragmaOnceUnitState;
 
75786
  friend class ::PragmaOnce;
 
75787
  friend class ::CCExprResolve;
 
75788
  friend class ::CExprResolve;
 
75789
 
 
75790
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75791
 
 
75792
public:
 
75793
  CT_DerefExpr (CTree *o, CTree *e) :
 
75794
    CT_UnaryExpr (o, e) {}
 
75795
  static const char *NodeId ();
 
75796
  const char *NodeName () const { return NodeId (); }
 
75797
   private:
 
75798
  typedef CT_DerefExpr CCExprResolveExpr;
 
75799
 
 
75800
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75801
 public :
 
75802
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75803
  typedef CT_DerefExpr CExprResolveExpr;
 
75804
 
 
75805
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75806
 public :
 
75807
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75808
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75809
};
 
75810
 
 
75811
 
 
75812
#line 75813 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75813
} // closed Puma
 
75814
class WinIfExists;
 
75815
class WinImportHandler;
 
75816
class WinMacros;
 
75817
class CMatchSyntax;
 
75818
class ExtGnu;
 
75819
class ExtAC;
 
75820
class ExtACBuilderCoupling;
 
75821
class ExtACSyntaxCoupling;
 
75822
class ExtACTree;
 
75823
class ExtACKeywords;
 
75824
class WinAsm;
 
75825
class WinDeclSpecs;
 
75826
class WinMemberExplSpec;
 
75827
class WinTypeKeywords;
 
75828
class PragmaOnceUnitState;
 
75829
class PragmaOnce;
 
75830
class CCExprResolve;
 
75831
class CExprResolve;
 
75832
namespace Puma {
 
75833
 
 
75834
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75835
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
75836
#line 75837 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75837
  friend class ::WinIfExists;
 
75838
  friend class ::WinImportHandler;
 
75839
  friend class ::WinMacros;
 
75840
  friend class ::CMatchSyntax;
 
75841
  friend class ::ExtGnu;
 
75842
  friend class ::ExtAC;
 
75843
  friend class ::ExtACBuilderCoupling;
 
75844
  friend class ::ExtACSyntaxCoupling;
 
75845
  friend class ::ExtACTree;
 
75846
  friend class ::ExtACKeywords;
 
75847
  friend class ::WinAsm;
 
75848
  friend class ::WinDeclSpecs;
 
75849
  friend class ::WinMemberExplSpec;
 
75850
  friend class ::WinTypeKeywords;
 
75851
  friend class ::PragmaOnceUnitState;
 
75852
  friend class ::PragmaOnce;
 
75853
  friend class ::CCExprResolve;
 
75854
  friend class ::CExprResolve;
 
75855
 
 
75856
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75857
 
 
75858
  CTree *sons[2]; // oper, expr
 
75859
 
 
75860
public:
 
75861
  CT_DeleteExpr (CTree *op, CTree *e) { sons[0] = op; sons[1] = e; }
 
75862
  static const char *NodeId ();
 
75863
  const char *NodeName () const { return NodeId (); }
 
75864
  int Sons () const { return 2; }
 
75865
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
75866
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
75867
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
75868
  }
 
75869
  CTree *Expr () const { return sons[1]; }
 
75870
  CT_SimpleName *OperName () const { return (CT_SimpleName*)sons[0]; }
 
75871
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
75872
   private:
 
75873
  typedef CT_DeleteExpr CCExprResolveExpr;
 
75874
 
 
75875
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75876
 public :
 
75877
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75878
  typedef CT_DeleteExpr CExprResolveExpr;
 
75879
 
 
75880
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75881
 public :
 
75882
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75883
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75884
};
 
75885
 
 
75886
 
 
75887
#line 75888 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75888
} // closed Puma
 
75889
class WinIfExists;
 
75890
class WinImportHandler;
 
75891
class WinMacros;
 
75892
class CMatchSyntax;
 
75893
class ExtGnu;
 
75894
class ExtAC;
 
75895
class ExtACBuilderCoupling;
 
75896
class ExtACSyntaxCoupling;
 
75897
class ExtACTree;
 
75898
class ExtACKeywords;
 
75899
class WinAsm;
 
75900
class WinDeclSpecs;
 
75901
class WinMemberExplSpec;
 
75902
class WinTypeKeywords;
 
75903
class PragmaOnceUnitState;
 
75904
class PragmaOnce;
 
75905
class CCExprResolve;
 
75906
class CExprResolve;
 
75907
namespace Puma {
 
75908
 
 
75909
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75910
class CT_NewExpr : public CT_Expression, public CSemObject {
 
75911
#line 75912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75912
  friend class ::WinIfExists;
 
75913
  friend class ::WinImportHandler;
 
75914
  friend class ::WinMacros;
 
75915
  friend class ::CMatchSyntax;
 
75916
  friend class ::ExtGnu;
 
75917
  friend class ::ExtAC;
 
75918
  friend class ::ExtACBuilderCoupling;
 
75919
  friend class ::ExtACSyntaxCoupling;
 
75920
  friend class ::ExtACTree;
 
75921
  friend class ::ExtACKeywords;
 
75922
  friend class ::WinAsm;
 
75923
  friend class ::WinDeclSpecs;
 
75924
  friend class ::WinMemberExplSpec;
 
75925
  friend class ::WinTypeKeywords;
 
75926
  friend class ::PragmaOnceUnitState;
 
75927
  friend class ::PragmaOnce;
 
75928
  friend class ::CCExprResolve;
 
75929
  friend class ::CExprResolve;
 
75930
 
 
75931
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75932
 
 
75933
  CTree *sons[6]; // oper, placement, open, type, close, init
 
75934
 
 
75935
public:
 
75936
  CT_NewExpr (CTree *op, CTree *p, CTree *o, CTree *t, CTree *c, CTree *i) {
 
75937
    sons[0] = op; sons[1] = p; sons[2] = o; sons[3] = t; sons[4] = c; sons[5] = i; 
 
75938
  }
 
75939
  static const char *NodeId ();
 
75940
  const char *NodeName () const { return NodeId (); }
 
75941
  int Sons () const { return CTree::Sons (sons, 6); }
 
75942
  CTree *Son (int n) const { return CTree::Son (sons, 6, n); }
 
75943
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
75944
    CTree::ReplaceSon (sons, 6, old_son, new_son);
 
75945
  }
 
75946
  CT_SimpleName *OperName () const { return (CT_SimpleName*)sons[0]; }
 
75947
  CT_ExprList *Placement () const { return (CT_ExprList*)sons[1];; }
 
75948
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[5]; }
 
75949
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[3]; }
 
75950
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
75951
   private:
 
75952
  typedef CT_NewExpr CCExprResolveExpr;
 
75953
 
 
75954
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
75955
 public :
 
75956
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
75957
  typedef CT_NewExpr CExprResolveExpr;
 
75958
 
 
75959
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
75960
 public :
 
75961
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
75962
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75963
};
 
75964
 
 
75965
 
 
75966
#line 75967 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75967
} // closed Puma
 
75968
class WinIfExists;
 
75969
class WinImportHandler;
 
75970
class WinMacros;
 
75971
class CMatchSyntax;
 
75972
class ExtGnu;
 
75973
class ExtAC;
 
75974
class ExtACBuilderCoupling;
 
75975
class ExtACSyntaxCoupling;
 
75976
class ExtACTree;
 
75977
class ExtACKeywords;
 
75978
class WinAsm;
 
75979
class WinDeclSpecs;
 
75980
class WinMemberExplSpec;
 
75981
class WinTypeKeywords;
 
75982
class PragmaOnceUnitState;
 
75983
class PragmaOnce;
 
75984
class CCExprResolve;
 
75985
class CExprResolve;
 
75986
namespace Puma {
 
75987
 
 
75988
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
75989
class CT_IfThenExpr : public CT_Expression {
 
75990
#line 75991 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
75991
  friend class ::WinIfExists;
 
75992
  friend class ::WinImportHandler;
 
75993
  friend class ::WinMacros;
 
75994
  friend class ::CMatchSyntax;
 
75995
  friend class ::ExtGnu;
 
75996
  friend class ::ExtAC;
 
75997
  friend class ::ExtACBuilderCoupling;
 
75998
  friend class ::ExtACSyntaxCoupling;
 
75999
  friend class ::ExtACTree;
 
76000
  friend class ::ExtACKeywords;
 
76001
  friend class ::WinAsm;
 
76002
  friend class ::WinDeclSpecs;
 
76003
  friend class ::WinMemberExplSpec;
 
76004
  friend class ::WinTypeKeywords;
 
76005
  friend class ::PragmaOnceUnitState;
 
76006
  friend class ::PragmaOnce;
 
76007
  friend class ::CCExprResolve;
 
76008
  friend class ::CExprResolve;
 
76009
 
 
76010
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76011
 
 
76012
  CTree *sons[5]; // cond, oper, left, colon, right
 
76013
 
 
76014
public:
 
76015
  CT_IfThenExpr (CTree *c1, CTree *o, CTree *l, CTree *c2, CTree *r) {
 
76016
    sons[0] = c1; sons[1] = o; sons[2] = l; sons[3] = c2; sons[4] = r;
 
76017
  }
 
76018
  CT_IfThenExpr (CTree *c1, CTree *o, CTree *c2, CTree *r) {
 
76019
    sons[0] = c1; sons[1] = o; sons[2] = 0; sons[3] = c2; sons[4] = r;
 
76020
  }
 
76021
  static const char *NodeId ();
 
76022
  const char *NodeName () const { return NodeId (); }
 
76023
  int Sons () const { return CTree::Sons (sons, 5); }
 
76024
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
76025
  CTree *Condition () const { return sons[0]; }
 
76026
  CTree *LeftOperand () const { return sons[2]; }
 
76027
  CTree *RightOperand () const { return sons[4]; }
 
76028
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76029
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
76030
  }
 
76031
   private:
 
76032
  typedef CT_IfThenExpr CCExprResolveExpr;
 
76033
 
 
76034
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76035
 public :
 
76036
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76037
  typedef CT_IfThenExpr CExprResolveExpr;
 
76038
 
 
76039
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76040
 public :
 
76041
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76042
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76043
};
 
76044
 
 
76045
 
 
76046
#line 76047 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76047
} // closed Puma
 
76048
class WinIfExists;
 
76049
class WinImportHandler;
 
76050
class WinMacros;
 
76051
class CMatchSyntax;
 
76052
class ExtGnu;
 
76053
class ExtAC;
 
76054
class ExtACBuilderCoupling;
 
76055
class ExtACSyntaxCoupling;
 
76056
class ExtACTree;
 
76057
class ExtACKeywords;
 
76058
class WinAsm;
 
76059
class WinDeclSpecs;
 
76060
class WinMemberExplSpec;
 
76061
class WinTypeKeywords;
 
76062
class PragmaOnceUnitState;
 
76063
class PragmaOnce;
 
76064
class CCExprResolve;
 
76065
class CExprResolve;
 
76066
namespace Puma {
 
76067
 
 
76068
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76069
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
76070
#line 76071 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76071
  friend class ::WinIfExists;
 
76072
  friend class ::WinImportHandler;
 
76073
  friend class ::WinMacros;
 
76074
  friend class ::CMatchSyntax;
 
76075
  friend class ::ExtGnu;
 
76076
  friend class ::ExtAC;
 
76077
  friend class ::ExtACBuilderCoupling;
 
76078
  friend class ::ExtACSyntaxCoupling;
 
76079
  friend class ::ExtACTree;
 
76080
  friend class ::ExtACKeywords;
 
76081
  friend class ::WinAsm;
 
76082
  friend class ::WinDeclSpecs;
 
76083
  friend class ::WinMemberExplSpec;
 
76084
  friend class ::WinTypeKeywords;
 
76085
  friend class ::PragmaOnceUnitState;
 
76086
  friend class ::PragmaOnce;
 
76087
  friend class ::CCExprResolve;
 
76088
  friend class ::CExprResolve;
 
76089
 
 
76090
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76091
 
 
76092
  CTree *sons[4]; // open, type, close, init
 
76093
 
 
76094
public:
 
76095
  CT_CmpdLiteral (CTree *r, CTree *t, CTree *cr, CTree *i) {
 
76096
    sons[0] = r; sons[1] = t; sons[2] = cr; sons[3] = i;
 
76097
  }
 
76098
  static const char *NodeId ();
 
76099
  const char *NodeName () const { return NodeId (); }
 
76100
  int Sons () const { return 4; }
 
76101
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
76102
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76103
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
76104
  }
 
76105
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
 
76106
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[3]; }
 
76107
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
76108
   private:
 
76109
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
76110
 
 
76111
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76112
 public :
 
76113
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76114
  typedef CT_CmpdLiteral CExprResolveExpr;
 
76115
 
 
76116
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76117
 public :
 
76118
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76119
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76120
};
 
76121
 
 
76122
 
 
76123
#line 76124 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76124
} // closed Puma
 
76125
class WinIfExists;
 
76126
class WinImportHandler;
 
76127
class WinMacros;
 
76128
class CMatchSyntax;
 
76129
class ExtGnu;
 
76130
class ExtAC;
 
76131
class ExtACBuilderCoupling;
 
76132
class ExtACSyntaxCoupling;
 
76133
class ExtACTree;
 
76134
class ExtACKeywords;
 
76135
class WinAsm;
 
76136
class WinDeclSpecs;
 
76137
class WinMemberExplSpec;
 
76138
class WinTypeKeywords;
 
76139
class PragmaOnceUnitState;
 
76140
class PragmaOnce;
 
76141
class CCExprResolve;
 
76142
class CExprResolve;
 
76143
namespace Puma {
 
76144
 
 
76145
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76146
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
76147
#line 76148 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76148
  friend class ::WinIfExists;
 
76149
  friend class ::WinImportHandler;
 
76150
  friend class ::WinMacros;
 
76151
  friend class ::CMatchSyntax;
 
76152
  friend class ::ExtGnu;
 
76153
  friend class ::ExtAC;
 
76154
  friend class ::ExtACBuilderCoupling;
 
76155
  friend class ::ExtACSyntaxCoupling;
 
76156
  friend class ::ExtACTree;
 
76157
  friend class ::ExtACKeywords;
 
76158
  friend class ::WinAsm;
 
76159
  friend class ::WinDeclSpecs;
 
76160
  friend class ::WinMemberExplSpec;
 
76161
  friend class ::WinTypeKeywords;
 
76162
  friend class ::PragmaOnceUnitState;
 
76163
  friend class ::PragmaOnce;
 
76164
  friend class ::CCExprResolve;
 
76165
  friend class ::CExprResolve;
 
76166
 
 
76167
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76168
 
 
76169
  CTree *sons[2]; // type, init
 
76170
 
 
76171
public:
 
76172
  CT_ConstructExpr (CTree *t, CTree *i) { sons[0] = t; sons[1] = i; }
 
76173
  static const char *NodeId ();
 
76174
  const char *NodeName () const { return NodeId (); }
 
76175
  int Sons () const { return 2; }
 
76176
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
76177
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76178
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
76179
  }
 
76180
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[0]; }
 
76181
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
 
76182
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
76183
   private:
 
76184
  typedef CT_ConstructExpr CCExprResolveExpr;
 
76185
 
 
76186
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76187
 public :
 
76188
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76189
  typedef CT_ConstructExpr CExprResolveExpr;
 
76190
 
 
76191
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76192
 public :
 
76193
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76194
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76195
};
 
76196
 
 
76197
 
 
76198
#line 76199 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76199
} // closed Puma
 
76200
class WinIfExists;
 
76201
class WinImportHandler;
 
76202
class WinMacros;
 
76203
class CMatchSyntax;
 
76204
class ExtGnu;
 
76205
class ExtAC;
 
76206
class ExtACBuilderCoupling;
 
76207
class ExtACSyntaxCoupling;
 
76208
class ExtACTree;
 
76209
class ExtACKeywords;
 
76210
class WinAsm;
 
76211
class WinDeclSpecs;
 
76212
class WinMemberExplSpec;
 
76213
class WinTypeKeywords;
 
76214
class PragmaOnceUnitState;
 
76215
class PragmaOnce;
 
76216
class CCExprResolve;
 
76217
class CExprResolve;
 
76218
namespace Puma {
 
76219
 
 
76220
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76221
class CT_ThrowExpr : public CT_Expression {
 
76222
#line 76223 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76223
  friend class ::WinIfExists;
 
76224
  friend class ::WinImportHandler;
 
76225
  friend class ::WinMacros;
 
76226
  friend class ::CMatchSyntax;
 
76227
  friend class ::ExtGnu;
 
76228
  friend class ::ExtAC;
 
76229
  friend class ::ExtACBuilderCoupling;
 
76230
  friend class ::ExtACSyntaxCoupling;
 
76231
  friend class ::ExtACTree;
 
76232
  friend class ::ExtACKeywords;
 
76233
  friend class ::WinAsm;
 
76234
  friend class ::WinDeclSpecs;
 
76235
  friend class ::WinMemberExplSpec;
 
76236
  friend class ::WinTypeKeywords;
 
76237
  friend class ::PragmaOnceUnitState;
 
76238
  friend class ::PragmaOnce;
 
76239
  friend class ::CCExprResolve;
 
76240
  friend class ::CExprResolve;
 
76241
 
 
76242
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76243
 
 
76244
  CTree *sons[2]; // throw, expr
 
76245
 
 
76246
public:
 
76247
  CT_ThrowExpr (CTree *t, CTree *e = (CTree*)0) { sons[0] = t; sons[1] = e; }
 
76248
  static const char *NodeId ();
 
76249
  const char *NodeName () const { return NodeId (); }
 
76250
  int Sons () const { return CTree::Sons (sons, 2); }
 
76251
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
76252
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76253
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
76254
  }
 
76255
  CTree *Expr () const { return sons[1]; }
 
76256
   private:
 
76257
  typedef CT_ThrowExpr CCExprResolveExpr;
 
76258
 
 
76259
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76260
 public :
 
76261
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76262
  typedef CT_ThrowExpr CExprResolveExpr;
 
76263
 
 
76264
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76265
 public :
 
76266
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76267
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76268
};
 
76269
 
 
76270
 
 
76271
#line 76272 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76272
} // closed Puma
 
76273
class WinIfExists;
 
76274
class WinImportHandler;
 
76275
class WinMacros;
 
76276
class CMatchSyntax;
 
76277
class ExtGnu;
 
76278
class ExtAC;
 
76279
class ExtACBuilderCoupling;
 
76280
class ExtACSyntaxCoupling;
 
76281
class ExtACTree;
 
76282
class ExtACKeywords;
 
76283
class WinAsm;
 
76284
class WinDeclSpecs;
 
76285
class WinMemberExplSpec;
 
76286
class WinTypeKeywords;
 
76287
class PragmaOnceUnitState;
 
76288
class PragmaOnce;
 
76289
class CCExprResolve;
 
76290
class CExprResolve;
 
76291
namespace Puma {
 
76292
 
 
76293
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76294
class CT_IndexExpr : public CT_Expression {
 
76295
#line 76296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76296
  friend class ::WinIfExists;
 
76297
  friend class ::WinImportHandler;
 
76298
  friend class ::WinMacros;
 
76299
  friend class ::CMatchSyntax;
 
76300
  friend class ::ExtGnu;
 
76301
  friend class ::ExtAC;
 
76302
  friend class ::ExtACBuilderCoupling;
 
76303
  friend class ::ExtACSyntaxCoupling;
 
76304
  friend class ::ExtACTree;
 
76305
  friend class ::ExtACKeywords;
 
76306
  friend class ::WinAsm;
 
76307
  friend class ::WinDeclSpecs;
 
76308
  friend class ::WinMemberExplSpec;
 
76309
  friend class ::WinTypeKeywords;
 
76310
  friend class ::PragmaOnceUnitState;
 
76311
  friend class ::PragmaOnce;
 
76312
  friend class ::CCExprResolve;
 
76313
  friend class ::CExprResolve;
 
76314
 
 
76315
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76316
 
 
76317
  CTree *sons[4]; // expr, open, index, close
 
76318
 
 
76319
public:
 
76320
  CT_IndexExpr (CTree *e, CTree *o, CTree *i, CTree *c) {
 
76321
    sons[0] = e; sons[1] = o; sons[2] = i; sons[3] = c;
 
76322
  }
 
76323
  static const char *NodeId ();
 
76324
  const char *NodeName () const { return NodeId (); }
 
76325
  int Sons () const { return 4; }
 
76326
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
76327
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76328
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
76329
  }
 
76330
   private:
 
76331
  typedef CT_IndexExpr CCExprResolveExpr;
 
76332
 
 
76333
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76334
 public :
 
76335
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76336
  typedef CT_IndexExpr CExprResolveExpr;
 
76337
 
 
76338
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76339
 public :
 
76340
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76341
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76342
};
 
76343
 
 
76344
 
 
76345
#line 76346 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76346
} // closed Puma
 
76347
class WinIfExists;
 
76348
class WinImportHandler;
 
76349
class WinMacros;
 
76350
class CMatchSyntax;
 
76351
class ExtGnu;
 
76352
class ExtAC;
 
76353
class ExtACBuilderCoupling;
 
76354
class ExtACSyntaxCoupling;
 
76355
class ExtACTree;
 
76356
class ExtACKeywords;
 
76357
class WinAsm;
 
76358
class WinDeclSpecs;
 
76359
class WinMemberExplSpec;
 
76360
class WinTypeKeywords;
 
76361
class PragmaOnceUnitState;
 
76362
class PragmaOnce;
 
76363
class CCExprResolve;
 
76364
class CExprResolve;
 
76365
namespace Puma {
 
76366
 
 
76367
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76368
class CT_CallExpr : public CT_Expression, public CSemObject {
 
76369
#line 76370 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76370
  friend class ::WinIfExists;
 
76371
  friend class ::WinImportHandler;
 
76372
  friend class ::WinMacros;
 
76373
  friend class ::CMatchSyntax;
 
76374
  friend class ::ExtGnu;
 
76375
  friend class ::ExtAC;
 
76376
  friend class ::ExtACBuilderCoupling;
 
76377
  friend class ::ExtACSyntaxCoupling;
 
76378
  friend class ::ExtACTree;
 
76379
  friend class ::ExtACKeywords;
 
76380
  friend class ::WinAsm;
 
76381
  friend class ::WinDeclSpecs;
 
76382
  friend class ::WinMemberExplSpec;
 
76383
  friend class ::WinTypeKeywords;
 
76384
  friend class ::PragmaOnceUnitState;
 
76385
  friend class ::PragmaOnce;
 
76386
  friend class ::CCExprResolve;
 
76387
  friend class ::CExprResolve;
 
76388
 
 
76389
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76390
 
 
76391
  CTree *sons[2]; // expr, args
 
76392
 
 
76393
public:
 
76394
  CT_CallExpr (CTree *e) { sons[0] = e; sons[1] = 0; }
 
76395
  CT_CallExpr (CTree *e, CTree *l) { sons[0] = e; sons[1] = l; }
 
76396
  static const char *NodeId ();
 
76397
  const char *NodeName () const { return NodeId (); }
 
76398
  int Sons () const { return CTree::Sons (sons, 2); }
 
76399
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); } 
 
76400
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76401
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
76402
  }
 
76403
  CTree *Expr () const { return sons[0]; }
 
76404
  CT_ExprList *Arguments () const { return (CT_ExprList*)sons[1]; }
 
76405
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
76406
   private:
 
76407
  typedef CT_CallExpr CCExprResolveExpr;
 
76408
 
 
76409
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76410
 public :
 
76411
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76412
  typedef CT_CallExpr CExprResolveExpr;
 
76413
 
 
76414
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76415
 public :
 
76416
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76417
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76418
};
 
76419
 
 
76420
 
 
76421
#line 76422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76422
} // closed Puma
 
76423
class WinIfExists;
 
76424
class WinImportHandler;
 
76425
class WinMacros;
 
76426
class CMatchSyntax;
 
76427
class ExtGnu;
 
76428
class ExtAC;
 
76429
class ExtACBuilderCoupling;
 
76430
class ExtACSyntaxCoupling;
 
76431
class ExtACTree;
 
76432
class ExtACKeywords;
 
76433
class WinAsm;
 
76434
class WinDeclSpecs;
 
76435
class WinMemberExplSpec;
 
76436
class WinTypeKeywords;
 
76437
class PragmaOnceUnitState;
 
76438
class PragmaOnce;
 
76439
class CCExprResolve;
 
76440
class CExprResolve;
 
76441
namespace Puma {
 
76442
 
 
76443
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76444
class CT_CastExpr : public CT_Expression {
 
76445
#line 76446 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76446
  friend class ::WinIfExists;
 
76447
  friend class ::WinImportHandler;
 
76448
  friend class ::WinMacros;
 
76449
  friend class ::CMatchSyntax;
 
76450
  friend class ::ExtGnu;
 
76451
  friend class ::ExtAC;
 
76452
  friend class ::ExtACBuilderCoupling;
 
76453
  friend class ::ExtACSyntaxCoupling;
 
76454
  friend class ::ExtACTree;
 
76455
  friend class ::ExtACKeywords;
 
76456
  friend class ::WinAsm;
 
76457
  friend class ::WinDeclSpecs;
 
76458
  friend class ::WinMemberExplSpec;
 
76459
  friend class ::WinTypeKeywords;
 
76460
  friend class ::PragmaOnceUnitState;
 
76461
  friend class ::PragmaOnce;
 
76462
  friend class ::CCExprResolve;
 
76463
  friend class ::CExprResolve;
 
76464
 
 
76465
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76466
 
 
76467
  CTree *sons[4]; // open, type, close, expr
 
76468
 
 
76469
public:
 
76470
  CT_CastExpr (CTree *o, CTree *t, CTree *c, CTree *e) {
 
76471
    sons[0] = o; sons[1] = t; sons[2] = c; sons[3] = e;
 
76472
  }
 
76473
  static const char *NodeId ();
 
76474
  const char *NodeName () const { return NodeId (); }
 
76475
  int Sons () const { return 4; }
 
76476
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
76477
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76478
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
76479
  }
 
76480
  CTree *Expr () const { return sons[3]; }
 
76481
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
 
76482
   private:
 
76483
  typedef CT_CastExpr CCExprResolveExpr;
 
76484
 
 
76485
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76486
 public :
 
76487
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76488
  typedef CT_CastExpr CExprResolveExpr;
 
76489
 
 
76490
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76491
 public :
 
76492
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76493
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76494
};
 
76495
 
 
76496
 
 
76497
#line 76498 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76498
} // closed Puma
 
76499
class WinIfExists;
 
76500
class WinImportHandler;
 
76501
class WinMacros;
 
76502
class CMatchSyntax;
 
76503
class ExtGnu;
 
76504
class ExtAC;
 
76505
class ExtACBuilderCoupling;
 
76506
class ExtACSyntaxCoupling;
 
76507
class ExtACTree;
 
76508
class ExtACKeywords;
 
76509
class WinAsm;
 
76510
class WinDeclSpecs;
 
76511
class WinMemberExplSpec;
 
76512
class WinTypeKeywords;
 
76513
class PragmaOnceUnitState;
 
76514
class PragmaOnce;
 
76515
class CCExprResolve;
 
76516
class CExprResolve;
 
76517
namespace Puma {
 
76518
 
 
76519
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76520
class CT_StaticCast : public CT_Expression {
 
76521
#line 76522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76522
  friend class ::WinIfExists;
 
76523
  friend class ::WinImportHandler;
 
76524
  friend class ::WinMacros;
 
76525
  friend class ::CMatchSyntax;
 
76526
  friend class ::ExtGnu;
 
76527
  friend class ::ExtAC;
 
76528
  friend class ::ExtACBuilderCoupling;
 
76529
  friend class ::ExtACSyntaxCoupling;
 
76530
  friend class ::ExtACTree;
 
76531
  friend class ::ExtACKeywords;
 
76532
  friend class ::WinAsm;
 
76533
  friend class ::WinDeclSpecs;
 
76534
  friend class ::WinMemberExplSpec;
 
76535
  friend class ::WinTypeKeywords;
 
76536
  friend class ::PragmaOnceUnitState;
 
76537
  friend class ::PragmaOnce;
 
76538
  friend class ::CCExprResolve;
 
76539
  friend class ::CExprResolve;
 
76540
 
 
76541
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76542
 
 
76543
  CTree *sons[5]; // cast, open, type, close, expr
 
76544
 
 
76545
public:
 
76546
  CT_StaticCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) {
 
76547
    sons[0] = cst; sons[1] = o; sons[2] = t; sons[3] = c; sons[4] = e;
 
76548
  }
 
76549
  static const char *NodeId ();
 
76550
  const char *NodeName () const { return NodeId (); }
 
76551
  int Sons () const { return 5; }
 
76552
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
76553
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76554
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
76555
  }
 
76556
  CTree *Expr () const { return sons[4]; }
 
76557
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
 
76558
   private:
 
76559
  typedef CT_StaticCast CCExprResolveExpr;
 
76560
 
 
76561
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76562
 public :
 
76563
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76564
  typedef CT_StaticCast CExprResolveExpr;
 
76565
 
 
76566
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76567
 public :
 
76568
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76569
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76570
};
 
76571
 
 
76572
 
 
76573
#line 76574 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76574
} // closed Puma
 
76575
class WinIfExists;
 
76576
class WinImportHandler;
 
76577
class WinMacros;
 
76578
class CMatchSyntax;
 
76579
class ExtGnu;
 
76580
class ExtAC;
 
76581
class ExtACBuilderCoupling;
 
76582
class ExtACSyntaxCoupling;
 
76583
class ExtACTree;
 
76584
class ExtACKeywords;
 
76585
class WinAsm;
 
76586
class WinDeclSpecs;
 
76587
class WinMemberExplSpec;
 
76588
class WinTypeKeywords;
 
76589
class PragmaOnceUnitState;
 
76590
class PragmaOnce;
 
76591
class CCExprResolve;
 
76592
class CExprResolve;
 
76593
namespace Puma {
 
76594
 
 
76595
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76596
class CT_ConstCast : public CT_StaticCast {
 
76597
#line 76598 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76598
  friend class ::WinIfExists;
 
76599
  friend class ::WinImportHandler;
 
76600
  friend class ::WinMacros;
 
76601
  friend class ::CMatchSyntax;
 
76602
  friend class ::ExtGnu;
 
76603
  friend class ::ExtAC;
 
76604
  friend class ::ExtACBuilderCoupling;
 
76605
  friend class ::ExtACSyntaxCoupling;
 
76606
  friend class ::ExtACTree;
 
76607
  friend class ::ExtACKeywords;
 
76608
  friend class ::WinAsm;
 
76609
  friend class ::WinDeclSpecs;
 
76610
  friend class ::WinMemberExplSpec;
 
76611
  friend class ::WinTypeKeywords;
 
76612
  friend class ::PragmaOnceUnitState;
 
76613
  friend class ::PragmaOnce;
 
76614
  friend class ::CCExprResolve;
 
76615
  friend class ::CExprResolve;
 
76616
 
 
76617
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76618
 
 
76619
public:
 
76620
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
 
76621
    CT_StaticCast (cst, o, t, c, e) {}
 
76622
  static const char *NodeId ();
 
76623
  const char *NodeName () const { return NodeId (); }
 
76624
   private:
 
76625
  typedef CT_ConstCast CCExprResolveExpr;
 
76626
 
 
76627
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76628
 public :
 
76629
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76630
  typedef CT_ConstCast CExprResolveExpr;
 
76631
 
 
76632
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76633
 public :
 
76634
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76635
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76636
};
 
76637
 
 
76638
 
 
76639
#line 76640 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76640
} // closed Puma
 
76641
class WinIfExists;
 
76642
class WinImportHandler;
 
76643
class WinMacros;
 
76644
class CMatchSyntax;
 
76645
class ExtGnu;
 
76646
class ExtAC;
 
76647
class ExtACBuilderCoupling;
 
76648
class ExtACSyntaxCoupling;
 
76649
class ExtACTree;
 
76650
class ExtACKeywords;
 
76651
class WinAsm;
 
76652
class WinDeclSpecs;
 
76653
class WinMemberExplSpec;
 
76654
class WinTypeKeywords;
 
76655
class PragmaOnceUnitState;
 
76656
class PragmaOnce;
 
76657
class CCExprResolve;
 
76658
class CExprResolve;
 
76659
namespace Puma {
 
76660
 
 
76661
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76662
class CT_ReintCast : public CT_StaticCast {
 
76663
#line 76664 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76664
  friend class ::WinIfExists;
 
76665
  friend class ::WinImportHandler;
 
76666
  friend class ::WinMacros;
 
76667
  friend class ::CMatchSyntax;
 
76668
  friend class ::ExtGnu;
 
76669
  friend class ::ExtAC;
 
76670
  friend class ::ExtACBuilderCoupling;
 
76671
  friend class ::ExtACSyntaxCoupling;
 
76672
  friend class ::ExtACTree;
 
76673
  friend class ::ExtACKeywords;
 
76674
  friend class ::WinAsm;
 
76675
  friend class ::WinDeclSpecs;
 
76676
  friend class ::WinMemberExplSpec;
 
76677
  friend class ::WinTypeKeywords;
 
76678
  friend class ::PragmaOnceUnitState;
 
76679
  friend class ::PragmaOnce;
 
76680
  friend class ::CCExprResolve;
 
76681
  friend class ::CExprResolve;
 
76682
 
 
76683
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76684
 
 
76685
public:
 
76686
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
 
76687
    CT_StaticCast (cst, o, t, c, e) {}
 
76688
  static const char *NodeId ();
 
76689
  const char *NodeName () const { return NodeId (); }
 
76690
   private:
 
76691
  typedef CT_ReintCast CCExprResolveExpr;
 
76692
 
 
76693
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76694
 public :
 
76695
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76696
  typedef CT_ReintCast CExprResolveExpr;
 
76697
 
 
76698
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76699
 public :
 
76700
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76701
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76702
};
 
76703
 
 
76704
 
 
76705
#line 76706 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76706
} // closed Puma
 
76707
class WinIfExists;
 
76708
class WinImportHandler;
 
76709
class WinMacros;
 
76710
class CMatchSyntax;
 
76711
class ExtGnu;
 
76712
class ExtAC;
 
76713
class ExtACBuilderCoupling;
 
76714
class ExtACSyntaxCoupling;
 
76715
class ExtACTree;
 
76716
class ExtACKeywords;
 
76717
class WinAsm;
 
76718
class WinDeclSpecs;
 
76719
class WinMemberExplSpec;
 
76720
class WinTypeKeywords;
 
76721
class PragmaOnceUnitState;
 
76722
class PragmaOnce;
 
76723
class CCExprResolve;
 
76724
class CExprResolve;
 
76725
namespace Puma {
 
76726
 
 
76727
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76728
class CT_DynamicCast : public CT_StaticCast {
 
76729
#line 76730 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76730
  friend class ::WinIfExists;
 
76731
  friend class ::WinImportHandler;
 
76732
  friend class ::WinMacros;
 
76733
  friend class ::CMatchSyntax;
 
76734
  friend class ::ExtGnu;
 
76735
  friend class ::ExtAC;
 
76736
  friend class ::ExtACBuilderCoupling;
 
76737
  friend class ::ExtACSyntaxCoupling;
 
76738
  friend class ::ExtACTree;
 
76739
  friend class ::ExtACKeywords;
 
76740
  friend class ::WinAsm;
 
76741
  friend class ::WinDeclSpecs;
 
76742
  friend class ::WinMemberExplSpec;
 
76743
  friend class ::WinTypeKeywords;
 
76744
  friend class ::PragmaOnceUnitState;
 
76745
  friend class ::PragmaOnce;
 
76746
  friend class ::CCExprResolve;
 
76747
  friend class ::CExprResolve;
 
76748
 
 
76749
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76750
 
 
76751
public:
 
76752
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
 
76753
    CT_StaticCast (cst, o, t, c, e) {}
 
76754
  static const char *NodeId ();
 
76755
  const char *NodeName () const { return NodeId (); }
 
76756
   private:
 
76757
  typedef CT_DynamicCast CCExprResolveExpr;
 
76758
 
 
76759
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76760
 public :
 
76761
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76762
  typedef CT_DynamicCast CExprResolveExpr;
 
76763
 
 
76764
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76765
 public :
 
76766
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76767
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76768
};
 
76769
 
 
76770
 
 
76771
#line 76772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76772
} // closed Puma
 
76773
class WinIfExists;
 
76774
class WinImportHandler;
 
76775
class WinMacros;
 
76776
class CMatchSyntax;
 
76777
class ExtGnu;
 
76778
class ExtAC;
 
76779
class ExtACBuilderCoupling;
 
76780
class ExtACSyntaxCoupling;
 
76781
class ExtACTree;
 
76782
class ExtACKeywords;
 
76783
class WinAsm;
 
76784
class WinDeclSpecs;
 
76785
class WinMemberExplSpec;
 
76786
class WinTypeKeywords;
 
76787
class PragmaOnceUnitState;
 
76788
class PragmaOnce;
 
76789
class CCExprResolve;
 
76790
class CExprResolve;
 
76791
namespace Puma {
 
76792
 
 
76793
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76794
class CT_ImplicitCast : public CT_Expression {
 
76795
#line 76796 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76796
  friend class ::WinIfExists;
 
76797
  friend class ::WinImportHandler;
 
76798
  friend class ::WinMacros;
 
76799
  friend class ::CMatchSyntax;
 
76800
  friend class ::ExtGnu;
 
76801
  friend class ::ExtAC;
 
76802
  friend class ::ExtACBuilderCoupling;
 
76803
  friend class ::ExtACSyntaxCoupling;
 
76804
  friend class ::ExtACTree;
 
76805
  friend class ::ExtACKeywords;
 
76806
  friend class ::WinAsm;
 
76807
  friend class ::WinDeclSpecs;
 
76808
  friend class ::WinMemberExplSpec;
 
76809
  friend class ::WinTypeKeywords;
 
76810
  friend class ::PragmaOnceUnitState;
 
76811
  friend class ::PragmaOnce;
 
76812
  friend class ::CCExprResolve;
 
76813
  friend class ::CExprResolve;
 
76814
 
 
76815
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76816
 
 
76817
  CTree *_expr; // casted expression
 
76818
 
 
76819
public:
 
76820
  CT_ImplicitCast (CTree *e) : _expr (e) {}
 
76821
  static const char *NodeId ();
 
76822
  const char *NodeName () const { return NodeId (); }
 
76823
  int Sons () const { return 1; }
 
76824
  CTree *Son (int n) const { return n == 0 ? _expr : (CTree*)0; }
 
76825
  CTree *Expr () const { return _expr; }
 
76826
  void ReplaceSon (CTree *old_son, CTree *new_son) 
 
76827
   { if (old_son == _expr) _expr = new_son; }
 
76828
   private:
 
76829
  typedef CT_ImplicitCast CCExprResolveExpr;
 
76830
 
 
76831
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76832
 public :
 
76833
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76834
  typedef CT_ImplicitCast CExprResolveExpr;
 
76835
 
 
76836
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76837
 public :
 
76838
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76839
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76840
};
 
76841
 
 
76842
 
 
76843
#line 76844 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76844
} // closed Puma
 
76845
class WinIfExists;
 
76846
class WinImportHandler;
 
76847
class WinMacros;
 
76848
class CMatchSyntax;
 
76849
class ExtGnu;
 
76850
class ExtAC;
 
76851
class ExtACBuilderCoupling;
 
76852
class ExtACSyntaxCoupling;
 
76853
class ExtACTree;
 
76854
class ExtACKeywords;
 
76855
class WinAsm;
 
76856
class WinDeclSpecs;
 
76857
class WinMemberExplSpec;
 
76858
class WinTypeKeywords;
 
76859
class PragmaOnceUnitState;
 
76860
class PragmaOnce;
 
76861
class CCExprResolve;
 
76862
class CExprResolve;
 
76863
namespace Puma {
 
76864
 
 
76865
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76866
class CT_TypeidExpr : public CT_Expression {
 
76867
#line 76868 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76868
  friend class ::WinIfExists;
 
76869
  friend class ::WinImportHandler;
 
76870
  friend class ::WinMacros;
 
76871
  friend class ::CMatchSyntax;
 
76872
  friend class ::ExtGnu;
 
76873
  friend class ::ExtAC;
 
76874
  friend class ::ExtACBuilderCoupling;
 
76875
  friend class ::ExtACSyntaxCoupling;
 
76876
  friend class ::ExtACTree;
 
76877
  friend class ::ExtACKeywords;
 
76878
  friend class ::WinAsm;
 
76879
  friend class ::WinDeclSpecs;
 
76880
  friend class ::WinMemberExplSpec;
 
76881
  friend class ::WinTypeKeywords;
 
76882
  friend class ::PragmaOnceUnitState;
 
76883
  friend class ::PragmaOnce;
 
76884
  friend class ::CCExprResolve;
 
76885
  friend class ::CExprResolve;
 
76886
 
 
76887
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76888
 
 
76889
  CTree *sons[4]; // typeid, open, type_id/expr, close
 
76890
 
 
76891
public:
 
76892
  CT_TypeidExpr (CTree *tid, CTree *o, CTree *e, CTree *c) {
 
76893
    sons[0] = tid; sons[1] = o; sons[2] = e; sons[3] = c;
 
76894
  }
 
76895
  static const char *NodeId ();
 
76896
  const char *NodeName () const { return NodeId (); }
 
76897
  int Sons () const { return 4; }
 
76898
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
76899
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76900
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
76901
  }
 
76902
  CTree *Arg () const { return sons[2]; }
 
76903
   private:
 
76904
  typedef CT_TypeidExpr CCExprResolveExpr;
 
76905
 
 
76906
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76907
 public :
 
76908
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76909
  typedef CT_TypeidExpr CExprResolveExpr;
 
76910
 
 
76911
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76912
 public :
 
76913
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76914
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76915
};
 
76916
 
 
76917
 
 
76918
#line 76919 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76919
} // closed Puma
 
76920
class WinIfExists;
 
76921
class WinImportHandler;
 
76922
class WinMacros;
 
76923
class CMatchSyntax;
 
76924
class ExtGnu;
 
76925
class ExtAC;
 
76926
class ExtACBuilderCoupling;
 
76927
class ExtACSyntaxCoupling;
 
76928
class ExtACTree;
 
76929
class ExtACKeywords;
 
76930
class WinAsm;
 
76931
class WinDeclSpecs;
 
76932
class WinMemberExplSpec;
 
76933
class WinTypeKeywords;
 
76934
class PragmaOnceUnitState;
 
76935
class PragmaOnce;
 
76936
class CCExprResolve;
 
76937
class CExprResolve;
 
76938
namespace Puma {
 
76939
 
 
76940
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76941
class CT_SizeofExpr : public CT_Expression {
 
76942
#line 76943 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76943
  friend class ::WinIfExists;
 
76944
  friend class ::WinImportHandler;
 
76945
  friend class ::WinMacros;
 
76946
  friend class ::CMatchSyntax;
 
76947
  friend class ::ExtGnu;
 
76948
  friend class ::ExtAC;
 
76949
  friend class ::ExtACBuilderCoupling;
 
76950
  friend class ::ExtACSyntaxCoupling;
 
76951
  friend class ::ExtACTree;
 
76952
  friend class ::ExtACKeywords;
 
76953
  friend class ::WinAsm;
 
76954
  friend class ::WinDeclSpecs;
 
76955
  friend class ::WinMemberExplSpec;
 
76956
  friend class ::WinTypeKeywords;
 
76957
  friend class ::PragmaOnceUnitState;
 
76958
  friend class ::PragmaOnce;
 
76959
  friend class ::CCExprResolve;
 
76960
  friend class ::CExprResolve;
 
76961
 
 
76962
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76963
 
 
76964
  CTree *sons[5]; // key, open, type, close, expr
 
76965
 
 
76966
public:
 
76967
  CT_SizeofExpr (CTree *k, CTree *o, CTree *t, CTree *c) {
 
76968
    sons[0] = k; sons[1] = o; sons[2] = t; sons[3] = c; sons[4] = 0;
 
76969
  }
 
76970
  CT_SizeofExpr (CTree *k, CTree *e) {
 
76971
    sons[0] = k; sons[1] = 0; sons[2] = 0; sons[3] = 0; sons[4] = e;
 
76972
  }
 
76973
  static const char *NodeId ();
 
76974
  const char *NodeName () const { return NodeId (); }
 
76975
  int Sons () const { return CTree::Sons (sons, 5); }
 
76976
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
76977
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
76978
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
76979
  }
 
76980
  CTree *Expr () const { return sons[4]; }
 
76981
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
 
76982
   private:
 
76983
  typedef CT_SizeofExpr CCExprResolveExpr;
 
76984
 
 
76985
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
76986
 public :
 
76987
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
76988
  typedef CT_SizeofExpr CExprResolveExpr;
 
76989
 
 
76990
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
76991
 public :
 
76992
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
76993
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
76994
};
 
76995
 
 
76996
 
 
76997
#line 76998 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
76998
} // closed Puma
 
76999
class WinIfExists;
 
77000
class WinImportHandler;
 
77001
class WinMacros;
 
77002
class CMatchSyntax;
 
77003
class ExtGnu;
 
77004
class ExtAC;
 
77005
class ExtACBuilderCoupling;
 
77006
class ExtACSyntaxCoupling;
 
77007
class ExtACTree;
 
77008
class ExtACKeywords;
 
77009
class WinAsm;
 
77010
class WinDeclSpecs;
 
77011
class WinMemberExplSpec;
 
77012
class WinTypeKeywords;
 
77013
class PragmaOnceUnitState;
 
77014
class PragmaOnce;
 
77015
class CCExprResolve;
 
77016
class CExprResolve;
 
77017
namespace Puma {
 
77018
 
 
77019
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77020
class CT_IndexDesignator : public CT_Expression {
 
77021
#line 77022 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77022
  friend class ::WinIfExists;
 
77023
  friend class ::WinImportHandler;
 
77024
  friend class ::WinMacros;
 
77025
  friend class ::CMatchSyntax;
 
77026
  friend class ::ExtGnu;
 
77027
  friend class ::ExtAC;
 
77028
  friend class ::ExtACBuilderCoupling;
 
77029
  friend class ::ExtACSyntaxCoupling;
 
77030
  friend class ::ExtACTree;
 
77031
  friend class ::ExtACKeywords;
 
77032
  friend class ::WinAsm;
 
77033
  friend class ::WinDeclSpecs;
 
77034
  friend class ::WinMemberExplSpec;
 
77035
  friend class ::WinTypeKeywords;
 
77036
  friend class ::PragmaOnceUnitState;
 
77037
  friend class ::PragmaOnce;
 
77038
  friend class ::CCExprResolve;
 
77039
  friend class ::CExprResolve;
 
77040
 
 
77041
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77042
 
 
77043
  CTree *sons[3]; // open, index, close
 
77044
 
 
77045
public:
 
77046
  CT_IndexDesignator (CTree *o, CTree *i, CTree *c) {
 
77047
    sons[0] = o; sons[1] = i; sons[2] = c;
 
77048
  }
 
77049
  static const char *NodeId ();
 
77050
  const char *NodeName () const { return NodeId (); }
 
77051
  int Sons () const { return 3; }
 
77052
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
77053
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77054
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
77055
  }
 
77056
   private:
 
77057
  typedef CT_IndexDesignator CCExprResolveExpr;
 
77058
 
 
77059
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
77060
 public :
 
77061
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
77062
  typedef CT_IndexDesignator CExprResolveExpr;
 
77063
 
 
77064
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
77065
 public :
 
77066
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
77067
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77068
};
 
77069
 
 
77070
 
 
77071
#line 77072 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77072
} // closed Puma
 
77073
class WinIfExists;
 
77074
class WinImportHandler;
 
77075
class WinMacros;
 
77076
class CMatchSyntax;
 
77077
class ExtGnu;
 
77078
class ExtAC;
 
77079
class ExtACBuilderCoupling;
 
77080
class ExtACSyntaxCoupling;
 
77081
class ExtACTree;
 
77082
class ExtACKeywords;
 
77083
class WinAsm;
 
77084
class WinDeclSpecs;
 
77085
class WinMemberExplSpec;
 
77086
class WinTypeKeywords;
 
77087
class PragmaOnceUnitState;
 
77088
class PragmaOnce;
 
77089
class CCExprResolve;
 
77090
class CExprResolve;
 
77091
namespace Puma {
 
77092
 
 
77093
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77094
class CT_MembDesignator : public CT_Expression {
 
77095
#line 77096 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77096
  friend class ::WinIfExists;
 
77097
  friend class ::WinImportHandler;
 
77098
  friend class ::WinMacros;
 
77099
  friend class ::CMatchSyntax;
 
77100
  friend class ::ExtGnu;
 
77101
  friend class ::ExtAC;
 
77102
  friend class ::ExtACBuilderCoupling;
 
77103
  friend class ::ExtACSyntaxCoupling;
 
77104
  friend class ::ExtACTree;
 
77105
  friend class ::ExtACKeywords;
 
77106
  friend class ::WinAsm;
 
77107
  friend class ::WinDeclSpecs;
 
77108
  friend class ::WinMemberExplSpec;
 
77109
  friend class ::WinTypeKeywords;
 
77110
  friend class ::PragmaOnceUnitState;
 
77111
  friend class ::PragmaOnce;
 
77112
  friend class ::CCExprResolve;
 
77113
  friend class ::CExprResolve;
 
77114
 
 
77115
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77116
 
 
77117
  CTree *sons[2]; // dot, member
 
77118
 
 
77119
public:
 
77120
  CT_MembDesignator (CTree *d, CTree *m) { sons[0] = d; sons[1] = m; }
 
77121
  static const char *NodeId ();
 
77122
  const char *NodeName () const { return NodeId (); }
 
77123
  int Sons () const { return 2; }
 
77124
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
77125
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77126
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
77127
  }
 
77128
   private:
 
77129
  typedef CT_MembDesignator CCExprResolveExpr;
 
77130
 
 
77131
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
77132
 public :
 
77133
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
77134
  typedef CT_MembDesignator CExprResolveExpr;
 
77135
 
 
77136
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
77137
 public :
 
77138
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
77139
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77140
};
 
77141
 
 
77142
 
 
77143
#line 77144 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77144
} // closed Puma
 
77145
class WinIfExists;
 
77146
class WinImportHandler;
 
77147
class WinMacros;
 
77148
class CMatchSyntax;
 
77149
class ExtGnu;
 
77150
class ExtAC;
 
77151
class ExtACBuilderCoupling;
 
77152
class ExtACSyntaxCoupling;
 
77153
class ExtACTree;
 
77154
class ExtACKeywords;
 
77155
class WinAsm;
 
77156
class WinDeclSpecs;
 
77157
class WinMemberExplSpec;
 
77158
class WinTypeKeywords;
 
77159
class PragmaOnceUnitState;
 
77160
class PragmaOnce;
 
77161
class CCExprResolve;
 
77162
class CExprResolve;
 
77163
namespace Puma {
 
77164
 
 
77165
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77166
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
77167
#line 77168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77168
  friend class ::WinIfExists;
 
77169
  friend class ::WinImportHandler;
 
77170
  friend class ::WinMacros;
 
77171
  friend class ::CMatchSyntax;
 
77172
  friend class ::ExtGnu;
 
77173
  friend class ::ExtAC;
 
77174
  friend class ::ExtACBuilderCoupling;
 
77175
  friend class ::ExtACSyntaxCoupling;
 
77176
  friend class ::ExtACTree;
 
77177
  friend class ::ExtACKeywords;
 
77178
  friend class ::WinAsm;
 
77179
  friend class ::WinDeclSpecs;
 
77180
  friend class ::WinMemberExplSpec;
 
77181
  friend class ::WinTypeKeywords;
 
77182
  friend class ::PragmaOnceUnitState;
 
77183
  friend class ::PragmaOnce;
 
77184
  friend class ::CCExprResolve;
 
77185
  friend class ::CExprResolve;
 
77186
 
 
77187
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77188
 
 
77189
public:
 
77190
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
 
77191
  static const char *NodeId ();
 
77192
  const char *NodeName () const { return NodeId (); }
 
77193
 
 
77194
  CTypeInfo *Type () const { return type; }
 
77195
  CExprValue *Value () const { return value; }
 
77196
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
77197
};
 
77198
 
 
77199
/*****************************************************************************/
 
77200
/*                                                                           */
 
77201
/*                         Declaration specifiers                            */
 
77202
/*                                                                           */
 
77203
/*****************************************************************************/
 
77204
 
 
77205
 
 
77206
#line 77207 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77207
} // closed Puma
 
77208
class WinIfExists;
 
77209
class WinImportHandler;
 
77210
class WinMacros;
 
77211
class CMatchSyntax;
 
77212
class ExtGnu;
 
77213
class ExtAC;
 
77214
class ExtACBuilderCoupling;
 
77215
class ExtACSyntaxCoupling;
 
77216
class ExtACTree;
 
77217
class ExtACKeywords;
 
77218
class WinAsm;
 
77219
class WinDeclSpecs;
 
77220
class WinMemberExplSpec;
 
77221
class WinTypeKeywords;
 
77222
class PragmaOnceUnitState;
 
77223
class PragmaOnce;
 
77224
class CCExprResolve;
 
77225
class CExprResolve;
 
77226
namespace Puma {
 
77227
 
 
77228
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77229
class CT_DeclSpec : public CTree {
 
77230
#line 77231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77231
  friend class ::WinIfExists;
 
77232
  friend class ::WinImportHandler;
 
77233
  friend class ::WinMacros;
 
77234
  friend class ::CMatchSyntax;
 
77235
  friend class ::ExtGnu;
 
77236
  friend class ::ExtAC;
 
77237
  friend class ::ExtACBuilderCoupling;
 
77238
  friend class ::ExtACSyntaxCoupling;
 
77239
  friend class ::ExtACTree;
 
77240
  friend class ::ExtACKeywords;
 
77241
  friend class ::WinAsm;
 
77242
  friend class ::WinDeclSpecs;
 
77243
  friend class ::WinMemberExplSpec;
 
77244
  friend class ::WinTypeKeywords;
 
77245
  friend class ::PragmaOnceUnitState;
 
77246
  friend class ::PragmaOnce;
 
77247
  friend class ::CCExprResolve;
 
77248
  friend class ::CExprResolve;
 
77249
 
 
77250
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77251
 
 
77252
protected:
 
77253
  CT_DeclSpec () {}
 
77254
};
 
77255
 
 
77256
 
 
77257
#line 77258 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77258
} // closed Puma
 
77259
class WinIfExists;
 
77260
class WinImportHandler;
 
77261
class WinMacros;
 
77262
class CMatchSyntax;
 
77263
class ExtGnu;
 
77264
class ExtAC;
 
77265
class ExtACBuilderCoupling;
 
77266
class ExtACSyntaxCoupling;
 
77267
class ExtACTree;
 
77268
class ExtACKeywords;
 
77269
class WinAsm;
 
77270
class WinDeclSpecs;
 
77271
class WinMemberExplSpec;
 
77272
class WinTypeKeywords;
 
77273
class PragmaOnceUnitState;
 
77274
class PragmaOnce;
 
77275
class CCExprResolve;
 
77276
class CExprResolve;
 
77277
namespace Puma {
 
77278
 
 
77279
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77280
class CT_PrimDeclSpec : public CT_DeclSpec {
 
77281
#line 77282 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77282
  friend class ::WinIfExists;
 
77283
  friend class ::WinImportHandler;
 
77284
  friend class ::WinMacros;
 
77285
  friend class ::CMatchSyntax;
 
77286
  friend class ::ExtGnu;
 
77287
  friend class ::ExtAC;
 
77288
  friend class ::ExtACBuilderCoupling;
 
77289
  friend class ::ExtACSyntaxCoupling;
 
77290
  friend class ::ExtACTree;
 
77291
  friend class ::ExtACKeywords;
 
77292
  friend class ::WinAsm;
 
77293
  friend class ::WinDeclSpecs;
 
77294
  friend class ::WinMemberExplSpec;
 
77295
  friend class ::WinTypeKeywords;
 
77296
  friend class ::PragmaOnceUnitState;
 
77297
  friend class ::PragmaOnce;
 
77298
  friend class ::CCExprResolve;
 
77299
  friend class ::CExprResolve;
 
77300
 
 
77301
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77302
 
 
77303
public:
 
77304
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
 
77305
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
 
77306
              PDS_CONST, PDS_VOLATILE, PDS_RESTRICT, PDS_CHAR, PDS_WCHAR_T, 
 
77307
              PDS_BOOL, PDS_SHORT, PDS_INT, PDS_LONG, PDS_SIGNED, PDS_UNSIGNED, 
 
77308
              PDS_FLOAT, PDS_DOUBLE, PDS_VOID, 
 
77309
              // AspectC++ specific type specifier
 
77310
              PDS_UNKNOWN_T,
 
77311
              // Win specific declaration specifiers
 
77312
              PDS_CDECL, PDS_STDCALL, PDS_FASTCALL, PDS_INT64,
 
77313
              PDS_UNKNOWN, PDS_NUM };
 
77314
 
 
77315
private:
 
77316
  Type _type;
 
77317
  CT_Token *_token;
 
77318
 
 
77319
  void determine_type ();
 
77320
 
 
77321
public:
 
77322
  CT_PrimDeclSpec (CT_Token *t) : _token (t) { determine_type (); }
 
77323
  CT_PrimDeclSpec (Type t) : _token (0) { _type = t; }
 
77324
  static const char *NodeId ();
 
77325
  const char *NodeName () const { return NodeId (); }
 
77326
  int Sons () const { return _token ? 1 : 0; }
 
77327
  CTree *Son (int n) const 
 
77328
   { return (n == 0) ? _token : (CTree*)0; }
 
77329
  const char *SpecText () const 
 
77330
   { return _token ? _token->token ()->text ().c_str () : " "; }
 
77331
  Type SpecType () const { return _type; }
 
77332
  static const int NumTypes = PDS_NUM;
 
77333
};
 
77334
 
 
77335
 
 
77336
#line 77337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77337
} // closed Puma
 
77338
class WinIfExists;
 
77339
class WinImportHandler;
 
77340
class WinMacros;
 
77341
class CMatchSyntax;
 
77342
class ExtGnu;
 
77343
class ExtAC;
 
77344
class ExtACBuilderCoupling;
 
77345
class ExtACSyntaxCoupling;
 
77346
class ExtACTree;
 
77347
class ExtACKeywords;
 
77348
class WinAsm;
 
77349
class WinDeclSpecs;
 
77350
class WinMemberExplSpec;
 
77351
class WinTypeKeywords;
 
77352
class PragmaOnceUnitState;
 
77353
class PragmaOnce;
 
77354
class CCExprResolve;
 
77355
class CExprResolve;
 
77356
namespace Puma {
 
77357
 
 
77358
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77359
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
77360
#line 77361 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77361
  friend class ::WinIfExists;
 
77362
  friend class ::WinImportHandler;
 
77363
  friend class ::WinMacros;
 
77364
  friend class ::CMatchSyntax;
 
77365
  friend class ::ExtGnu;
 
77366
  friend class ::ExtAC;
 
77367
  friend class ::ExtACBuilderCoupling;
 
77368
  friend class ::ExtACSyntaxCoupling;
 
77369
  friend class ::ExtACTree;
 
77370
  friend class ::ExtACKeywords;
 
77371
  friend class ::WinAsm;
 
77372
  friend class ::WinDeclSpecs;
 
77373
  friend class ::WinMemberExplSpec;
 
77374
  friend class ::WinTypeKeywords;
 
77375
  friend class ::PragmaOnceUnitState;
 
77376
  friend class ::PragmaOnce;
 
77377
  friend class ::CCExprResolve;
 
77378
  friend class ::CExprResolve;
 
77379
 
 
77380
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77381
 
 
77382
  CTree *sons[2]; // declspecs, declarator
 
77383
 
 
77384
public:
 
77385
  CT_NamedType (CTree *dss, CTree *d) { sons[0] = dss; sons[1] = d; }
 
77386
  static const char *NodeId ();
 
77387
  const char *NodeName () const { return NodeId (); }
 
77388
  int Sons () const { return CTree::Sons (sons, 2); }
 
77389
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
77390
  CTree *Declarator () const { return sons[1]; }
 
77391
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77392
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
77393
  }
 
77394
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
77395
};
 
77396
      
 
77397
 
 
77398
#line 77399 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77399
} // closed Puma
 
77400
class WinIfExists;
 
77401
class WinImportHandler;
 
77402
class WinMacros;
 
77403
class CMatchSyntax;
 
77404
class ExtGnu;
 
77405
class ExtAC;
 
77406
class ExtACBuilderCoupling;
 
77407
class ExtACSyntaxCoupling;
 
77408
class ExtACTree;
 
77409
class ExtACKeywords;
 
77410
class WinAsm;
 
77411
class WinDeclSpecs;
 
77412
class WinMemberExplSpec;
 
77413
class WinTypeKeywords;
 
77414
class PragmaOnceUnitState;
 
77415
class PragmaOnce;
 
77416
class CCExprResolve;
 
77417
class CExprResolve;
 
77418
namespace Puma {
 
77419
 
 
77420
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77421
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
77422
#line 77423 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77423
  friend class ::WinIfExists;
 
77424
  friend class ::WinImportHandler;
 
77425
  friend class ::WinMacros;
 
77426
  friend class ::CMatchSyntax;
 
77427
  friend class ::ExtGnu;
 
77428
  friend class ::ExtAC;
 
77429
  friend class ::ExtACBuilderCoupling;
 
77430
  friend class ::ExtACSyntaxCoupling;
 
77431
  friend class ::ExtACTree;
 
77432
  friend class ::ExtACKeywords;
 
77433
  friend class ::WinAsm;
 
77434
  friend class ::WinDeclSpecs;
 
77435
  friend class ::WinMemberExplSpec;
 
77436
  friend class ::WinTypeKeywords;
 
77437
  friend class ::PragmaOnceUnitState;
 
77438
  friend class ::PragmaOnce;
 
77439
  friend class ::CCExprResolve;
 
77440
  friend class ::CExprResolve;
 
77441
 
 
77442
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77443
 
 
77444
  CTree *sons[2]; // key, name
 
77445
  
 
77446
public:
 
77447
  CT_ClassSpec (CTree *k, CTree *n) { sons[0] = k; sons[1] = n; }
 
77448
  static const char *NodeId ();
 
77449
  const char *NodeName () const { return NodeId (); }
 
77450
  int Sons () const { return 2; }
 
77451
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); } 
 
77452
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
 
77453
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
77454
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77455
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
77456
  }
 
77457
};
 
77458
 
 
77459
 
 
77460
#line 77461 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77461
} // closed Puma
 
77462
class WinIfExists;
 
77463
class WinImportHandler;
 
77464
class WinMacros;
 
77465
class CMatchSyntax;
 
77466
class ExtGnu;
 
77467
class ExtAC;
 
77468
class ExtACBuilderCoupling;
 
77469
class ExtACSyntaxCoupling;
 
77470
class ExtACTree;
 
77471
class ExtACKeywords;
 
77472
class WinAsm;
 
77473
class WinDeclSpecs;
 
77474
class WinMemberExplSpec;
 
77475
class WinTypeKeywords;
 
77476
class PragmaOnceUnitState;
 
77477
class PragmaOnce;
 
77478
class CCExprResolve;
 
77479
class CExprResolve;
 
77480
namespace Puma {
 
77481
 
 
77482
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77483
class CT_UnionSpec : public CT_ClassSpec {
 
77484
#line 77485 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77485
  friend class ::WinIfExists;
 
77486
  friend class ::WinImportHandler;
 
77487
  friend class ::WinMacros;
 
77488
  friend class ::CMatchSyntax;
 
77489
  friend class ::ExtGnu;
 
77490
  friend class ::ExtAC;
 
77491
  friend class ::ExtACBuilderCoupling;
 
77492
  friend class ::ExtACSyntaxCoupling;
 
77493
  friend class ::ExtACTree;
 
77494
  friend class ::ExtACKeywords;
 
77495
  friend class ::WinAsm;
 
77496
  friend class ::WinDeclSpecs;
 
77497
  friend class ::WinMemberExplSpec;
 
77498
  friend class ::WinTypeKeywords;
 
77499
  friend class ::PragmaOnceUnitState;
 
77500
  friend class ::PragmaOnce;
 
77501
  friend class ::CCExprResolve;
 
77502
  friend class ::CExprResolve;
 
77503
 
 
77504
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77505
 
 
77506
public:
 
77507
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
 
77508
  static const char *NodeId ();
 
77509
  const char *NodeName () const { return NodeId (); }
 
77510
};
 
77511
 
 
77512
 
 
77513
#line 77514 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77514
} // closed Puma
 
77515
class WinIfExists;
 
77516
class WinImportHandler;
 
77517
class WinMacros;
 
77518
class CMatchSyntax;
 
77519
class ExtGnu;
 
77520
class ExtAC;
 
77521
class ExtACBuilderCoupling;
 
77522
class ExtACSyntaxCoupling;
 
77523
class ExtACTree;
 
77524
class ExtACKeywords;
 
77525
class WinAsm;
 
77526
class WinDeclSpecs;
 
77527
class WinMemberExplSpec;
 
77528
class WinTypeKeywords;
 
77529
class PragmaOnceUnitState;
 
77530
class PragmaOnce;
 
77531
class CCExprResolve;
 
77532
class CExprResolve;
 
77533
namespace Puma {
 
77534
 
 
77535
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77536
class CT_EnumSpec : public CT_ClassSpec {
 
77537
#line 77538 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77538
  friend class ::WinIfExists;
 
77539
  friend class ::WinImportHandler;
 
77540
  friend class ::WinMacros;
 
77541
  friend class ::CMatchSyntax;
 
77542
  friend class ::ExtGnu;
 
77543
  friend class ::ExtAC;
 
77544
  friend class ::ExtACBuilderCoupling;
 
77545
  friend class ::ExtACSyntaxCoupling;
 
77546
  friend class ::ExtACTree;
 
77547
  friend class ::ExtACKeywords;
 
77548
  friend class ::WinAsm;
 
77549
  friend class ::WinDeclSpecs;
 
77550
  friend class ::WinMemberExplSpec;
 
77551
  friend class ::WinTypeKeywords;
 
77552
  friend class ::PragmaOnceUnitState;
 
77553
  friend class ::PragmaOnce;
 
77554
  friend class ::CCExprResolve;
 
77555
  friend class ::CExprResolve;
 
77556
 
 
77557
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77558
 
 
77559
public:
 
77560
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
 
77561
  static const char *NodeId ();
 
77562
  const char *NodeName () const { return NodeId (); }
 
77563
};
 
77564
 
 
77565
 
 
77566
#line 77567 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77567
} // closed Puma
 
77568
class WinIfExists;
 
77569
class WinImportHandler;
 
77570
class WinMacros;
 
77571
class CMatchSyntax;
 
77572
class ExtGnu;
 
77573
class ExtAC;
 
77574
class ExtACBuilderCoupling;
 
77575
class ExtACSyntaxCoupling;
 
77576
class ExtACTree;
 
77577
class ExtACKeywords;
 
77578
class WinAsm;
 
77579
class WinDeclSpecs;
 
77580
class WinMemberExplSpec;
 
77581
class WinTypeKeywords;
 
77582
class PragmaOnceUnitState;
 
77583
class PragmaOnce;
 
77584
class CCExprResolve;
 
77585
class CExprResolve;
 
77586
namespace Puma {
 
77587
 
 
77588
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77589
class CT_ExceptionSpec : public CT_DeclSpec {
 
77590
#line 77591 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77591
  friend class ::WinIfExists;
 
77592
  friend class ::WinImportHandler;
 
77593
  friend class ::WinMacros;
 
77594
  friend class ::CMatchSyntax;
 
77595
  friend class ::ExtGnu;
 
77596
  friend class ::ExtAC;
 
77597
  friend class ::ExtACBuilderCoupling;
 
77598
  friend class ::ExtACSyntaxCoupling;
 
77599
  friend class ::ExtACTree;
 
77600
  friend class ::ExtACKeywords;
 
77601
  friend class ::WinAsm;
 
77602
  friend class ::WinDeclSpecs;
 
77603
  friend class ::WinMemberExplSpec;
 
77604
  friend class ::WinTypeKeywords;
 
77605
  friend class ::PragmaOnceUnitState;
 
77606
  friend class ::PragmaOnce;
 
77607
  friend class ::CCExprResolve;
 
77608
  friend class ::CExprResolve;
 
77609
 
 
77610
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77611
 
 
77612
  CTree *sons[2]; // throw, type_id_list
 
77613
  
 
77614
public:
 
77615
  CT_ExceptionSpec (CTree *k, CTree *l) { sons[0] = k; sons[1] = l; }
 
77616
  static const char *NodeId ();
 
77617
  const char *NodeName () const { return NodeId (); }
 
77618
  int Sons () const { return 2; }
 
77619
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
77620
  CT_ArgDeclList *Arguments () const { return (CT_ArgDeclList*)sons[1]; }
 
77621
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77622
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
77623
  }
 
77624
};
 
77625
 
 
77626
/*****************************************************************************/
 
77627
/*                                                                           */
 
77628
/*                              Declarations                                 */
 
77629
/*                                                                           */
 
77630
/*****************************************************************************/
 
77631
 
 
77632
 
 
77633
#line 77634 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77634
} // closed Puma
 
77635
class WinIfExists;
 
77636
class WinImportHandler;
 
77637
class WinMacros;
 
77638
class CMatchSyntax;
 
77639
class ExtGnu;
 
77640
class ExtAC;
 
77641
class ExtACBuilderCoupling;
 
77642
class ExtACSyntaxCoupling;
 
77643
class ExtACTree;
 
77644
class ExtACKeywords;
 
77645
class WinAsm;
 
77646
class WinDeclSpecs;
 
77647
class WinMemberExplSpec;
 
77648
class WinTypeKeywords;
 
77649
class PragmaOnceUnitState;
 
77650
class PragmaOnce;
 
77651
class CCExprResolve;
 
77652
class CExprResolve;
 
77653
namespace Puma {
 
77654
 
 
77655
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77656
class CT_Decl : public CTree {
 
77657
#line 77658 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77658
  friend class ::WinIfExists;
 
77659
  friend class ::WinImportHandler;
 
77660
  friend class ::WinMacros;
 
77661
  friend class ::CMatchSyntax;
 
77662
  friend class ::ExtGnu;
 
77663
  friend class ::ExtAC;
 
77664
  friend class ::ExtACBuilderCoupling;
 
77665
  friend class ::ExtACSyntaxCoupling;
 
77666
  friend class ::ExtACTree;
 
77667
  friend class ::ExtACKeywords;
 
77668
  friend class ::WinAsm;
 
77669
  friend class ::WinDeclSpecs;
 
77670
  friend class ::WinMemberExplSpec;
 
77671
  friend class ::WinTypeKeywords;
 
77672
  friend class ::PragmaOnceUnitState;
 
77673
  friend class ::PragmaOnce;
 
77674
  friend class ::CCExprResolve;
 
77675
  friend class ::CExprResolve;
 
77676
 
 
77677
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77678
 
 
77679
  CT_LinkageSpec *_linkage;
 
77680
protected:
 
77681
  CT_Decl () : _linkage (0) {}
 
77682
public:
 
77683
  void Linkage (CT_LinkageSpec *l) { _linkage = l; }
 
77684
  CT_LinkageSpec *Linkage () const { return _linkage; }
 
77685
};
 
77686
 
 
77687
 
 
77688
#line 77689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77689
} // closed Puma
 
77690
class WinIfExists;
 
77691
class WinImportHandler;
 
77692
class WinMacros;
 
77693
class CMatchSyntax;
 
77694
class ExtGnu;
 
77695
class ExtAC;
 
77696
class ExtACBuilderCoupling;
 
77697
class ExtACSyntaxCoupling;
 
77698
class ExtACTree;
 
77699
class ExtACKeywords;
 
77700
class WinAsm;
 
77701
class WinDeclSpecs;
 
77702
class WinMemberExplSpec;
 
77703
class WinTypeKeywords;
 
77704
class PragmaOnceUnitState;
 
77705
class PragmaOnce;
 
77706
class CCExprResolve;
 
77707
class CExprResolve;
 
77708
namespace Puma {
 
77709
 
 
77710
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77711
class CT_Program : public CT_DeclList, public CSemScope {
 
77712
#line 77713 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77713
  friend class ::WinIfExists;
 
77714
  friend class ::WinImportHandler;
 
77715
  friend class ::WinMacros;
 
77716
  friend class ::CMatchSyntax;
 
77717
  friend class ::ExtGnu;
 
77718
  friend class ::ExtAC;
 
77719
  friend class ::ExtACBuilderCoupling;
 
77720
  friend class ::ExtACSyntaxCoupling;
 
77721
  friend class ::ExtACTree;
 
77722
  friend class ::ExtACKeywords;
 
77723
  friend class ::WinAsm;
 
77724
  friend class ::WinDeclSpecs;
 
77725
  friend class ::WinMemberExplSpec;
 
77726
  friend class ::WinTypeKeywords;
 
77727
  friend class ::PragmaOnceUnitState;
 
77728
  friend class ::PragmaOnce;
 
77729
  friend class ::CCExprResolve;
 
77730
  friend class ::CExprResolve;
 
77731
 
 
77732
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77733
 
 
77734
public:
 
77735
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
 
77736
  static const char *NodeId ();
 
77737
  const char *NodeName () const { return NodeId (); }
 
77738
};
 
77739
   
 
77740
 
 
77741
#line 77742 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77742
} // closed Puma
 
77743
class WinIfExists;
 
77744
class WinImportHandler;
 
77745
class WinMacros;
 
77746
class CMatchSyntax;
 
77747
class ExtGnu;
 
77748
class ExtAC;
 
77749
class ExtACBuilderCoupling;
 
77750
class ExtACSyntaxCoupling;
 
77751
class ExtACTree;
 
77752
class ExtACKeywords;
 
77753
class WinAsm;
 
77754
class WinDeclSpecs;
 
77755
class WinMemberExplSpec;
 
77756
class WinTypeKeywords;
 
77757
class PragmaOnceUnitState;
 
77758
class PragmaOnce;
 
77759
class CCExprResolve;
 
77760
class CExprResolve;
 
77761
namespace Puma {
 
77762
 
 
77763
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77764
class CT_ObjDecl : public CT_Decl {
 
77765
#line 77766 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77766
  friend class ::WinIfExists;
 
77767
  friend class ::WinImportHandler;
 
77768
  friend class ::WinMacros;
 
77769
  friend class ::CMatchSyntax;
 
77770
  friend class ::ExtGnu;
 
77771
  friend class ::ExtAC;
 
77772
  friend class ::ExtACBuilderCoupling;
 
77773
  friend class ::ExtACSyntaxCoupling;
 
77774
  friend class ::ExtACTree;
 
77775
  friend class ::ExtACKeywords;
 
77776
  friend class ::WinAsm;
 
77777
  friend class ::WinDeclSpecs;
 
77778
  friend class ::WinMemberExplSpec;
 
77779
  friend class ::WinTypeKeywords;
 
77780
  friend class ::PragmaOnceUnitState;
 
77781
  friend class ::PragmaOnce;
 
77782
  friend class ::CCExprResolve;
 
77783
  friend class ::CExprResolve;
 
77784
 
 
77785
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77786
 
 
77787
  CTree *sons[3]; // declspecs, declarators, colon
 
77788
 
 
77789
public:
 
77790
  CT_ObjDecl (CTree *dsl, CTree *dl, CTree *c) {
 
77791
    sons[0] = dsl; sons[1] = dl; sons[2] = c;
 
77792
  }
 
77793
  static const char *NodeId ();
 
77794
  const char *NodeName () const { return NodeId (); }
 
77795
  int Sons () const { return 3; }
 
77796
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
77797
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
 
77798
  CT_DeclaratorList *Declarators () const { return (CT_DeclaratorList*)sons[1]; }
 
77799
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77800
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
77801
  }
 
77802
};
 
77803
 
 
77804
 
 
77805
#line 77806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77806
} // closed Puma
 
77807
class WinIfExists;
 
77808
class WinImportHandler;
 
77809
class WinMacros;
 
77810
class CMatchSyntax;
 
77811
class ExtGnu;
 
77812
class ExtAC;
 
77813
class ExtACBuilderCoupling;
 
77814
class ExtACSyntaxCoupling;
 
77815
class ExtACTree;
 
77816
class ExtACKeywords;
 
77817
class WinAsm;
 
77818
class WinDeclSpecs;
 
77819
class WinMemberExplSpec;
 
77820
class WinTypeKeywords;
 
77821
class PragmaOnceUnitState;
 
77822
class PragmaOnce;
 
77823
class CCExprResolve;
 
77824
class CExprResolve;
 
77825
namespace Puma {
 
77826
 
 
77827
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77828
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
77829
#line 77830 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77830
  friend class ::WinIfExists;
 
77831
  friend class ::WinImportHandler;
 
77832
  friend class ::WinMacros;
 
77833
  friend class ::CMatchSyntax;
 
77834
  friend class ::ExtGnu;
 
77835
  friend class ::ExtAC;
 
77836
  friend class ::ExtACBuilderCoupling;
 
77837
  friend class ::ExtACSyntaxCoupling;
 
77838
  friend class ::ExtACTree;
 
77839
  friend class ::ExtACKeywords;
 
77840
  friend class ::WinAsm;
 
77841
  friend class ::WinDeclSpecs;
 
77842
  friend class ::WinMemberExplSpec;
 
77843
  friend class ::WinTypeKeywords;
 
77844
  friend class ::PragmaOnceUnitState;
 
77845
  friend class ::PragmaOnce;
 
77846
  friend class ::CCExprResolve;
 
77847
  friend class ::CExprResolve;
 
77848
 
 
77849
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77850
 
 
77851
  CTree *sons[3]; // export, param_list, decl
 
77852
 
 
77853
public:
 
77854
  CT_TemplateDecl (CTree *e, CTree *p, CTree *d) {
 
77855
    sons[0] = e; sons[1] = p; sons[2] = d;
 
77856
  }
 
77857
  static const char *NodeId ();
 
77858
  const char *NodeName () const { return NodeId (); }
 
77859
  int Sons () const { return CTree::Sons (sons, 3); }
 
77860
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
77861
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77862
    CTree::ReplaceSon (sons, 3, old_son, new_son); 
 
77863
  }
 
77864
  CTree *Export () const { return sons[0]; }
 
77865
  CT_TemplateParamList *Parameters () const { 
 
77866
    return (CT_TemplateParamList*)sons[1]; 
 
77867
  }
 
77868
  CTree *Declaration () const { return sons[2]; }
 
77869
};
 
77870
 
 
77871
 
 
77872
#line 77873 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77873
} // closed Puma
 
77874
class WinIfExists;
 
77875
class WinImportHandler;
 
77876
class WinMacros;
 
77877
class CMatchSyntax;
 
77878
class ExtGnu;
 
77879
class ExtAC;
 
77880
class ExtACBuilderCoupling;
 
77881
class ExtACSyntaxCoupling;
 
77882
class ExtACTree;
 
77883
class ExtACKeywords;
 
77884
class WinAsm;
 
77885
class WinDeclSpecs;
 
77886
class WinMemberExplSpec;
 
77887
class WinTypeKeywords;
 
77888
class PragmaOnceUnitState;
 
77889
class PragmaOnce;
 
77890
class CCExprResolve;
 
77891
class CExprResolve;
 
77892
namespace Puma {
 
77893
 
 
77894
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77895
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
77896
#line 77897 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77897
  friend class ::WinIfExists;
 
77898
  friend class ::WinImportHandler;
 
77899
  friend class ::WinMacros;
 
77900
  friend class ::CMatchSyntax;
 
77901
  friend class ::ExtGnu;
 
77902
  friend class ::ExtAC;
 
77903
  friend class ::ExtACBuilderCoupling;
 
77904
  friend class ::ExtACSyntaxCoupling;
 
77905
  friend class ::ExtACTree;
 
77906
  friend class ::ExtACKeywords;
 
77907
  friend class ::WinAsm;
 
77908
  friend class ::WinDeclSpecs;
 
77909
  friend class ::WinMemberExplSpec;
 
77910
  friend class ::WinTypeKeywords;
 
77911
  friend class ::PragmaOnceUnitState;
 
77912
  friend class ::PragmaOnce;
 
77913
  friend class ::CCExprResolve;
 
77914
  friend class ::CExprResolve;
 
77915
 
 
77916
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77917
 
 
77918
protected:
 
77919
  CT_TemplateParamDecl () {}
 
77920
  
 
77921
public:
 
77922
  virtual CT_ExprList *DefaultArgument () const = 0;
 
77923
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
77924
};
 
77925
 
 
77926
 
 
77927
#line 77928 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77928
} // closed Puma
 
77929
class WinIfExists;
 
77930
class WinImportHandler;
 
77931
class WinMacros;
 
77932
class CMatchSyntax;
 
77933
class ExtGnu;
 
77934
class ExtAC;
 
77935
class ExtACBuilderCoupling;
 
77936
class ExtACSyntaxCoupling;
 
77937
class ExtACTree;
 
77938
class ExtACKeywords;
 
77939
class WinAsm;
 
77940
class WinDeclSpecs;
 
77941
class WinMemberExplSpec;
 
77942
class WinTypeKeywords;
 
77943
class PragmaOnceUnitState;
 
77944
class PragmaOnce;
 
77945
class CCExprResolve;
 
77946
class CExprResolve;
 
77947
namespace Puma {
 
77948
 
 
77949
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77950
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
77951
#line 77952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77952
  friend class ::WinIfExists;
 
77953
  friend class ::WinImportHandler;
 
77954
  friend class ::WinMacros;
 
77955
  friend class ::CMatchSyntax;
 
77956
  friend class ::ExtGnu;
 
77957
  friend class ::ExtAC;
 
77958
  friend class ::ExtACBuilderCoupling;
 
77959
  friend class ::ExtACSyntaxCoupling;
 
77960
  friend class ::ExtACTree;
 
77961
  friend class ::ExtACKeywords;
 
77962
  friend class ::WinAsm;
 
77963
  friend class ::WinDeclSpecs;
 
77964
  friend class ::WinMemberExplSpec;
 
77965
  friend class ::WinTypeKeywords;
 
77966
  friend class ::PragmaOnceUnitState;
 
77967
  friend class ::PragmaOnce;
 
77968
  friend class ::CCExprResolve;
 
77969
  friend class ::CExprResolve;
 
77970
 
 
77971
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
77972
 
 
77973
  CTree *sons[3]; // declspecs, declarator, init
 
77974
 
 
77975
public:
 
77976
  CT_NonTypeParamDecl (CTree *dsl, CTree *d, CTree *i = (CTree*)0) {
 
77977
    sons[0] = dsl; sons[1] = d; sons[2] = i;
 
77978
  }
 
77979
  static const char *NodeId ();
 
77980
  const char *NodeName () const { return NodeId (); }
 
77981
  int Sons () const { return CTree::Sons (sons, 3); }
 
77982
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
77983
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
 
77984
  CTree *Declarator () const { return sons[1]; }
 
77985
  CT_ExprList *DefaultArgument () const { return (CT_ExprList*)sons[2]; }
 
77986
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
77987
  void Initializer (CTree *i) { sons[2] = i; }
 
77988
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
77989
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
77990
  }
 
77991
};
 
77992
 
 
77993
 
 
77994
#line 77995 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
77995
} // closed Puma
 
77996
class WinIfExists;
 
77997
class WinImportHandler;
 
77998
class WinMacros;
 
77999
class CMatchSyntax;
 
78000
class ExtGnu;
 
78001
class ExtAC;
 
78002
class ExtACBuilderCoupling;
 
78003
class ExtACSyntaxCoupling;
 
78004
class ExtACTree;
 
78005
class ExtACKeywords;
 
78006
class WinAsm;
 
78007
class WinDeclSpecs;
 
78008
class WinMemberExplSpec;
 
78009
class WinTypeKeywords;
 
78010
class PragmaOnceUnitState;
 
78011
class PragmaOnce;
 
78012
class CCExprResolve;
 
78013
class CExprResolve;
 
78014
namespace Puma {
 
78015
 
 
78016
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78017
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
78018
#line 78019 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78019
  friend class ::WinIfExists;
 
78020
  friend class ::WinImportHandler;
 
78021
  friend class ::WinMacros;
 
78022
  friend class ::CMatchSyntax;
 
78023
  friend class ::ExtGnu;
 
78024
  friend class ::ExtAC;
 
78025
  friend class ::ExtACBuilderCoupling;
 
78026
  friend class ::ExtACSyntaxCoupling;
 
78027
  friend class ::ExtACTree;
 
78028
  friend class ::ExtACKeywords;
 
78029
  friend class ::WinAsm;
 
78030
  friend class ::WinDeclSpecs;
 
78031
  friend class ::WinMemberExplSpec;
 
78032
  friend class ::WinTypeKeywords;
 
78033
  friend class ::PragmaOnceUnitState;
 
78034
  friend class ::PragmaOnce;
 
78035
  friend class ::CCExprResolve;
 
78036
  friend class ::CExprResolve;
 
78037
 
 
78038
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78039
 
 
78040
  CTree *sons[4]; // params, key, id, init
 
78041
 
 
78042
public:
 
78043
  CT_TypeParamDecl (CTree *t, CTree *k, CTree *id, CTree *i = (CTree*)0) { 
 
78044
    sons[0] = t; sons[1] = k; sons[2] = id; sons[3] = i;
 
78045
  }
 
78046
  static const char *NodeId ();
 
78047
  const char *NodeName () const { return NodeId (); }
 
78048
  int Sons () const { return CTree::Sons (sons, 4); }
 
78049
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
78050
  CT_TemplateParamList *Parameters () const { 
 
78051
    return (CT_TemplateParamList*)sons[0]; 
 
78052
  }
 
78053
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[2]; }
 
78054
  CT_ExprList *DefaultArgument () const { return (CT_ExprList*)sons[3]; }
 
78055
  void Initializer (CTree *i) { sons[3] = i; }
 
78056
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78057
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
78058
  }
 
78059
};
 
78060
 
 
78061
 
 
78062
#line 78063 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78063
} // closed Puma
 
78064
class WinIfExists;
 
78065
class WinImportHandler;
 
78066
class WinMacros;
 
78067
class CMatchSyntax;
 
78068
class ExtGnu;
 
78069
class ExtAC;
 
78070
class ExtACBuilderCoupling;
 
78071
class ExtACSyntaxCoupling;
 
78072
class ExtACTree;
 
78073
class ExtACKeywords;
 
78074
class WinAsm;
 
78075
class WinDeclSpecs;
 
78076
class WinMemberExplSpec;
 
78077
class WinTypeKeywords;
 
78078
class PragmaOnceUnitState;
 
78079
class PragmaOnce;
 
78080
class CCExprResolve;
 
78081
class CExprResolve;
 
78082
namespace Puma {
 
78083
 
 
78084
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78085
class CT_EnumDef : public CT_Decl, public CSemObject {
 
78086
#line 78087 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78087
  friend class ::WinIfExists;
 
78088
  friend class ::WinImportHandler;
 
78089
  friend class ::WinMacros;
 
78090
  friend class ::CMatchSyntax;
 
78091
  friend class ::ExtGnu;
 
78092
  friend class ::ExtAC;
 
78093
  friend class ::ExtACBuilderCoupling;
 
78094
  friend class ::ExtACSyntaxCoupling;
 
78095
  friend class ::ExtACTree;
 
78096
  friend class ::ExtACKeywords;
 
78097
  friend class ::WinAsm;
 
78098
  friend class ::WinDeclSpecs;
 
78099
  friend class ::WinMemberExplSpec;
 
78100
  friend class ::WinTypeKeywords;
 
78101
  friend class ::PragmaOnceUnitState;
 
78102
  friend class ::PragmaOnce;
 
78103
  friend class ::CCExprResolve;
 
78104
  friend class ::CExprResolve;
 
78105
 
 
78106
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78107
 
 
78108
  CTree *sons[3]; // key, name, enumerators
 
78109
 
 
78110
public:
 
78111
  CT_EnumDef (CTree *k, CTree *n) {
 
78112
    sons[0] = k; sons[1] = n; sons[2] = 0; 
 
78113
  }
 
78114
  static const char *NodeId ();
 
78115
  const char *NodeName () const { return NodeId (); }
 
78116
  int Sons () const { return CTree::Sons (sons, 3); }
 
78117
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
78118
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
 
78119
  void Enumerators (CTree *el) { sons[2] = el; }
 
78120
  CT_EnumeratorList *Enumerators () const { return (CT_EnumeratorList*)sons[2]; }
 
78121
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78122
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
78123
  }
 
78124
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
78125
};
 
78126
 
 
78127
 
 
78128
#line 78129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78129
} // closed Puma
 
78130
class WinIfExists;
 
78131
class WinImportHandler;
 
78132
class WinMacros;
 
78133
class CMatchSyntax;
 
78134
class ExtGnu;
 
78135
class ExtAC;
 
78136
class ExtACBuilderCoupling;
 
78137
class ExtACSyntaxCoupling;
 
78138
class ExtACTree;
 
78139
class ExtACKeywords;
 
78140
class WinAsm;
 
78141
class WinDeclSpecs;
 
78142
class WinMemberExplSpec;
 
78143
class WinTypeKeywords;
 
78144
class PragmaOnceUnitState;
 
78145
class PragmaOnce;
 
78146
class CCExprResolve;
 
78147
class CExprResolve;
 
78148
namespace Puma {
 
78149
 
 
78150
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78151
class CT_Enumerator : public CT_Decl, public CSemObject {
 
78152
#line 78153 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78153
  friend class ::WinIfExists;
 
78154
  friend class ::WinImportHandler;
 
78155
  friend class ::WinMacros;
 
78156
  friend class ::CMatchSyntax;
 
78157
  friend class ::ExtGnu;
 
78158
  friend class ::ExtAC;
 
78159
  friend class ::ExtACBuilderCoupling;
 
78160
  friend class ::ExtACSyntaxCoupling;
 
78161
  friend class ::ExtACTree;
 
78162
  friend class ::ExtACKeywords;
 
78163
  friend class ::WinAsm;
 
78164
  friend class ::WinDeclSpecs;
 
78165
  friend class ::WinMemberExplSpec;
 
78166
  friend class ::WinTypeKeywords;
 
78167
  friend class ::PragmaOnceUnitState;
 
78168
  friend class ::PragmaOnce;
 
78169
  friend class ::CCExprResolve;
 
78170
  friend class ::CExprResolve;
 
78171
 
 
78172
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78173
 
 
78174
  CTree *sons[2]; // name, init
 
78175
 
 
78176
public:
 
78177
  CT_Enumerator (CTree *n) { sons[0] = n; sons[1] = 0; }
 
78178
  static const char *NodeId ();
 
78179
  const char *NodeName () const { return NodeId (); }
 
78180
  int Sons () const { return CTree::Sons (sons, 2); }
 
78181
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
78182
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[0]; }
 
78183
  void Initializer (CTree *i) { sons[1] = i; }
 
78184
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
 
78185
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78186
    CTree::ReplaceSon (sons, 2, old_son, new_son); 
 
78187
  }
 
78188
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
78189
};
 
78190
 
 
78191
 
 
78192
#line 78193 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78193
} // closed Puma
 
78194
class WinIfExists;
 
78195
class WinImportHandler;
 
78196
class WinMacros;
 
78197
class CMatchSyntax;
 
78198
class ExtGnu;
 
78199
class ExtAC;
 
78200
class ExtACBuilderCoupling;
 
78201
class ExtACSyntaxCoupling;
 
78202
class ExtACTree;
 
78203
class ExtACKeywords;
 
78204
class WinAsm;
 
78205
class WinDeclSpecs;
 
78206
class WinMemberExplSpec;
 
78207
class WinTypeKeywords;
 
78208
class PragmaOnceUnitState;
 
78209
class PragmaOnce;
 
78210
class CCExprResolve;
 
78211
class CExprResolve;
 
78212
namespace Puma {
 
78213
 
 
78214
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78215
class CT_FctDef : public CT_Decl, public CSemObject {
 
78216
#line 78217 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78217
  friend class ::WinIfExists;
 
78218
  friend class ::WinImportHandler;
 
78219
  friend class ::WinMacros;
 
78220
  friend class ::CMatchSyntax;
 
78221
  friend class ::ExtGnu;
 
78222
  friend class ::ExtAC;
 
78223
  friend class ::ExtACBuilderCoupling;
 
78224
  friend class ::ExtACSyntaxCoupling;
 
78225
  friend class ::ExtACTree;
 
78226
  friend class ::ExtACKeywords;
 
78227
  friend class ::WinAsm;
 
78228
  friend class ::WinDeclSpecs;
 
78229
  friend class ::WinMemberExplSpec;
 
78230
  friend class ::WinTypeKeywords;
 
78231
  friend class ::PragmaOnceUnitState;
 
78232
  friend class ::PragmaOnce;
 
78233
  friend class ::CCExprResolve;
 
78234
  friend class ::CExprResolve;
 
78235
 
 
78236
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78237
 
 
78238
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
 
78239
 
 
78240
public:
 
78241
  CT_FctDef (CTree *dss, CTree *d, CTree *t, CTree *ci, CTree *as, 
 
78242
             CTree *b, CTree *hs) {
 
78243
    sons[0] = dss; sons[1] = d; sons[2] = t; sons[3] = ci; sons[4] = as; 
 
78244
    sons[5] = b; sons[6] = hs; 
 
78245
  }
 
78246
  static const char *NodeId ();
 
78247
  const char *NodeName () const { return NodeId (); }
 
78248
  int Sons () const { return CTree::Sons (sons, 7); }
 
78249
  CTree *Son (int n) const { return CTree::Son (sons, 7, n); }
 
78250
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
 
78251
  CTree *Declarator () const { return sons[1]; }
 
78252
  CT_Token *TryKey () const { return (CT_Token*)sons[2]; }
 
78253
  CTree *CtorInit () const { return sons[3]; }
 
78254
  CT_ArgDeclSeq *ArgDeclSeq () const { return (CT_ArgDeclSeq*)sons[4]; }
 
78255
  CT_CmpdStmt *Body () const { return (CT_CmpdStmt*)sons[5]; }
 
78256
  CT_HandlerSeq *Handlers () const { return (CT_HandlerSeq*)sons[6]; }
 
78257
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
78258
  void CtorInit (CTree *i) { sons[3] = i; }
 
78259
  void Body (CTree *b) { sons[5] = b; }
 
78260
  void FctTryBlock (CTree *t, CTree *c, CTree *b, CTree *h) { 
 
78261
    sons[2] = t; sons[3] = c; sons[5] = b; sons[6] = h;
 
78262
  }
 
78263
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78264
    CTree::ReplaceSon (sons, 7, old_son, new_son);
 
78265
  }
 
78266
};
 
78267
 
 
78268
 
 
78269
#line 78270 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78270
} // closed Puma
 
78271
class WinIfExists;
 
78272
class WinImportHandler;
 
78273
class WinMacros;
 
78274
class CMatchSyntax;
 
78275
class ExtGnu;
 
78276
class ExtAC;
 
78277
class ExtACBuilderCoupling;
 
78278
class ExtACSyntaxCoupling;
 
78279
class ExtACTree;
 
78280
class ExtACKeywords;
 
78281
class WinAsm;
 
78282
class WinDeclSpecs;
 
78283
class WinMemberExplSpec;
 
78284
class WinTypeKeywords;
 
78285
class PragmaOnceUnitState;
 
78286
class PragmaOnce;
 
78287
class CCExprResolve;
 
78288
class CExprResolve;
 
78289
namespace Puma {
 
78290
 
 
78291
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78292
class CT_AsmDef : public CT_Decl {
 
78293
#line 78294 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78294
  friend class ::WinIfExists;
 
78295
  friend class ::WinImportHandler;
 
78296
  friend class ::WinMacros;
 
78297
  friend class ::CMatchSyntax;
 
78298
  friend class ::ExtGnu;
 
78299
  friend class ::ExtAC;
 
78300
  friend class ::ExtACBuilderCoupling;
 
78301
  friend class ::ExtACSyntaxCoupling;
 
78302
  friend class ::ExtACTree;
 
78303
  friend class ::ExtACKeywords;
 
78304
  friend class ::WinAsm;
 
78305
  friend class ::WinDeclSpecs;
 
78306
  friend class ::WinMemberExplSpec;
 
78307
  friend class ::WinTypeKeywords;
 
78308
  friend class ::PragmaOnceUnitState;
 
78309
  friend class ::PragmaOnce;
 
78310
  friend class ::CCExprResolve;
 
78311
  friend class ::CExprResolve;
 
78312
 
 
78313
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78314
 
 
78315
  CTree *sons[5]; // asm, open, str, close, semi_colon
 
78316
 
 
78317
public:
 
78318
  CT_AsmDef (CTree *a, CTree *o, CTree *s, CTree *c, CTree *sc) {
 
78319
    sons[0] = a; sons[1] = o; sons[2] = s; sons[3] = c; sons[4] = sc; 
 
78320
  }
 
78321
  static const char *NodeId ();
 
78322
  const char *NodeName () const { return NodeId (); }
 
78323
  int Sons () const { return 5; }
 
78324
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
78325
  CT_String *Instructions () const { return (CT_String*)sons[2]; }
 
78326
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78327
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
78328
  }
 
78329
};
 
78330
 
 
78331
 
 
78332
#line 78333 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78333
} // closed Puma
 
78334
class WinIfExists;
 
78335
class WinImportHandler;
 
78336
class WinMacros;
 
78337
class CMatchSyntax;
 
78338
class ExtGnu;
 
78339
class ExtAC;
 
78340
class ExtACBuilderCoupling;
 
78341
class ExtACSyntaxCoupling;
 
78342
class ExtACTree;
 
78343
class ExtACKeywords;
 
78344
class WinAsm;
 
78345
class WinDeclSpecs;
 
78346
class WinMemberExplSpec;
 
78347
class WinTypeKeywords;
 
78348
class PragmaOnceUnitState;
 
78349
class PragmaOnce;
 
78350
class CCExprResolve;
 
78351
class CExprResolve;
 
78352
namespace Puma {
 
78353
 
 
78354
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78355
class CT_Handler : public CT_Decl, public CSemScope {
 
78356
#line 78357 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78357
  friend class ::WinIfExists;
 
78358
  friend class ::WinImportHandler;
 
78359
  friend class ::WinMacros;
 
78360
  friend class ::CMatchSyntax;
 
78361
  friend class ::ExtGnu;
 
78362
  friend class ::ExtAC;
 
78363
  friend class ::ExtACBuilderCoupling;
 
78364
  friend class ::ExtACSyntaxCoupling;
 
78365
  friend class ::ExtACTree;
 
78366
  friend class ::ExtACKeywords;
 
78367
  friend class ::WinAsm;
 
78368
  friend class ::WinDeclSpecs;
 
78369
  friend class ::WinMemberExplSpec;
 
78370
  friend class ::WinTypeKeywords;
 
78371
  friend class ::PragmaOnceUnitState;
 
78372
  friend class ::PragmaOnce;
 
78373
  friend class ::CCExprResolve;
 
78374
  friend class ::CExprResolve;
 
78375
 
 
78376
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78377
 
 
78378
  CTree *sons[3]; // catch, exception_decl, stmt
 
78379
 
 
78380
public:
 
78381
  CT_Handler (CTree *c, CTree *e, CTree *s) {
 
78382
    sons[0] = c; sons[1] = e; sons[2] = s;
 
78383
  }
 
78384
  static const char *NodeId ();
 
78385
  const char *NodeName () const { return NodeId (); }
 
78386
  int Sons () const { return 3; }
 
78387
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
78388
  CT_ArgDeclList *Arguments () const { return (CT_ArgDeclList*)sons[1]; }
 
78389
  CT_Statement *Statement () const { return (CT_Statement*)sons[2]; }
 
78390
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78391
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
78392
  }
 
78393
};
 
78394
 
 
78395
 
 
78396
#line 78397 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78397
} // closed Puma
 
78398
class WinIfExists;
 
78399
class WinImportHandler;
 
78400
class WinMacros;
 
78401
class CMatchSyntax;
 
78402
class ExtGnu;
 
78403
class ExtAC;
 
78404
class ExtACBuilderCoupling;
 
78405
class ExtACSyntaxCoupling;
 
78406
class ExtACTree;
 
78407
class ExtACKeywords;
 
78408
class WinAsm;
 
78409
class WinDeclSpecs;
 
78410
class WinMemberExplSpec;
 
78411
class WinTypeKeywords;
 
78412
class PragmaOnceUnitState;
 
78413
class PragmaOnce;
 
78414
class CCExprResolve;
 
78415
class CExprResolve;
 
78416
namespace Puma {
 
78417
 
 
78418
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78419
class CT_LinkageSpec : public CT_Decl {
 
78420
#line 78421 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78421
  friend class ::WinIfExists;
 
78422
  friend class ::WinImportHandler;
 
78423
  friend class ::WinMacros;
 
78424
  friend class ::CMatchSyntax;
 
78425
  friend class ::ExtGnu;
 
78426
  friend class ::ExtAC;
 
78427
  friend class ::ExtACBuilderCoupling;
 
78428
  friend class ::ExtACSyntaxCoupling;
 
78429
  friend class ::ExtACTree;
 
78430
  friend class ::ExtACKeywords;
 
78431
  friend class ::WinAsm;
 
78432
  friend class ::WinDeclSpecs;
 
78433
  friend class ::WinMemberExplSpec;
 
78434
  friend class ::WinTypeKeywords;
 
78435
  friend class ::PragmaOnceUnitState;
 
78436
  friend class ::PragmaOnce;
 
78437
  friend class ::CCExprResolve;
 
78438
  friend class ::CExprResolve;
 
78439
 
 
78440
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78441
 
 
78442
  CTree *sons[5]; // extern, str, open, decls, close
 
78443
 
 
78444
public:
 
78445
  CT_LinkageSpec (CTree *e, CTree *s, CTree *o, CTree *d, CTree *c) {
 
78446
    sons[0] = e; sons[1] = s; sons[2] = o; sons[3] = d; sons[4] = c;
 
78447
    if (isList ())
 
78448
      ((CT_DeclList*)Decls ())->Linkage (this);
 
78449
    else
 
78450
      ((CT_Decl*)Decls ())->Linkage (this);
 
78451
  }
 
78452
  static const char *NodeId ();
 
78453
  const char *NodeName () const { return NodeId (); }
 
78454
  int Sons () const { return CTree::Sons (sons, 5); }
 
78455
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
78456
  CT_String *Linkage () const { return (CT_String*)sons[1]; }
 
78457
  CTree *Decls () const { return sons[3]; }
 
78458
  bool isList () const {
 
78459
    return Decls ()->NodeName () == CT_DeclList::NodeId ();
 
78460
  }
 
78461
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78462
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
78463
  }
 
78464
};
 
78465
 
 
78466
 
 
78467
#line 78468 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78468
} // closed Puma
 
78469
class WinIfExists;
 
78470
class WinImportHandler;
 
78471
class WinMacros;
 
78472
class CMatchSyntax;
 
78473
class ExtGnu;
 
78474
class ExtAC;
 
78475
class ExtACBuilderCoupling;
 
78476
class ExtACSyntaxCoupling;
 
78477
class ExtACTree;
 
78478
class ExtACKeywords;
 
78479
class WinAsm;
 
78480
class WinDeclSpecs;
 
78481
class WinMemberExplSpec;
 
78482
class WinTypeKeywords;
 
78483
class PragmaOnceUnitState;
 
78484
class PragmaOnce;
 
78485
class CCExprResolve;
 
78486
class CExprResolve;
 
78487
namespace Puma {
 
78488
 
 
78489
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78490
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
78491
#line 78492 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78492
  friend class ::WinIfExists;
 
78493
  friend class ::WinImportHandler;
 
78494
  friend class ::WinMacros;
 
78495
  friend class ::CMatchSyntax;
 
78496
  friend class ::ExtGnu;
 
78497
  friend class ::ExtAC;
 
78498
  friend class ::ExtACBuilderCoupling;
 
78499
  friend class ::ExtACSyntaxCoupling;
 
78500
  friend class ::ExtACTree;
 
78501
  friend class ::ExtACKeywords;
 
78502
  friend class ::WinAsm;
 
78503
  friend class ::WinDeclSpecs;
 
78504
  friend class ::WinMemberExplSpec;
 
78505
  friend class ::WinTypeKeywords;
 
78506
  friend class ::PragmaOnceUnitState;
 
78507
  friend class ::PragmaOnce;
 
78508
  friend class ::CCExprResolve;
 
78509
  friend class ::CExprResolve;
 
78510
 
 
78511
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78512
 
 
78513
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
 
78514
 
 
78515
public:
 
78516
  CT_ArgDecl (CTree *dsl, CTree *d) {
 
78517
    sons[0] = dsl; sons[1] = d; sons[2] = 0; sons[3] = 0; 
 
78518
  }
 
78519
  CT_ArgDecl (CTree *ellipsis) {
 
78520
    sons[0] = 0; sons[1] = 0; sons[2] = 0; sons[3] = ellipsis; 
 
78521
  }
 
78522
  static const char *NodeId ();
 
78523
  const char *NodeName () const { return NodeId (); }
 
78524
  int Sons () const { return CTree::Sons (sons, 4); }
 
78525
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
78526
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
 
78527
  CTree *Declarator () const { return sons[1]; }
 
78528
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[2]; }
 
78529
  CT_Token *Ellipsis () const { return (CT_Token*)sons[3]; }
 
78530
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
78531
  void Initializer (CTree *i) { sons[2] = i; }
 
78532
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78533
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
78534
  }
 
78535
};
 
78536
 
 
78537
 
 
78538
#line 78539 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78539
} // closed Puma
 
78540
class WinIfExists;
 
78541
class WinImportHandler;
 
78542
class WinMacros;
 
78543
class CMatchSyntax;
 
78544
class ExtGnu;
 
78545
class ExtAC;
 
78546
class ExtACBuilderCoupling;
 
78547
class ExtACSyntaxCoupling;
 
78548
class ExtACTree;
 
78549
class ExtACKeywords;
 
78550
class WinAsm;
 
78551
class WinDeclSpecs;
 
78552
class WinMemberExplSpec;
 
78553
class WinTypeKeywords;
 
78554
class PragmaOnceUnitState;
 
78555
class PragmaOnce;
 
78556
class CCExprResolve;
 
78557
class CExprResolve;
 
78558
namespace Puma {
 
78559
 
 
78560
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78561
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
78562
#line 78563 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78563
  friend class ::WinIfExists;
 
78564
  friend class ::WinImportHandler;
 
78565
  friend class ::WinMacros;
 
78566
  friend class ::CMatchSyntax;
 
78567
  friend class ::ExtGnu;
 
78568
  friend class ::ExtAC;
 
78569
  friend class ::ExtACBuilderCoupling;
 
78570
  friend class ::ExtACSyntaxCoupling;
 
78571
  friend class ::ExtACTree;
 
78572
  friend class ::ExtACKeywords;
 
78573
  friend class ::WinAsm;
 
78574
  friend class ::WinDeclSpecs;
 
78575
  friend class ::WinMemberExplSpec;
 
78576
  friend class ::WinTypeKeywords;
 
78577
  friend class ::PragmaOnceUnitState;
 
78578
  friend class ::PragmaOnce;
 
78579
  friend class ::CCExprResolve;
 
78580
  friend class ::CExprResolve;
 
78581
 
 
78582
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78583
 
 
78584
public:
 
78585
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
 
78586
   CT_DeclList (size, 2) { AddProperties (props); }
 
78587
  static const char *NodeId ();
 
78588
  const char *NodeName () const { return NodeId (); }
 
78589
};
 
78590
 
 
78591
 
 
78592
#line 78593 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78593
} // closed Puma
 
78594
class WinIfExists;
 
78595
class WinImportHandler;
 
78596
class WinMacros;
 
78597
class CMatchSyntax;
 
78598
class ExtGnu;
 
78599
class ExtAC;
 
78600
class ExtACBuilderCoupling;
 
78601
class ExtACSyntaxCoupling;
 
78602
class ExtACTree;
 
78603
class ExtACKeywords;
 
78604
class WinAsm;
 
78605
class WinDeclSpecs;
 
78606
class WinMemberExplSpec;
 
78607
class WinTypeKeywords;
 
78608
class PragmaOnceUnitState;
 
78609
class PragmaOnce;
 
78610
class CCExprResolve;
 
78611
class CExprResolve;
 
78612
namespace Puma {
 
78613
 
 
78614
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78615
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
78616
#line 78617 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78617
  friend class ::WinIfExists;
 
78618
  friend class ::WinImportHandler;
 
78619
  friend class ::WinMacros;
 
78620
  friend class ::CMatchSyntax;
 
78621
  friend class ::ExtGnu;
 
78622
  friend class ::ExtAC;
 
78623
  friend class ::ExtACBuilderCoupling;
 
78624
  friend class ::ExtACSyntaxCoupling;
 
78625
  friend class ::ExtACTree;
 
78626
  friend class ::ExtACKeywords;
 
78627
  friend class ::WinAsm;
 
78628
  friend class ::WinDeclSpecs;
 
78629
  friend class ::WinMemberExplSpec;
 
78630
  friend class ::WinTypeKeywords;
 
78631
  friend class ::PragmaOnceUnitState;
 
78632
  friend class ::PragmaOnce;
 
78633
  friend class ::CCExprResolve;
 
78634
  friend class ::CExprResolve;
 
78635
 
 
78636
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78637
 
 
78638
public:
 
78639
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
 
78640
  static const char *NodeId ();
 
78641
  const char *NodeName () const { return NodeId (); }
 
78642
};
 
78643
 
 
78644
 
 
78645
#line 78646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78646
} // closed Puma
 
78647
class WinIfExists;
 
78648
class WinImportHandler;
 
78649
class WinMacros;
 
78650
class CMatchSyntax;
 
78651
class ExtGnu;
 
78652
class ExtAC;
 
78653
class ExtACBuilderCoupling;
 
78654
class ExtACSyntaxCoupling;
 
78655
class ExtACTree;
 
78656
class ExtACKeywords;
 
78657
class WinAsm;
 
78658
class WinDeclSpecs;
 
78659
class WinMemberExplSpec;
 
78660
class WinTypeKeywords;
 
78661
class PragmaOnceUnitState;
 
78662
class PragmaOnce;
 
78663
class CCExprResolve;
 
78664
class CExprResolve;
 
78665
namespace Puma {
 
78666
 
 
78667
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78668
class CT_ArgNameList : public CT_ArgDeclList {
 
78669
#line 78670 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78670
  friend class ::WinIfExists;
 
78671
  friend class ::WinImportHandler;
 
78672
  friend class ::WinMacros;
 
78673
  friend class ::CMatchSyntax;
 
78674
  friend class ::ExtGnu;
 
78675
  friend class ::ExtAC;
 
78676
  friend class ::ExtACBuilderCoupling;
 
78677
  friend class ::ExtACSyntaxCoupling;
 
78678
  friend class ::ExtACTree;
 
78679
  friend class ::ExtACKeywords;
 
78680
  friend class ::WinAsm;
 
78681
  friend class ::WinDeclSpecs;
 
78682
  friend class ::WinMemberExplSpec;
 
78683
  friend class ::WinTypeKeywords;
 
78684
  friend class ::PragmaOnceUnitState;
 
78685
  friend class ::PragmaOnce;
 
78686
  friend class ::CCExprResolve;
 
78687
  friend class ::CExprResolve;
 
78688
 
 
78689
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78690
 
 
78691
public:
 
78692
  CT_ArgNameList () : CT_ArgDeclList () {}
 
78693
  static const char *NodeId ();
 
78694
  const char *NodeName () const { return NodeId (); }
 
78695
};
 
78696
 
 
78697
 
 
78698
#line 78699 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78699
} // closed Puma
 
78700
class WinIfExists;
 
78701
class WinImportHandler;
 
78702
class WinMacros;
 
78703
class CMatchSyntax;
 
78704
class ExtGnu;
 
78705
class ExtAC;
 
78706
class ExtACBuilderCoupling;
 
78707
class ExtACSyntaxCoupling;
 
78708
class ExtACTree;
 
78709
class ExtACKeywords;
 
78710
class WinAsm;
 
78711
class WinDeclSpecs;
 
78712
class WinMemberExplSpec;
 
78713
class WinTypeKeywords;
 
78714
class PragmaOnceUnitState;
 
78715
class PragmaOnce;
 
78716
class CCExprResolve;
 
78717
class CExprResolve;
 
78718
namespace Puma {
 
78719
 
 
78720
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78721
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
78722
#line 78723 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78723
  friend class ::WinIfExists;
 
78724
  friend class ::WinImportHandler;
 
78725
  friend class ::WinMacros;
 
78726
  friend class ::CMatchSyntax;
 
78727
  friend class ::ExtGnu;
 
78728
  friend class ::ExtAC;
 
78729
  friend class ::ExtACBuilderCoupling;
 
78730
  friend class ::ExtACSyntaxCoupling;
 
78731
  friend class ::ExtACTree;
 
78732
  friend class ::ExtACKeywords;
 
78733
  friend class ::WinAsm;
 
78734
  friend class ::WinDeclSpecs;
 
78735
  friend class ::WinMemberExplSpec;
 
78736
  friend class ::WinTypeKeywords;
 
78737
  friend class ::PragmaOnceUnitState;
 
78738
  friend class ::PragmaOnce;
 
78739
  friend class ::CCExprResolve;
 
78740
  friend class ::CExprResolve;
 
78741
 
 
78742
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78743
 
 
78744
  CTree *sons[3]; // ns, name, members
 
78745
 
 
78746
public:
 
78747
  CT_NamespaceDef (CTree *n, CTree *nm) {
 
78748
    sons[0] = n; sons[1] = nm; sons[2] = 0; 
 
78749
  }
 
78750
  CT_NamespaceDef (CTree *n, CTree *nm, CTree *m) {
 
78751
    sons[0] = n; sons[1] = nm; sons[2] = m; 
 
78752
  }
 
78753
  static const char *NodeId ();
 
78754
  const char *NodeName () const { return NodeId (); }
 
78755
  int Sons () const { return CTree::Sons (sons, 3); }
 
78756
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
78757
  void Members (CTree *m) { sons[2] = m; }
 
78758
  CT_MembList *Members () const { return (CT_MembList*)sons[2]; }
 
78759
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
 
78760
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
78761
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78762
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
78763
  }
 
78764
};
 
78765
 
 
78766
 
 
78767
#line 78768 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78768
} // closed Puma
 
78769
class WinIfExists;
 
78770
class WinImportHandler;
 
78771
class WinMacros;
 
78772
class CMatchSyntax;
 
78773
class ExtGnu;
 
78774
class ExtAC;
 
78775
class ExtACBuilderCoupling;
 
78776
class ExtACSyntaxCoupling;
 
78777
class ExtACTree;
 
78778
class ExtACKeywords;
 
78779
class WinAsm;
 
78780
class WinDeclSpecs;
 
78781
class WinMemberExplSpec;
 
78782
class WinTypeKeywords;
 
78783
class PragmaOnceUnitState;
 
78784
class PragmaOnce;
 
78785
class CCExprResolve;
 
78786
class CExprResolve;
 
78787
namespace Puma {
 
78788
 
 
78789
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78790
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
78791
#line 78792 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78792
  friend class ::WinIfExists;
 
78793
  friend class ::WinImportHandler;
 
78794
  friend class ::WinMacros;
 
78795
  friend class ::CMatchSyntax;
 
78796
  friend class ::ExtGnu;
 
78797
  friend class ::ExtAC;
 
78798
  friend class ::ExtACBuilderCoupling;
 
78799
  friend class ::ExtACSyntaxCoupling;
 
78800
  friend class ::ExtACTree;
 
78801
  friend class ::ExtACKeywords;
 
78802
  friend class ::WinAsm;
 
78803
  friend class ::WinDeclSpecs;
 
78804
  friend class ::WinMemberExplSpec;
 
78805
  friend class ::WinTypeKeywords;
 
78806
  friend class ::PragmaOnceUnitState;
 
78807
  friend class ::PragmaOnce;
 
78808
  friend class ::CCExprResolve;
 
78809
  friend class ::CExprResolve;
 
78810
 
 
78811
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78812
 
 
78813
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
 
78814
 
 
78815
public:
 
78816
  CT_NamespaceAliasDef (CTree *n, CTree *a, CTree *as, CTree *nm, CTree *s) {
 
78817
    sons[0] = n; sons[1] = a; sons[2] = as; sons[3] = nm; sons[4] = s; 
 
78818
  }
 
78819
  static const char *NodeId ();
 
78820
  const char *NodeName () const { return NodeId (); }
 
78821
  int Sons () const { return 5; }
 
78822
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
78823
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[3]; }
 
78824
  CT_SimpleName *Alias () const { return (CT_SimpleName*)sons[1]; }
 
78825
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
78826
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78827
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
78828
  }
 
78829
};
 
78830
 
 
78831
 
 
78832
#line 78833 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78833
} // closed Puma
 
78834
class WinIfExists;
 
78835
class WinImportHandler;
 
78836
class WinMacros;
 
78837
class CMatchSyntax;
 
78838
class ExtGnu;
 
78839
class ExtAC;
 
78840
class ExtACBuilderCoupling;
 
78841
class ExtACSyntaxCoupling;
 
78842
class ExtACTree;
 
78843
class ExtACKeywords;
 
78844
class WinAsm;
 
78845
class WinDeclSpecs;
 
78846
class WinMemberExplSpec;
 
78847
class WinTypeKeywords;
 
78848
class PragmaOnceUnitState;
 
78849
class PragmaOnce;
 
78850
class CCExprResolve;
 
78851
class CExprResolve;
 
78852
namespace Puma {
 
78853
 
 
78854
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78855
class CT_UsingDirective : public CT_Decl {
 
78856
#line 78857 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78857
  friend class ::WinIfExists;
 
78858
  friend class ::WinImportHandler;
 
78859
  friend class ::WinMacros;
 
78860
  friend class ::CMatchSyntax;
 
78861
  friend class ::ExtGnu;
 
78862
  friend class ::ExtAC;
 
78863
  friend class ::ExtACBuilderCoupling;
 
78864
  friend class ::ExtACSyntaxCoupling;
 
78865
  friend class ::ExtACTree;
 
78866
  friend class ::ExtACKeywords;
 
78867
  friend class ::WinAsm;
 
78868
  friend class ::WinDeclSpecs;
 
78869
  friend class ::WinMemberExplSpec;
 
78870
  friend class ::WinTypeKeywords;
 
78871
  friend class ::PragmaOnceUnitState;
 
78872
  friend class ::PragmaOnce;
 
78873
  friend class ::CCExprResolve;
 
78874
  friend class ::CExprResolve;
 
78875
 
 
78876
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78877
 
 
78878
  CTree *sons[4]; // using, ns, name, semi_colon
 
78879
 
 
78880
public:
 
78881
  CT_UsingDirective (CTree *u, CTree *ns, CTree *n, CTree *s) {
 
78882
    sons[0] = u; sons[1] = ns; sons[2] = n; sons[3] = s; 
 
78883
  }
 
78884
  static const char *NodeId ();
 
78885
  const char *NodeName () const { return NodeId (); }
 
78886
  int Sons () const { return 4; }
 
78887
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
78888
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[2]; }
 
78889
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
78890
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
78891
  }
 
78892
};
 
78893
 
 
78894
/*****************************************************************************/
 
78895
/*                                                                           */
 
78896
/*                              Declarators                                  */
 
78897
/*                                                                           */
 
78898
/*****************************************************************************/
 
78899
 
 
78900
 
 
78901
#line 78902 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78902
} // closed Puma
 
78903
class WinIfExists;
 
78904
class WinImportHandler;
 
78905
class WinMacros;
 
78906
class CMatchSyntax;
 
78907
class ExtGnu;
 
78908
class ExtAC;
 
78909
class ExtACBuilderCoupling;
 
78910
class ExtACSyntaxCoupling;
 
78911
class ExtACTree;
 
78912
class ExtACKeywords;
 
78913
class WinAsm;
 
78914
class WinDeclSpecs;
 
78915
class WinMemberExplSpec;
 
78916
class WinTypeKeywords;
 
78917
class PragmaOnceUnitState;
 
78918
class PragmaOnce;
 
78919
class CCExprResolve;
 
78920
class CExprResolve;
 
78921
namespace Puma {
 
78922
 
 
78923
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78924
class CT_Declarator : public CTree {
 
78925
#line 78926 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78926
  friend class ::WinIfExists;
 
78927
  friend class ::WinImportHandler;
 
78928
  friend class ::WinMacros;
 
78929
  friend class ::CMatchSyntax;
 
78930
  friend class ::ExtGnu;
 
78931
  friend class ::ExtAC;
 
78932
  friend class ::ExtACBuilderCoupling;
 
78933
  friend class ::ExtACSyntaxCoupling;
 
78934
  friend class ::ExtACTree;
 
78935
  friend class ::ExtACKeywords;
 
78936
  friend class ::WinAsm;
 
78937
  friend class ::WinDeclSpecs;
 
78938
  friend class ::WinMemberExplSpec;
 
78939
  friend class ::WinTypeKeywords;
 
78940
  friend class ::PragmaOnceUnitState;
 
78941
  friend class ::PragmaOnce;
 
78942
  friend class ::CCExprResolve;
 
78943
  friend class ::CExprResolve;
 
78944
 
 
78945
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78946
 
 
78947
protected:
 
78948
  CT_Declarator () {}
 
78949
 
 
78950
public:
 
78951
  virtual CTree *Declarator () const = 0;
 
78952
  //classification function
 
78953
  virtual CT_Declarator *IsDeclarator () { return this; }
 
78954
  // locate the name node
 
78955
  CT_SimpleName *Name ();
 
78956
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
 
78957
};
 
78958
 
 
78959
 
 
78960
#line 78961 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78961
} // closed Puma
 
78962
class WinIfExists;
 
78963
class WinImportHandler;
 
78964
class WinMacros;
 
78965
class CMatchSyntax;
 
78966
class ExtGnu;
 
78967
class ExtAC;
 
78968
class ExtACBuilderCoupling;
 
78969
class ExtACSyntaxCoupling;
 
78970
class ExtACTree;
 
78971
class ExtACKeywords;
 
78972
class WinAsm;
 
78973
class WinDeclSpecs;
 
78974
class WinMemberExplSpec;
 
78975
class WinTypeKeywords;
 
78976
class PragmaOnceUnitState;
 
78977
class PragmaOnce;
 
78978
class CCExprResolve;
 
78979
class CExprResolve;
 
78980
namespace Puma {
 
78981
 
 
78982
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
78983
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
78984
#line 78985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
78985
  friend class ::WinIfExists;
 
78986
  friend class ::WinImportHandler;
 
78987
  friend class ::WinMacros;
 
78988
  friend class ::CMatchSyntax;
 
78989
  friend class ::ExtGnu;
 
78990
  friend class ::ExtAC;
 
78991
  friend class ::ExtACBuilderCoupling;
 
78992
  friend class ::ExtACSyntaxCoupling;
 
78993
  friend class ::ExtACTree;
 
78994
  friend class ::ExtACKeywords;
 
78995
  friend class ::WinAsm;
 
78996
  friend class ::WinDeclSpecs;
 
78997
  friend class ::WinMemberExplSpec;
 
78998
  friend class ::WinTypeKeywords;
 
78999
  friend class ::PragmaOnceUnitState;
 
79000
  friend class ::PragmaOnce;
 
79001
  friend class ::CCExprResolve;
 
79002
  friend class ::CExprResolve;
 
79003
 
 
79004
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79005
 
 
79006
  CTree *sons[2]; // declarator, init
 
79007
  CTree *obj_decl;
 
79008
 
 
79009
public:
 
79010
  CT_InitDeclarator (CTree *d, CTree *i = (CTree*)0) {
 
79011
    sons[0] = d; sons[1] = i; obj_decl = 0; 
 
79012
  }
 
79013
  static const char *NodeId ();
 
79014
  const char *NodeName () const { return NodeId (); }
 
79015
  int Sons () const { return CTree::Sons (sons, 2); }
 
79016
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
79017
  CTree *Declarator () const { return sons[0]; }
 
79018
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
 
79019
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
79020
  CT_ObjDecl *ObjDecl () const { return (CT_ObjDecl*)obj_decl; }
 
79021
  void Initializer (CTree* i) { sons[1] = i; }
 
79022
  void ObjDecl (CTree *od) { obj_decl = od; }
 
79023
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79024
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
79025
  }
 
79026
};
 
79027
 
 
79028
 
 
79029
#line 79030 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79030
} // closed Puma
 
79031
class WinIfExists;
 
79032
class WinImportHandler;
 
79033
class WinMacros;
 
79034
class CMatchSyntax;
 
79035
class ExtGnu;
 
79036
class ExtAC;
 
79037
class ExtACBuilderCoupling;
 
79038
class ExtACSyntaxCoupling;
 
79039
class ExtACTree;
 
79040
class ExtACKeywords;
 
79041
class WinAsm;
 
79042
class WinDeclSpecs;
 
79043
class WinMemberExplSpec;
 
79044
class WinTypeKeywords;
 
79045
class PragmaOnceUnitState;
 
79046
class PragmaOnce;
 
79047
class CCExprResolve;
 
79048
class CExprResolve;
 
79049
namespace Puma {
 
79050
 
 
79051
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79052
class CT_BracedDeclarator : public CT_Declarator {
 
79053
#line 79054 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79054
  friend class ::WinIfExists;
 
79055
  friend class ::WinImportHandler;
 
79056
  friend class ::WinMacros;
 
79057
  friend class ::CMatchSyntax;
 
79058
  friend class ::ExtGnu;
 
79059
  friend class ::ExtAC;
 
79060
  friend class ::ExtACBuilderCoupling;
 
79061
  friend class ::ExtACSyntaxCoupling;
 
79062
  friend class ::ExtACTree;
 
79063
  friend class ::ExtACKeywords;
 
79064
  friend class ::WinAsm;
 
79065
  friend class ::WinDeclSpecs;
 
79066
  friend class ::WinMemberExplSpec;
 
79067
  friend class ::WinTypeKeywords;
 
79068
  friend class ::PragmaOnceUnitState;
 
79069
  friend class ::PragmaOnce;
 
79070
  friend class ::CCExprResolve;
 
79071
  friend class ::CExprResolve;
 
79072
 
 
79073
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79074
 
 
79075
  CTree *sons[4]; // open, win_specs, declarator, close
 
79076
 
 
79077
public:
 
79078
  CT_BracedDeclarator (CTree *o, CTree *d, CTree *c) {
 
79079
    sons[0] = o; sons[1] = 0; sons[2] = d; sons[3] = c; 
 
79080
  }
 
79081
  CT_BracedDeclarator (CTree *o, CTree *ws, CTree *d, CTree *c) {
 
79082
    sons[0] = o; sons[1] = ws; sons[2] = d; sons[3] = c; 
 
79083
  }
 
79084
  static const char *NodeId ();
 
79085
  const char *NodeName () const { return NodeId (); }
 
79086
  int Sons () const { return CTree::Sons (sons, 4); }
 
79087
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
79088
  CTree *Declarator () const { return sons[2]; }
 
79089
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79090
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
79091
  }
 
79092
};
 
79093
 
 
79094
 
 
79095
#line 79096 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79096
} // closed Puma
 
79097
class WinIfExists;
 
79098
class WinImportHandler;
 
79099
class WinMacros;
 
79100
class CMatchSyntax;
 
79101
class ExtGnu;
 
79102
class ExtAC;
 
79103
class ExtACBuilderCoupling;
 
79104
class ExtACSyntaxCoupling;
 
79105
class ExtACTree;
 
79106
class ExtACKeywords;
 
79107
class WinAsm;
 
79108
class WinDeclSpecs;
 
79109
class WinMemberExplSpec;
 
79110
class WinTypeKeywords;
 
79111
class PragmaOnceUnitState;
 
79112
class PragmaOnce;
 
79113
class CCExprResolve;
 
79114
class CExprResolve;
 
79115
namespace Puma {
 
79116
 
 
79117
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79118
class CT_ArrayDelimiter : public CTree {
 
79119
#line 79120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79120
  friend class ::WinIfExists;
 
79121
  friend class ::WinImportHandler;
 
79122
  friend class ::WinMacros;
 
79123
  friend class ::CMatchSyntax;
 
79124
  friend class ::ExtGnu;
 
79125
  friend class ::ExtAC;
 
79126
  friend class ::ExtACBuilderCoupling;
 
79127
  friend class ::ExtACSyntaxCoupling;
 
79128
  friend class ::ExtACTree;
 
79129
  friend class ::ExtACKeywords;
 
79130
  friend class ::WinAsm;
 
79131
  friend class ::WinDeclSpecs;
 
79132
  friend class ::WinMemberExplSpec;
 
79133
  friend class ::WinTypeKeywords;
 
79134
  friend class ::PragmaOnceUnitState;
 
79135
  friend class ::PragmaOnce;
 
79136
  friend class ::CCExprResolve;
 
79137
  friend class ::CExprResolve;
 
79138
 
 
79139
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79140
 
 
79141
  CTree *sons[4]; // star, static, quals, expr
 
79142
  bool pos0;
 
79143
 
 
79144
public:
 
79145
  CT_ArrayDelimiter (CTree *m, CTree *s, CTree *q, CTree *e, bool p = false) {
 
79146
    sons[0] = m; sons[1] = s; sons[2] = q; sons[3] = e; pos0 = p;
 
79147
  }
 
79148
  static const char *NodeId ();
 
79149
  const char *NodeName () const { return NodeId (); }
 
79150
  int Sons () const { return CTree::Sons (sons, 4); }
 
79151
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
79152
  CT_Token *Star () const { return (CT_Token*)sons[0]; }
 
79153
  CT_Token *Static () const { return (CT_Token*)sons[pos0?2:1]; }
 
79154
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[pos0?1:2]; }
 
79155
  CTree *Expr () const { return sons[3]; }
 
79156
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79157
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
79158
  }
 
79159
};
 
79160
 
 
79161
 
 
79162
#line 79163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79163
} // closed Puma
 
79164
class WinIfExists;
 
79165
class WinImportHandler;
 
79166
class WinMacros;
 
79167
class CMatchSyntax;
 
79168
class ExtGnu;
 
79169
class ExtAC;
 
79170
class ExtACBuilderCoupling;
 
79171
class ExtACSyntaxCoupling;
 
79172
class ExtACTree;
 
79173
class ExtACKeywords;
 
79174
class WinAsm;
 
79175
class WinDeclSpecs;
 
79176
class WinMemberExplSpec;
 
79177
class WinTypeKeywords;
 
79178
class PragmaOnceUnitState;
 
79179
class PragmaOnce;
 
79180
class CCExprResolve;
 
79181
class CExprResolve;
 
79182
namespace Puma {
 
79183
 
 
79184
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79185
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
79186
#line 79187 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79187
  friend class ::WinIfExists;
 
79188
  friend class ::WinImportHandler;
 
79189
  friend class ::WinMacros;
 
79190
  friend class ::CMatchSyntax;
 
79191
  friend class ::ExtGnu;
 
79192
  friend class ::ExtAC;
 
79193
  friend class ::ExtACBuilderCoupling;
 
79194
  friend class ::ExtACSyntaxCoupling;
 
79195
  friend class ::ExtACTree;
 
79196
  friend class ::ExtACKeywords;
 
79197
  friend class ::WinAsm;
 
79198
  friend class ::WinDeclSpecs;
 
79199
  friend class ::WinMemberExplSpec;
 
79200
  friend class ::WinTypeKeywords;
 
79201
  friend class ::PragmaOnceUnitState;
 
79202
  friend class ::PragmaOnce;
 
79203
  friend class ::CCExprResolve;
 
79204
  friend class ::CExprResolve;
 
79205
 
 
79206
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79207
 
 
79208
  CTree *sons[4]; // declarator, open, delim, close
 
79209
 
 
79210
public:
 
79211
  CT_ArrayDeclarator (CTree *d, CTree *o, CTree *ad, CTree *c) {
 
79212
    sons[0] = d; sons[1] = o; sons[2] = ad; sons[3] = c; 
 
79213
  }
 
79214
  static const char *NodeId ();
 
79215
  const char *NodeName () const { return NodeId (); }
 
79216
  int Sons () const { return 4; }
 
79217
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
79218
  CTree *Declarator () const { return sons[0]; }
 
79219
  CT_ArrayDelimiter *Delimiter () const 
 
79220
   { return (CT_ArrayDelimiter*)sons[2]; }
 
79221
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79222
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
79223
  }
 
79224
  CTypeInfo *Type () const { return type; }
 
79225
  CExprValue *Value () const { return value; }
 
79226
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
79227
};
 
79228
 
 
79229
 
 
79230
#line 79231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79231
} // closed Puma
 
79232
class WinIfExists;
 
79233
class WinImportHandler;
 
79234
class WinMacros;
 
79235
class CMatchSyntax;
 
79236
class ExtGnu;
 
79237
class ExtAC;
 
79238
class ExtACBuilderCoupling;
 
79239
class ExtACSyntaxCoupling;
 
79240
class ExtACTree;
 
79241
class ExtACKeywords;
 
79242
class WinAsm;
 
79243
class WinDeclSpecs;
 
79244
class WinMemberExplSpec;
 
79245
class WinTypeKeywords;
 
79246
class PragmaOnceUnitState;
 
79247
class PragmaOnce;
 
79248
class CCExprResolve;
 
79249
class CExprResolve;
 
79250
namespace Puma {
 
79251
 
 
79252
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79253
class CT_FctDeclarator : public CT_Declarator {
 
79254
#line 79255 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79255
  friend class ::WinIfExists;
 
79256
  friend class ::WinImportHandler;
 
79257
  friend class ::WinMacros;
 
79258
  friend class ::CMatchSyntax;
 
79259
  friend class ::ExtGnu;
 
79260
  friend class ::ExtAC;
 
79261
  friend class ::ExtACBuilderCoupling;
 
79262
  friend class ::ExtACSyntaxCoupling;
 
79263
  friend class ::ExtACTree;
 
79264
  friend class ::ExtACKeywords;
 
79265
  friend class ::WinAsm;
 
79266
  friend class ::WinDeclSpecs;
 
79267
  friend class ::WinMemberExplSpec;
 
79268
  friend class ::WinTypeKeywords;
 
79269
  friend class ::PragmaOnceUnitState;
 
79270
  friend class ::PragmaOnce;
 
79271
  friend class ::CCExprResolve;
 
79272
  friend class ::CExprResolve;
 
79273
 
 
79274
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79275
 
 
79276
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
 
79277
 
 
79278
public:
 
79279
  CT_FctDeclarator (CTree *d, CTree *args, CTree *cv, CTree *es) {
 
79280
    sons[0] = d; sons[1] = args; sons[2] = cv; sons[3] = es; 
 
79281
  }
 
79282
  static const char *NodeId ();
 
79283
  const char *NodeName () const { return NodeId (); }
 
79284
  int Sons () const { return CTree::Sons (sons, 4); }
 
79285
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
79286
  CTree *Declarator () const { return sons[0]; }
 
79287
  CT_ArgDeclList *Arguments () const { return (CT_ArgDeclList*)sons[1]; }
 
79288
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[2]; }
 
79289
  CT_ExceptionSpec *ExceptionSpecs () const { return (CT_ExceptionSpec*)sons[3]; }
 
79290
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79291
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
79292
  }
 
79293
};
 
79294
 
 
79295
 
 
79296
#line 79297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79297
} // closed Puma
 
79298
class WinIfExists;
 
79299
class WinImportHandler;
 
79300
class WinMacros;
 
79301
class CMatchSyntax;
 
79302
class ExtGnu;
 
79303
class ExtAC;
 
79304
class ExtACBuilderCoupling;
 
79305
class ExtACSyntaxCoupling;
 
79306
class ExtACTree;
 
79307
class ExtACKeywords;
 
79308
class WinAsm;
 
79309
class WinDeclSpecs;
 
79310
class WinMemberExplSpec;
 
79311
class WinTypeKeywords;
 
79312
class PragmaOnceUnitState;
 
79313
class PragmaOnce;
 
79314
class CCExprResolve;
 
79315
class CExprResolve;
 
79316
namespace Puma {
 
79317
 
 
79318
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79319
class CT_RefDeclarator : public CT_Declarator {
 
79320
#line 79321 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79321
  friend class ::WinIfExists;
 
79322
  friend class ::WinImportHandler;
 
79323
  friend class ::WinMacros;
 
79324
  friend class ::CMatchSyntax;
 
79325
  friend class ::ExtGnu;
 
79326
  friend class ::ExtAC;
 
79327
  friend class ::ExtACBuilderCoupling;
 
79328
  friend class ::ExtACSyntaxCoupling;
 
79329
  friend class ::ExtACTree;
 
79330
  friend class ::ExtACKeywords;
 
79331
  friend class ::WinAsm;
 
79332
  friend class ::WinDeclSpecs;
 
79333
  friend class ::WinMemberExplSpec;
 
79334
  friend class ::WinTypeKeywords;
 
79335
  friend class ::PragmaOnceUnitState;
 
79336
  friend class ::PragmaOnce;
 
79337
  friend class ::CCExprResolve;
 
79338
  friend class ::CExprResolve;
 
79339
 
 
79340
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79341
 
 
79342
  CTree *sons[2]; // ref, declarator
 
79343
 
 
79344
public:
 
79345
  CT_RefDeclarator (CTree *r, CTree *d) { sons[0] = r; sons[1] = d; }
 
79346
  static const char *NodeId ();
 
79347
  const char *NodeName () const { return NodeId (); }
 
79348
  int Sons () const { return 2; }
 
79349
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
79350
  CTree *Declarator () const { return sons[1]; }
 
79351
  void ReplaceSon (CTree *old_son, CTree *new_son) {
 
79352
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
79353
  }
 
79354
};
 
79355
 
 
79356
 
 
79357
#line 79358 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79358
} // closed Puma
 
79359
class WinIfExists;
 
79360
class WinImportHandler;
 
79361
class WinMacros;
 
79362
class CMatchSyntax;
 
79363
class ExtGnu;
 
79364
class ExtAC;
 
79365
class ExtACBuilderCoupling;
 
79366
class ExtACSyntaxCoupling;
 
79367
class ExtACTree;
 
79368
class ExtACKeywords;
 
79369
class WinAsm;
 
79370
class WinDeclSpecs;
 
79371
class WinMemberExplSpec;
 
79372
class WinTypeKeywords;
 
79373
class PragmaOnceUnitState;
 
79374
class PragmaOnce;
 
79375
class CCExprResolve;
 
79376
class CExprResolve;
 
79377
namespace Puma {
 
79378
 
 
79379
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79380
class CT_PtrDeclarator : public CT_Declarator {
 
79381
#line 79382 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79382
  friend class ::WinIfExists;
 
79383
  friend class ::WinImportHandler;
 
79384
  friend class ::WinMacros;
 
79385
  friend class ::CMatchSyntax;
 
79386
  friend class ::ExtGnu;
 
79387
  friend class ::ExtAC;
 
79388
  friend class ::ExtACBuilderCoupling;
 
79389
  friend class ::ExtACSyntaxCoupling;
 
79390
  friend class ::ExtACTree;
 
79391
  friend class ::ExtACKeywords;
 
79392
  friend class ::WinAsm;
 
79393
  friend class ::WinDeclSpecs;
 
79394
  friend class ::WinMemberExplSpec;
 
79395
  friend class ::WinTypeKeywords;
 
79396
  friend class ::PragmaOnceUnitState;
 
79397
  friend class ::PragmaOnce;
 
79398
  friend class ::CCExprResolve;
 
79399
  friend class ::CExprResolve;
 
79400
 
 
79401
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79402
 
 
79403
  CTree *sons[3]; // ptr, cv_quals, declarator
 
79404
 
 
79405
public:
 
79406
  CT_PtrDeclarator (CTree *p, CTree *c, CTree *d) {
 
79407
    sons[0] = p; sons[1] = c; sons[2] = d; 
 
79408
  }
 
79409
  static const char *NodeId ();
 
79410
  const char *NodeName () const { return NodeId (); }
 
79411
  int Sons () const { return CTree::Sons (sons, 3); }
 
79412
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
79413
  CTree *Declarator () const { return sons[2]; }
 
79414
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[1]; }
 
79415
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79416
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
79417
  }
 
79418
};
 
79419
 
 
79420
 
 
79421
#line 79422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79422
} // closed Puma
 
79423
class WinIfExists;
 
79424
class WinImportHandler;
 
79425
class WinMacros;
 
79426
class CMatchSyntax;
 
79427
class ExtGnu;
 
79428
class ExtAC;
 
79429
class ExtACBuilderCoupling;
 
79430
class ExtACSyntaxCoupling;
 
79431
class ExtACTree;
 
79432
class ExtACKeywords;
 
79433
class WinAsm;
 
79434
class WinDeclSpecs;
 
79435
class WinMemberExplSpec;
 
79436
class WinTypeKeywords;
 
79437
class PragmaOnceUnitState;
 
79438
class PragmaOnce;
 
79439
class CCExprResolve;
 
79440
class CExprResolve;
 
79441
namespace Puma {
 
79442
 
 
79443
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79444
class CT_MembPtrDeclarator : public CT_Declarator {
 
79445
#line 79446 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79446
  friend class ::WinIfExists;
 
79447
  friend class ::WinImportHandler;
 
79448
  friend class ::WinMacros;
 
79449
  friend class ::CMatchSyntax;
 
79450
  friend class ::ExtGnu;
 
79451
  friend class ::ExtAC;
 
79452
  friend class ::ExtACBuilderCoupling;
 
79453
  friend class ::ExtACSyntaxCoupling;
 
79454
  friend class ::ExtACTree;
 
79455
  friend class ::ExtACKeywords;
 
79456
  friend class ::WinAsm;
 
79457
  friend class ::WinDeclSpecs;
 
79458
  friend class ::WinMemberExplSpec;
 
79459
  friend class ::WinTypeKeywords;
 
79460
  friend class ::PragmaOnceUnitState;
 
79461
  friend class ::PragmaOnce;
 
79462
  friend class ::CCExprResolve;
 
79463
  friend class ::CExprResolve;
 
79464
 
 
79465
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79466
 
 
79467
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
 
79468
 
 
79469
public:
 
79470
  CT_MembPtrDeclarator (CTree *c, CTree *cc, CTree *p, CTree *q, CTree *d) {
 
79471
    sons[0] = c; sons[1] = cc; sons[2] = p; sons[3] = q; sons[4] = d; 
 
79472
  }
 
79473
  static const char *NodeId ();
 
79474
  const char *NodeName () const { return NodeId (); }
 
79475
  int Sons () const { return CTree::Sons (sons, 5); }
 
79476
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
79477
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[0]; }
 
79478
  CTree *Declarator () const { return sons[4]; }
 
79479
  CT_DeclSpecSeq *Qualifier () const { return (CT_DeclSpecSeq*)sons[3]; }
 
79480
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79481
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
79482
  }
 
79483
};
 
79484
 
 
79485
 
 
79486
#line 79487 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79487
} // closed Puma
 
79488
class WinIfExists;
 
79489
class WinImportHandler;
 
79490
class WinMacros;
 
79491
class CMatchSyntax;
 
79492
class ExtGnu;
 
79493
class ExtAC;
 
79494
class ExtACBuilderCoupling;
 
79495
class ExtACSyntaxCoupling;
 
79496
class ExtACTree;
 
79497
class ExtACKeywords;
 
79498
class WinAsm;
 
79499
class WinDeclSpecs;
 
79500
class WinMemberExplSpec;
 
79501
class WinTypeKeywords;
 
79502
class PragmaOnceUnitState;
 
79503
class PragmaOnce;
 
79504
class CCExprResolve;
 
79505
class CExprResolve;
 
79506
namespace Puma {
 
79507
 
 
79508
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79509
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
79510
#line 79511 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79511
  friend class ::WinIfExists;
 
79512
  friend class ::WinImportHandler;
 
79513
  friend class ::WinMacros;
 
79514
  friend class ::CMatchSyntax;
 
79515
  friend class ::ExtGnu;
 
79516
  friend class ::ExtAC;
 
79517
  friend class ::ExtACBuilderCoupling;
 
79518
  friend class ::ExtACSyntaxCoupling;
 
79519
  friend class ::ExtACTree;
 
79520
  friend class ::ExtACKeywords;
 
79521
  friend class ::WinAsm;
 
79522
  friend class ::WinDeclSpecs;
 
79523
  friend class ::WinMemberExplSpec;
 
79524
  friend class ::WinTypeKeywords;
 
79525
  friend class ::PragmaOnceUnitState;
 
79526
  friend class ::PragmaOnce;
 
79527
  friend class ::CCExprResolve;
 
79528
  friend class ::CExprResolve;
 
79529
 
 
79530
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79531
 
 
79532
  CTree *sons[3]; // declarator, colon, expr
 
79533
 
 
79534
public:
 
79535
  CT_BitFieldDeclarator (CTree *d, CTree *c, CTree *e = 0) {
 
79536
    sons[0] = d; sons[1] = c; sons[2] = e; 
 
79537
  }
 
79538
  static const char *NodeId ();
 
79539
  const char *NodeName () const { return NodeId (); }
 
79540
  int Sons () const { return CTree::Sons (sons, 3); }
 
79541
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
79542
  CTree *Declarator () const { return sons[0]; }
 
79543
  CTree *Expr () const { return sons[2]; }
 
79544
  void FieldSize (CTree *s) { sons[2] = s; }
 
79545
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
79546
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79547
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
79548
  }
 
79549
};
 
79550
 
 
79551
/*****************************************************************************/
 
79552
/*                                                                           */
 
79553
/*                              Statements                                   */
 
79554
/*                                                                           */
 
79555
/*****************************************************************************/
 
79556
 
 
79557
 
 
79558
#line 79559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79559
} // closed Puma
 
79560
class WinIfExists;
 
79561
class WinImportHandler;
 
79562
class WinMacros;
 
79563
class CMatchSyntax;
 
79564
class ExtGnu;
 
79565
class ExtAC;
 
79566
class ExtACBuilderCoupling;
 
79567
class ExtACSyntaxCoupling;
 
79568
class ExtACTree;
 
79569
class ExtACKeywords;
 
79570
class WinAsm;
 
79571
class WinDeclSpecs;
 
79572
class WinMemberExplSpec;
 
79573
class WinTypeKeywords;
 
79574
class PragmaOnceUnitState;
 
79575
class PragmaOnce;
 
79576
class CCExprResolve;
 
79577
class CExprResolve;
 
79578
namespace Puma {
 
79579
 
 
79580
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79581
class CT_Statement : public CTree {
 
79582
#line 79583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79583
  friend class ::WinIfExists;
 
79584
  friend class ::WinImportHandler;
 
79585
  friend class ::WinMacros;
 
79586
  friend class ::CMatchSyntax;
 
79587
  friend class ::ExtGnu;
 
79588
  friend class ::ExtAC;
 
79589
  friend class ::ExtACBuilderCoupling;
 
79590
  friend class ::ExtACSyntaxCoupling;
 
79591
  friend class ::ExtACTree;
 
79592
  friend class ::ExtACKeywords;
 
79593
  friend class ::WinAsm;
 
79594
  friend class ::WinDeclSpecs;
 
79595
  friend class ::WinMemberExplSpec;
 
79596
  friend class ::WinTypeKeywords;
 
79597
  friend class ::PragmaOnceUnitState;
 
79598
  friend class ::PragmaOnce;
 
79599
  friend class ::CCExprResolve;
 
79600
  friend class ::CExprResolve;
 
79601
 
 
79602
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79603
 
 
79604
protected:
 
79605
  CT_Statement () {}
 
79606
};
 
79607
 
 
79608
 
 
79609
#line 79610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79610
} // closed Puma
 
79611
class WinIfExists;
 
79612
class WinImportHandler;
 
79613
class WinMacros;
 
79614
class CMatchSyntax;
 
79615
class ExtGnu;
 
79616
class ExtAC;
 
79617
class ExtACBuilderCoupling;
 
79618
class ExtACSyntaxCoupling;
 
79619
class ExtACTree;
 
79620
class ExtACKeywords;
 
79621
class WinAsm;
 
79622
class WinDeclSpecs;
 
79623
class WinMemberExplSpec;
 
79624
class WinTypeKeywords;
 
79625
class PragmaOnceUnitState;
 
79626
class PragmaOnce;
 
79627
class CCExprResolve;
 
79628
class CExprResolve;
 
79629
namespace Puma {
 
79630
 
 
79631
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79632
class CT_LabelStmt : public CT_Statement {
 
79633
#line 79634 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79634
  friend class ::WinIfExists;
 
79635
  friend class ::WinImportHandler;
 
79636
  friend class ::WinMacros;
 
79637
  friend class ::CMatchSyntax;
 
79638
  friend class ::ExtGnu;
 
79639
  friend class ::ExtAC;
 
79640
  friend class ::ExtACBuilderCoupling;
 
79641
  friend class ::ExtACSyntaxCoupling;
 
79642
  friend class ::ExtACTree;
 
79643
  friend class ::ExtACKeywords;
 
79644
  friend class ::WinAsm;
 
79645
  friend class ::WinDeclSpecs;
 
79646
  friend class ::WinMemberExplSpec;
 
79647
  friend class ::WinTypeKeywords;
 
79648
  friend class ::PragmaOnceUnitState;
 
79649
  friend class ::PragmaOnce;
 
79650
  friend class ::CCExprResolve;
 
79651
  friend class ::CExprResolve;
 
79652
 
 
79653
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79654
 
 
79655
  CTree *sons[3]; // id, colon, stmt
 
79656
 
 
79657
public:
 
79658
  CT_LabelStmt (CTree *id, CTree *c, CTree *stmt) {
 
79659
    sons[0] = id; sons[1] = c; sons[2] = stmt; 
 
79660
  }
 
79661
  static const char *NodeId ();
 
79662
  const char *NodeName () const { return NodeId (); }
 
79663
  int Sons () const { return 3; }
 
79664
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
79665
  CT_Statement *Statement () const { return (CT_Statement*)sons[2]; }
 
79666
  CT_SimpleName *Label () const { return (CT_SimpleName*)sons[0]; }
 
79667
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79668
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
79669
  }
 
79670
};
 
79671
 
 
79672
 
 
79673
#line 79674 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79674
} // closed Puma
 
79675
class WinIfExists;
 
79676
class WinImportHandler;
 
79677
class WinMacros;
 
79678
class CMatchSyntax;
 
79679
class ExtGnu;
 
79680
class ExtAC;
 
79681
class ExtACBuilderCoupling;
 
79682
class ExtACSyntaxCoupling;
 
79683
class ExtACTree;
 
79684
class ExtACKeywords;
 
79685
class WinAsm;
 
79686
class WinDeclSpecs;
 
79687
class WinMemberExplSpec;
 
79688
class WinTypeKeywords;
 
79689
class PragmaOnceUnitState;
 
79690
class PragmaOnce;
 
79691
class CCExprResolve;
 
79692
class CExprResolve;
 
79693
namespace Puma {
 
79694
 
 
79695
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79696
class CT_DefaultStmt : public CT_Statement {
 
79697
#line 79698 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79698
  friend class ::WinIfExists;
 
79699
  friend class ::WinImportHandler;
 
79700
  friend class ::WinMacros;
 
79701
  friend class ::CMatchSyntax;
 
79702
  friend class ::ExtGnu;
 
79703
  friend class ::ExtAC;
 
79704
  friend class ::ExtACBuilderCoupling;
 
79705
  friend class ::ExtACSyntaxCoupling;
 
79706
  friend class ::ExtACTree;
 
79707
  friend class ::ExtACKeywords;
 
79708
  friend class ::WinAsm;
 
79709
  friend class ::WinDeclSpecs;
 
79710
  friend class ::WinMemberExplSpec;
 
79711
  friend class ::WinTypeKeywords;
 
79712
  friend class ::PragmaOnceUnitState;
 
79713
  friend class ::PragmaOnce;
 
79714
  friend class ::CCExprResolve;
 
79715
  friend class ::CExprResolve;
 
79716
 
 
79717
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79718
 
 
79719
  CTree *sons[3]; // keyword, colon, stmt
 
79720
 
 
79721
public:
 
79722
  CT_DefaultStmt (CTree *kw, CTree *c, CTree *stmt) {
 
79723
    sons[0] = kw; sons[1] = c; sons[2] = stmt; 
 
79724
  }
 
79725
  static const char *NodeId ();
 
79726
  const char *NodeName () const { return NodeId (); }
 
79727
  int Sons () const { return 3; }
 
79728
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
79729
  CT_Statement *Statement () const { return (CT_Statement*)sons[2]; }
 
79730
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79731
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
79732
  }
 
79733
};
 
79734
 
 
79735
 
 
79736
#line 79737 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79737
} // closed Puma
 
79738
class WinIfExists;
 
79739
class WinImportHandler;
 
79740
class WinMacros;
 
79741
class CMatchSyntax;
 
79742
class ExtGnu;
 
79743
class ExtAC;
 
79744
class ExtACBuilderCoupling;
 
79745
class ExtACSyntaxCoupling;
 
79746
class ExtACTree;
 
79747
class ExtACKeywords;
 
79748
class WinAsm;
 
79749
class WinDeclSpecs;
 
79750
class WinMemberExplSpec;
 
79751
class WinTypeKeywords;
 
79752
class PragmaOnceUnitState;
 
79753
class PragmaOnce;
 
79754
class CCExprResolve;
 
79755
class CExprResolve;
 
79756
namespace Puma {
 
79757
 
 
79758
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79759
class CT_TryStmt : public CT_Statement {
 
79760
#line 79761 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79761
  friend class ::WinIfExists;
 
79762
  friend class ::WinImportHandler;
 
79763
  friend class ::WinMacros;
 
79764
  friend class ::CMatchSyntax;
 
79765
  friend class ::ExtGnu;
 
79766
  friend class ::ExtAC;
 
79767
  friend class ::ExtACBuilderCoupling;
 
79768
  friend class ::ExtACSyntaxCoupling;
 
79769
  friend class ::ExtACTree;
 
79770
  friend class ::ExtACKeywords;
 
79771
  friend class ::WinAsm;
 
79772
  friend class ::WinDeclSpecs;
 
79773
  friend class ::WinMemberExplSpec;
 
79774
  friend class ::WinTypeKeywords;
 
79775
  friend class ::PragmaOnceUnitState;
 
79776
  friend class ::PragmaOnce;
 
79777
  friend class ::CCExprResolve;
 
79778
  friend class ::CExprResolve;
 
79779
 
 
79780
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79781
 
 
79782
  CTree *sons[3]; // try, stmt, handlers
 
79783
 
 
79784
public:
 
79785
  CT_TryStmt (CTree *t, CTree *s, CTree *h) {
 
79786
    sons[0] = t; sons[1] = s; sons[2] = h; 
 
79787
  }
 
79788
  static const char *NodeId ();
 
79789
  const char *NodeName () const { return NodeId (); }
 
79790
  int Sons () const { return 3; }
 
79791
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
79792
  CT_Statement *Statement () const { return (CT_Statement*)sons[1]; }
 
79793
  CT_HandlerSeq *Handlers () const { return (CT_HandlerSeq*)sons[2]; }
 
79794
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79795
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
79796
  }
 
79797
};
 
79798
 
 
79799
 
 
79800
#line 79801 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79801
} // closed Puma
 
79802
class WinIfExists;
 
79803
class WinImportHandler;
 
79804
class WinMacros;
 
79805
class CMatchSyntax;
 
79806
class ExtGnu;
 
79807
class ExtAC;
 
79808
class ExtACBuilderCoupling;
 
79809
class ExtACSyntaxCoupling;
 
79810
class ExtACTree;
 
79811
class ExtACKeywords;
 
79812
class WinAsm;
 
79813
class WinDeclSpecs;
 
79814
class WinMemberExplSpec;
 
79815
class WinTypeKeywords;
 
79816
class PragmaOnceUnitState;
 
79817
class PragmaOnce;
 
79818
class CCExprResolve;
 
79819
class CExprResolve;
 
79820
namespace Puma {
 
79821
 
 
79822
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79823
class CT_CaseStmt : public CT_Statement {
 
79824
#line 79825 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79825
  friend class ::WinIfExists;
 
79826
  friend class ::WinImportHandler;
 
79827
  friend class ::WinMacros;
 
79828
  friend class ::CMatchSyntax;
 
79829
  friend class ::ExtGnu;
 
79830
  friend class ::ExtAC;
 
79831
  friend class ::ExtACBuilderCoupling;
 
79832
  friend class ::ExtACSyntaxCoupling;
 
79833
  friend class ::ExtACTree;
 
79834
  friend class ::ExtACKeywords;
 
79835
  friend class ::WinAsm;
 
79836
  friend class ::WinDeclSpecs;
 
79837
  friend class ::WinMemberExplSpec;
 
79838
  friend class ::WinTypeKeywords;
 
79839
  friend class ::PragmaOnceUnitState;
 
79840
  friend class ::PragmaOnce;
 
79841
  friend class ::CCExprResolve;
 
79842
  friend class ::CExprResolve;
 
79843
 
 
79844
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79845
 
 
79846
  CTree *sons[4]; // keyword, expr, colon, stmt
 
79847
 
 
79848
public:
 
79849
  CT_CaseStmt (CTree *kw, CTree *expr, CTree *c, CTree *stmt) {
 
79850
    sons[0] = kw; sons[1] = expr; sons[2] = c; sons[3] = stmt; 
 
79851
  }
 
79852
  static const char *NodeId ();
 
79853
  const char *NodeName () const { return NodeId (); }
 
79854
  int Sons () const { return 4; }
 
79855
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
79856
  CT_Statement *Statement () const { return (CT_Statement*)sons[3]; }
 
79857
  CTree *Expr () const { return sons[1]; }
 
79858
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79859
    CTree::ReplaceSon (sons, 4, old_son, new_son);
 
79860
  }
 
79861
};
 
79862
 
 
79863
 
 
79864
#line 79865 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79865
} // closed Puma
 
79866
class WinIfExists;
 
79867
class WinImportHandler;
 
79868
class WinMacros;
 
79869
class CMatchSyntax;
 
79870
class ExtGnu;
 
79871
class ExtAC;
 
79872
class ExtACBuilderCoupling;
 
79873
class ExtACSyntaxCoupling;
 
79874
class ExtACTree;
 
79875
class ExtACKeywords;
 
79876
class WinAsm;
 
79877
class WinDeclSpecs;
 
79878
class WinMemberExplSpec;
 
79879
class WinTypeKeywords;
 
79880
class PragmaOnceUnitState;
 
79881
class PragmaOnce;
 
79882
class CCExprResolve;
 
79883
class CExprResolve;
 
79884
namespace Puma {
 
79885
 
 
79886
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79887
class CT_ExprStmt : public CT_Statement {
 
79888
#line 79889 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79889
  friend class ::WinIfExists;
 
79890
  friend class ::WinImportHandler;
 
79891
  friend class ::WinMacros;
 
79892
  friend class ::CMatchSyntax;
 
79893
  friend class ::ExtGnu;
 
79894
  friend class ::ExtAC;
 
79895
  friend class ::ExtACBuilderCoupling;
 
79896
  friend class ::ExtACSyntaxCoupling;
 
79897
  friend class ::ExtACTree;
 
79898
  friend class ::ExtACKeywords;
 
79899
  friend class ::WinAsm;
 
79900
  friend class ::WinDeclSpecs;
 
79901
  friend class ::WinMemberExplSpec;
 
79902
  friend class ::WinTypeKeywords;
 
79903
  friend class ::PragmaOnceUnitState;
 
79904
  friend class ::PragmaOnce;
 
79905
  friend class ::CCExprResolve;
 
79906
  friend class ::CExprResolve;
 
79907
 
 
79908
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79909
 
 
79910
  CTree *sons[2]; // expr, semi_colon
 
79911
 
 
79912
public:
 
79913
  CT_ExprStmt (CTree *expr, CTree *sc) { sons[0] = expr; sons[1] = sc; }
 
79914
  static const char *NodeId ();
 
79915
  const char *NodeName () const { return NodeId (); }
 
79916
  int Sons () const { return CTree::Sons (sons, 2); }
 
79917
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
79918
  CTree *Expr () const { return sons[0]; }
 
79919
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
79920
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
79921
  }
 
79922
};
 
79923
 
 
79924
 
 
79925
#line 79926 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79926
} // closed Puma
 
79927
class WinIfExists;
 
79928
class WinImportHandler;
 
79929
class WinMacros;
 
79930
class CMatchSyntax;
 
79931
class ExtGnu;
 
79932
class ExtAC;
 
79933
class ExtACBuilderCoupling;
 
79934
class ExtACSyntaxCoupling;
 
79935
class ExtACTree;
 
79936
class ExtACKeywords;
 
79937
class WinAsm;
 
79938
class WinDeclSpecs;
 
79939
class WinMemberExplSpec;
 
79940
class WinTypeKeywords;
 
79941
class PragmaOnceUnitState;
 
79942
class PragmaOnce;
 
79943
class CCExprResolve;
 
79944
class CExprResolve;
 
79945
namespace Puma {
 
79946
 
 
79947
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79948
class CT_DeclStmt : public CT_Statement {
 
79949
#line 79950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79950
  friend class ::WinIfExists;
 
79951
  friend class ::WinImportHandler;
 
79952
  friend class ::WinMacros;
 
79953
  friend class ::CMatchSyntax;
 
79954
  friend class ::ExtGnu;
 
79955
  friend class ::ExtAC;
 
79956
  friend class ::ExtACBuilderCoupling;
 
79957
  friend class ::ExtACSyntaxCoupling;
 
79958
  friend class ::ExtACTree;
 
79959
  friend class ::ExtACKeywords;
 
79960
  friend class ::WinAsm;
 
79961
  friend class ::WinDeclSpecs;
 
79962
  friend class ::WinMemberExplSpec;
 
79963
  friend class ::WinTypeKeywords;
 
79964
  friend class ::PragmaOnceUnitState;
 
79965
  friend class ::PragmaOnce;
 
79966
  friend class ::CCExprResolve;
 
79967
  friend class ::CExprResolve;
 
79968
 
 
79969
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
79970
 
 
79971
  CTree *_decl;
 
79972
 
 
79973
public:
 
79974
  CT_DeclStmt (CTree *decl) : _decl (decl) {}
 
79975
  static const char *NodeId ();
 
79976
  const char *NodeName () const { return NodeId (); }
 
79977
  int Sons () const { return 1; }
 
79978
  CTree *Son (int n) const { return n == 0 ? _decl : (CTree*)0; }
 
79979
  void ReplaceSon (CTree *old_son, CTree *new_son) 
 
79980
   { if (old_son == _decl) _decl = new_son; }
 
79981
};
 
79982
 
 
79983
 
 
79984
#line 79985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
79985
} // closed Puma
 
79986
class WinIfExists;
 
79987
class WinImportHandler;
 
79988
class WinMacros;
 
79989
class CMatchSyntax;
 
79990
class ExtGnu;
 
79991
class ExtAC;
 
79992
class ExtACBuilderCoupling;
 
79993
class ExtACSyntaxCoupling;
 
79994
class ExtACTree;
 
79995
class ExtACKeywords;
 
79996
class WinAsm;
 
79997
class WinDeclSpecs;
 
79998
class WinMemberExplSpec;
 
79999
class WinTypeKeywords;
 
80000
class PragmaOnceUnitState;
 
80001
class PragmaOnce;
 
80002
class CCExprResolve;
 
80003
class CExprResolve;
 
80004
namespace Puma {
 
80005
 
 
80006
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80007
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
80008
#line 80009 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80009
  friend class ::WinIfExists;
 
80010
  friend class ::WinImportHandler;
 
80011
  friend class ::WinMacros;
 
80012
  friend class ::CMatchSyntax;
 
80013
  friend class ::ExtGnu;
 
80014
  friend class ::ExtAC;
 
80015
  friend class ::ExtACBuilderCoupling;
 
80016
  friend class ::ExtACSyntaxCoupling;
 
80017
  friend class ::ExtACTree;
 
80018
  friend class ::ExtACKeywords;
 
80019
  friend class ::WinAsm;
 
80020
  friend class ::WinDeclSpecs;
 
80021
  friend class ::WinMemberExplSpec;
 
80022
  friend class ::WinTypeKeywords;
 
80023
  friend class ::PragmaOnceUnitState;
 
80024
  friend class ::PragmaOnce;
 
80025
  friend class ::CCExprResolve;
 
80026
  friend class ::CExprResolve;
 
80027
 
 
80028
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80029
 
 
80030
  CTree *sons[5]; // keyword, open, cond, close, stmt
 
80031
 
 
80032
public:
 
80033
  CT_SwitchStmt (CTree *kw, CTree *o, CTree *cond, CTree *c, CTree *stmt) {
 
80034
    sons[0] = kw; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = stmt; 
 
80035
  }
 
80036
  static const char *NodeId ();
 
80037
  const char *NodeName () const { return NodeId (); }
 
80038
  int Sons () const { return 5; }
 
80039
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
80040
  CT_Statement *Statement () const { return (CT_Statement*)sons[4]; }
 
80041
  CTree *Condition () const { return sons[2]; }
 
80042
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80043
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
80044
  }
 
80045
};
 
80046
 
 
80047
 
 
80048
#line 80049 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80049
} // closed Puma
 
80050
class WinIfExists;
 
80051
class WinImportHandler;
 
80052
class WinMacros;
 
80053
class CMatchSyntax;
 
80054
class ExtGnu;
 
80055
class ExtAC;
 
80056
class ExtACBuilderCoupling;
 
80057
class ExtACSyntaxCoupling;
 
80058
class ExtACTree;
 
80059
class ExtACKeywords;
 
80060
class WinAsm;
 
80061
class WinDeclSpecs;
 
80062
class WinMemberExplSpec;
 
80063
class WinTypeKeywords;
 
80064
class PragmaOnceUnitState;
 
80065
class PragmaOnce;
 
80066
class CCExprResolve;
 
80067
class CExprResolve;
 
80068
namespace Puma {
 
80069
 
 
80070
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80071
class CT_IfStmt : public CT_Statement, public CSemScope {
 
80072
#line 80073 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80073
  friend class ::WinIfExists;
 
80074
  friend class ::WinImportHandler;
 
80075
  friend class ::WinMacros;
 
80076
  friend class ::CMatchSyntax;
 
80077
  friend class ::ExtGnu;
 
80078
  friend class ::ExtAC;
 
80079
  friend class ::ExtACBuilderCoupling;
 
80080
  friend class ::ExtACSyntaxCoupling;
 
80081
  friend class ::ExtACTree;
 
80082
  friend class ::ExtACKeywords;
 
80083
  friend class ::WinAsm;
 
80084
  friend class ::WinDeclSpecs;
 
80085
  friend class ::WinMemberExplSpec;
 
80086
  friend class ::WinTypeKeywords;
 
80087
  friend class ::PragmaOnceUnitState;
 
80088
  friend class ::PragmaOnce;
 
80089
  friend class ::CCExprResolve;
 
80090
  friend class ::CExprResolve;
 
80091
 
 
80092
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80093
 
 
80094
  CTree *sons[5]; // keyword, open, cond, close, stmt
 
80095
 
 
80096
public:
 
80097
  CT_IfStmt (CTree *kw, CTree *o, CTree *cond, CTree *c, CTree *stmt) {
 
80098
    sons[0] = kw; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = stmt; 
 
80099
  }
 
80100
  static const char *NodeId ();
 
80101
  const char *NodeName () const { return NodeId (); }
 
80102
  int Sons () const { return 5; }
 
80103
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
80104
  CT_Statement *Statement () const { return (CT_Statement*)sons[4]; }
 
80105
  CTree *Condition () const { return sons[2]; }
 
80106
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80107
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
80108
  }
 
80109
};
 
80110
 
 
80111
 
 
80112
#line 80113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80113
} // closed Puma
 
80114
class WinIfExists;
 
80115
class WinImportHandler;
 
80116
class WinMacros;
 
80117
class CMatchSyntax;
 
80118
class ExtGnu;
 
80119
class ExtAC;
 
80120
class ExtACBuilderCoupling;
 
80121
class ExtACSyntaxCoupling;
 
80122
class ExtACTree;
 
80123
class ExtACKeywords;
 
80124
class WinAsm;
 
80125
class WinDeclSpecs;
 
80126
class WinMemberExplSpec;
 
80127
class WinTypeKeywords;
 
80128
class PragmaOnceUnitState;
 
80129
class PragmaOnce;
 
80130
class CCExprResolve;
 
80131
class CExprResolve;
 
80132
namespace Puma {
 
80133
 
 
80134
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80135
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
80136
#line 80137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80137
  friend class ::WinIfExists;
 
80138
  friend class ::WinImportHandler;
 
80139
  friend class ::WinMacros;
 
80140
  friend class ::CMatchSyntax;
 
80141
  friend class ::ExtGnu;
 
80142
  friend class ::ExtAC;
 
80143
  friend class ::ExtACBuilderCoupling;
 
80144
  friend class ::ExtACSyntaxCoupling;
 
80145
  friend class ::ExtACTree;
 
80146
  friend class ::ExtACKeywords;
 
80147
  friend class ::WinAsm;
 
80148
  friend class ::WinDeclSpecs;
 
80149
  friend class ::WinMemberExplSpec;
 
80150
  friend class ::WinTypeKeywords;
 
80151
  friend class ::PragmaOnceUnitState;
 
80152
  friend class ::PragmaOnce;
 
80153
  friend class ::CCExprResolve;
 
80154
  friend class ::CExprResolve;
 
80155
 
 
80156
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80157
 
 
80158
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
 
80159
 
 
80160
public:
 
80161
  CT_IfElseStmt (CTree *i, CTree *o, CTree *cond, CTree *c, 
 
80162
                 CTree *is, CTree *e, CTree *es) {
 
80163
    sons[0] = i; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = is; 
 
80164
    sons[5] = e; sons[6] = es; 
 
80165
  }
 
80166
  static const char *NodeId ();
 
80167
  const char *NodeName () const { return NodeId (); }
 
80168
  int Sons () const { return 7; }
 
80169
  CTree *Son (int n) const { return CTree::Son (sons, 7, n); }
 
80170
  CTree *Condition () const { return sons[2]; }
 
80171
  CT_Statement *IfPart () const { return (CT_Statement*)sons[4]; }
 
80172
  CT_Statement *ElsePart () const { return (CT_Statement*)sons[6]; }
 
80173
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80174
    CTree::ReplaceSon (sons, 7, old_son, new_son);
 
80175
  }
 
80176
};
 
80177
 
 
80178
 
 
80179
#line 80180 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80180
} // closed Puma
 
80181
class WinIfExists;
 
80182
class WinImportHandler;
 
80183
class WinMacros;
 
80184
class CMatchSyntax;
 
80185
class ExtGnu;
 
80186
class ExtAC;
 
80187
class ExtACBuilderCoupling;
 
80188
class ExtACSyntaxCoupling;
 
80189
class ExtACTree;
 
80190
class ExtACKeywords;
 
80191
class WinAsm;
 
80192
class WinDeclSpecs;
 
80193
class WinMemberExplSpec;
 
80194
class WinTypeKeywords;
 
80195
class PragmaOnceUnitState;
 
80196
class PragmaOnce;
 
80197
class CCExprResolve;
 
80198
class CExprResolve;
 
80199
namespace Puma {
 
80200
 
 
80201
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80202
class CT_BreakStmt : public CT_Statement {
 
80203
#line 80204 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80204
  friend class ::WinIfExists;
 
80205
  friend class ::WinImportHandler;
 
80206
  friend class ::WinMacros;
 
80207
  friend class ::CMatchSyntax;
 
80208
  friend class ::ExtGnu;
 
80209
  friend class ::ExtAC;
 
80210
  friend class ::ExtACBuilderCoupling;
 
80211
  friend class ::ExtACSyntaxCoupling;
 
80212
  friend class ::ExtACTree;
 
80213
  friend class ::ExtACKeywords;
 
80214
  friend class ::WinAsm;
 
80215
  friend class ::WinDeclSpecs;
 
80216
  friend class ::WinMemberExplSpec;
 
80217
  friend class ::WinTypeKeywords;
 
80218
  friend class ::PragmaOnceUnitState;
 
80219
  friend class ::PragmaOnce;
 
80220
  friend class ::CCExprResolve;
 
80221
  friend class ::CExprResolve;
 
80222
 
 
80223
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80224
 
 
80225
  CTree *sons[2]; // key, semi_colon
 
80226
 
 
80227
public:
 
80228
  CT_BreakStmt (CTree *key, CTree *sc) { sons[0] = key; sons[1] = sc; }
 
80229
  static const char *NodeId ();
 
80230
  const char *NodeName () const { return NodeId (); }
 
80231
  int Sons () const { return 2; }
 
80232
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
80233
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80234
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
80235
  }
 
80236
};
 
80237
 
 
80238
 
 
80239
#line 80240 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80240
} // closed Puma
 
80241
class WinIfExists;
 
80242
class WinImportHandler;
 
80243
class WinMacros;
 
80244
class CMatchSyntax;
 
80245
class ExtGnu;
 
80246
class ExtAC;
 
80247
class ExtACBuilderCoupling;
 
80248
class ExtACSyntaxCoupling;
 
80249
class ExtACTree;
 
80250
class ExtACKeywords;
 
80251
class WinAsm;
 
80252
class WinDeclSpecs;
 
80253
class WinMemberExplSpec;
 
80254
class WinTypeKeywords;
 
80255
class PragmaOnceUnitState;
 
80256
class PragmaOnce;
 
80257
class CCExprResolve;
 
80258
class CExprResolve;
 
80259
namespace Puma {
 
80260
 
 
80261
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80262
class CT_ContinueStmt : public CT_Statement {
 
80263
#line 80264 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80264
  friend class ::WinIfExists;
 
80265
  friend class ::WinImportHandler;
 
80266
  friend class ::WinMacros;
 
80267
  friend class ::CMatchSyntax;
 
80268
  friend class ::ExtGnu;
 
80269
  friend class ::ExtAC;
 
80270
  friend class ::ExtACBuilderCoupling;
 
80271
  friend class ::ExtACSyntaxCoupling;
 
80272
  friend class ::ExtACTree;
 
80273
  friend class ::ExtACKeywords;
 
80274
  friend class ::WinAsm;
 
80275
  friend class ::WinDeclSpecs;
 
80276
  friend class ::WinMemberExplSpec;
 
80277
  friend class ::WinTypeKeywords;
 
80278
  friend class ::PragmaOnceUnitState;
 
80279
  friend class ::PragmaOnce;
 
80280
  friend class ::CCExprResolve;
 
80281
  friend class ::CExprResolve;
 
80282
 
 
80283
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80284
 
 
80285
  CTree *sons[2]; // key, semi_colon
 
80286
 
 
80287
public:
 
80288
  CT_ContinueStmt (CTree *key, CTree *sc) { sons[0] = key; sons[1] = sc; }
 
80289
  static const char *NodeId ();
 
80290
  const char *NodeName () const { return NodeId (); }
 
80291
  int Sons () const { return 2; }
 
80292
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
80293
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80294
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
80295
  }
 
80296
};
 
80297
 
 
80298
 
 
80299
#line 80300 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80300
} // closed Puma
 
80301
class WinIfExists;
 
80302
class WinImportHandler;
 
80303
class WinMacros;
 
80304
class CMatchSyntax;
 
80305
class ExtGnu;
 
80306
class ExtAC;
 
80307
class ExtACBuilderCoupling;
 
80308
class ExtACSyntaxCoupling;
 
80309
class ExtACTree;
 
80310
class ExtACKeywords;
 
80311
class WinAsm;
 
80312
class WinDeclSpecs;
 
80313
class WinMemberExplSpec;
 
80314
class WinTypeKeywords;
 
80315
class PragmaOnceUnitState;
 
80316
class PragmaOnce;
 
80317
class CCExprResolve;
 
80318
class CExprResolve;
 
80319
namespace Puma {
 
80320
 
 
80321
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80322
class CT_GotoStmt : public CT_Statement {
 
80323
#line 80324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80324
  friend class ::WinIfExists;
 
80325
  friend class ::WinImportHandler;
 
80326
  friend class ::WinMacros;
 
80327
  friend class ::CMatchSyntax;
 
80328
  friend class ::ExtGnu;
 
80329
  friend class ::ExtAC;
 
80330
  friend class ::ExtACBuilderCoupling;
 
80331
  friend class ::ExtACSyntaxCoupling;
 
80332
  friend class ::ExtACTree;
 
80333
  friend class ::ExtACKeywords;
 
80334
  friend class ::WinAsm;
 
80335
  friend class ::WinDeclSpecs;
 
80336
  friend class ::WinMemberExplSpec;
 
80337
  friend class ::WinTypeKeywords;
 
80338
  friend class ::PragmaOnceUnitState;
 
80339
  friend class ::PragmaOnce;
 
80340
  friend class ::CCExprResolve;
 
80341
  friend class ::CExprResolve;
 
80342
 
 
80343
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80344
 
 
80345
  CTree *sons[3]; // key, label, semi_colon
 
80346
 
 
80347
public:
 
80348
  CT_GotoStmt (CTree *key, CTree *l, CTree *sc) {
 
80349
    sons[0] = key; sons[1] = l; sons[2] = sc; 
 
80350
  }
 
80351
  static const char *NodeId ();
 
80352
  const char *NodeName () const { return NodeId (); }
 
80353
  int Sons () const { return 3; }
 
80354
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
80355
  CT_SimpleName *Label () const { return (CT_SimpleName*)sons[1]; }
 
80356
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80357
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
80358
  }
 
80359
};
 
80360
 
 
80361
 
 
80362
#line 80363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80363
} // closed Puma
 
80364
class WinIfExists;
 
80365
class WinImportHandler;
 
80366
class WinMacros;
 
80367
class CMatchSyntax;
 
80368
class ExtGnu;
 
80369
class ExtAC;
 
80370
class ExtACBuilderCoupling;
 
80371
class ExtACSyntaxCoupling;
 
80372
class ExtACTree;
 
80373
class ExtACKeywords;
 
80374
class WinAsm;
 
80375
class WinDeclSpecs;
 
80376
class WinMemberExplSpec;
 
80377
class WinTypeKeywords;
 
80378
class PragmaOnceUnitState;
 
80379
class PragmaOnce;
 
80380
class CCExprResolve;
 
80381
class CExprResolve;
 
80382
namespace Puma {
 
80383
 
 
80384
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80385
class CT_ReturnStmt : public CT_Statement {
 
80386
#line 80387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80387
  friend class ::WinIfExists;
 
80388
  friend class ::WinImportHandler;
 
80389
  friend class ::WinMacros;
 
80390
  friend class ::CMatchSyntax;
 
80391
  friend class ::ExtGnu;
 
80392
  friend class ::ExtAC;
 
80393
  friend class ::ExtACBuilderCoupling;
 
80394
  friend class ::ExtACSyntaxCoupling;
 
80395
  friend class ::ExtACTree;
 
80396
  friend class ::ExtACKeywords;
 
80397
  friend class ::WinAsm;
 
80398
  friend class ::WinDeclSpecs;
 
80399
  friend class ::WinMemberExplSpec;
 
80400
  friend class ::WinTypeKeywords;
 
80401
  friend class ::PragmaOnceUnitState;
 
80402
  friend class ::PragmaOnce;
 
80403
  friend class ::CCExprResolve;
 
80404
  friend class ::CExprResolve;
 
80405
 
 
80406
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80407
 
 
80408
  CTree *sons[3]; // key, expr, semi_colon
 
80409
 
 
80410
public:
 
80411
  CT_ReturnStmt (CTree *key, CTree *e, CTree *sc) {
 
80412
    sons[0] = key; sons[1] = e; sons[2] = sc; 
 
80413
  }
 
80414
  static const char *NodeId ();
 
80415
  const char *NodeName () const { return NodeId (); }
 
80416
  int Sons () const { return CTree::Sons (sons, 3); }
 
80417
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
80418
  CTree *Expr () const { return sons[1]; }
 
80419
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80420
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
80421
  }
 
80422
};
 
80423
 
 
80424
 
 
80425
#line 80426 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80426
} // closed Puma
 
80427
class WinIfExists;
 
80428
class WinImportHandler;
 
80429
class WinMacros;
 
80430
class CMatchSyntax;
 
80431
class ExtGnu;
 
80432
class ExtAC;
 
80433
class ExtACBuilderCoupling;
 
80434
class ExtACSyntaxCoupling;
 
80435
class ExtACTree;
 
80436
class ExtACKeywords;
 
80437
class WinAsm;
 
80438
class WinDeclSpecs;
 
80439
class WinMemberExplSpec;
 
80440
class WinTypeKeywords;
 
80441
class PragmaOnceUnitState;
 
80442
class PragmaOnce;
 
80443
class CCExprResolve;
 
80444
class CExprResolve;
 
80445
namespace Puma {
 
80446
 
 
80447
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80448
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
80449
#line 80450 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80450
  friend class ::WinIfExists;
 
80451
  friend class ::WinImportHandler;
 
80452
  friend class ::WinMacros;
 
80453
  friend class ::CMatchSyntax;
 
80454
  friend class ::ExtGnu;
 
80455
  friend class ::ExtAC;
 
80456
  friend class ::ExtACBuilderCoupling;
 
80457
  friend class ::ExtACSyntaxCoupling;
 
80458
  friend class ::ExtACTree;
 
80459
  friend class ::ExtACKeywords;
 
80460
  friend class ::WinAsm;
 
80461
  friend class ::WinDeclSpecs;
 
80462
  friend class ::WinMemberExplSpec;
 
80463
  friend class ::WinTypeKeywords;
 
80464
  friend class ::PragmaOnceUnitState;
 
80465
  friend class ::PragmaOnce;
 
80466
  friend class ::CCExprResolve;
 
80467
  friend class ::CExprResolve;
 
80468
 
 
80469
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80470
 
 
80471
  CTree *sons[5]; // key, open, cond, close, stmt
 
80472
 
 
80473
public:
 
80474
  CT_WhileStmt (CTree *kw, CTree *o, CTree *cond, CTree *c, CTree *stmt) {
 
80475
    sons[0] = kw; sons[1] = o; sons[2] = cond; sons[3] = c; sons[4] = stmt; 
 
80476
  }
 
80477
  static const char *NodeId ();
 
80478
  const char *NodeName () const { return NodeId (); }
 
80479
  int Sons () const { return 5; }
 
80480
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
80481
  CT_Statement *Statement () const { return (CT_Statement*)sons[4]; }
 
80482
  CTree *Condition () const { return sons[2]; }
 
80483
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80484
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
80485
  }
 
80486
};
 
80487
 
 
80488
 
 
80489
#line 80490 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80490
} // closed Puma
 
80491
class WinIfExists;
 
80492
class WinImportHandler;
 
80493
class WinMacros;
 
80494
class CMatchSyntax;
 
80495
class ExtGnu;
 
80496
class ExtAC;
 
80497
class ExtACBuilderCoupling;
 
80498
class ExtACSyntaxCoupling;
 
80499
class ExtACTree;
 
80500
class ExtACKeywords;
 
80501
class WinAsm;
 
80502
class WinDeclSpecs;
 
80503
class WinMemberExplSpec;
 
80504
class WinTypeKeywords;
 
80505
class PragmaOnceUnitState;
 
80506
class PragmaOnce;
 
80507
class CCExprResolve;
 
80508
class CExprResolve;
 
80509
namespace Puma {
 
80510
 
 
80511
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80512
class CT_DoStmt : public CT_Statement {
 
80513
#line 80514 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80514
  friend class ::WinIfExists;
 
80515
  friend class ::WinImportHandler;
 
80516
  friend class ::WinMacros;
 
80517
  friend class ::CMatchSyntax;
 
80518
  friend class ::ExtGnu;
 
80519
  friend class ::ExtAC;
 
80520
  friend class ::ExtACBuilderCoupling;
 
80521
  friend class ::ExtACSyntaxCoupling;
 
80522
  friend class ::ExtACTree;
 
80523
  friend class ::ExtACKeywords;
 
80524
  friend class ::WinAsm;
 
80525
  friend class ::WinDeclSpecs;
 
80526
  friend class ::WinMemberExplSpec;
 
80527
  friend class ::WinTypeKeywords;
 
80528
  friend class ::PragmaOnceUnitState;
 
80529
  friend class ::PragmaOnce;
 
80530
  friend class ::CCExprResolve;
 
80531
  friend class ::CExprResolve;
 
80532
 
 
80533
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80534
 
 
80535
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
 
80536
 
 
80537
public:
 
80538
  CT_DoStmt (CTree *d, CTree *stmt, CTree *w, CTree *o, CTree *e, 
 
80539
             CTree *c, CTree *sc) {
 
80540
    sons[0] = d; sons[1] = stmt; sons[2] = w; sons[3] = o; sons[4] = e; 
 
80541
    sons[5] = c; sons[6] = sc; 
 
80542
  }
 
80543
  static const char *NodeId ();
 
80544
  const char *NodeName () const { return NodeId (); }
 
80545
  int Sons () const { return 7; }
 
80546
  CTree *Son (int n) const { return CTree::Son (sons, 7, n); }
 
80547
  CT_Statement *Statement () const { return (CT_Statement*)sons[1]; }
 
80548
  CTree *Expr () const { return sons[4]; }
 
80549
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80550
    CTree::ReplaceSon (sons, 7, old_son, new_son);
 
80551
  }
 
80552
};
 
80553
 
 
80554
 
 
80555
#line 80556 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80556
} // closed Puma
 
80557
class WinIfExists;
 
80558
class WinImportHandler;
 
80559
class WinMacros;
 
80560
class CMatchSyntax;
 
80561
class ExtGnu;
 
80562
class ExtAC;
 
80563
class ExtACBuilderCoupling;
 
80564
class ExtACSyntaxCoupling;
 
80565
class ExtACTree;
 
80566
class ExtACKeywords;
 
80567
class WinAsm;
 
80568
class WinDeclSpecs;
 
80569
class WinMemberExplSpec;
 
80570
class WinTypeKeywords;
 
80571
class PragmaOnceUnitState;
 
80572
class PragmaOnce;
 
80573
class CCExprResolve;
 
80574
class CExprResolve;
 
80575
namespace Puma {
 
80576
 
 
80577
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80578
class CT_ForStmt : public CT_Statement, public CSemScope {
 
80579
#line 80580 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80580
  friend class ::WinIfExists;
 
80581
  friend class ::WinImportHandler;
 
80582
  friend class ::WinMacros;
 
80583
  friend class ::CMatchSyntax;
 
80584
  friend class ::ExtGnu;
 
80585
  friend class ::ExtAC;
 
80586
  friend class ::ExtACBuilderCoupling;
 
80587
  friend class ::ExtACSyntaxCoupling;
 
80588
  friend class ::ExtACTree;
 
80589
  friend class ::ExtACKeywords;
 
80590
  friend class ::WinAsm;
 
80591
  friend class ::WinDeclSpecs;
 
80592
  friend class ::WinMemberExplSpec;
 
80593
  friend class ::WinTypeKeywords;
 
80594
  friend class ::PragmaOnceUnitState;
 
80595
  friend class ::PragmaOnce;
 
80596
  friend class ::CCExprResolve;
 
80597
  friend class ::CExprResolve;
 
80598
 
 
80599
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80600
 
 
80601
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
 
80602
 
 
80603
public:
 
80604
  CT_ForStmt (CTree *k, CTree *o, CTree *i, CTree *co, CTree *sc,
 
80605
              CTree *e, CTree *c, CTree *stmt) {
 
80606
    sons[0] = k; sons[1] = o; sons[2] = i; sons[3] = co; 
 
80607
    sons[4] = sc; sons[5] = e; sons[6] = c; sons[7] = stmt; 
 
80608
  }
 
80609
  static const char *NodeId ();
 
80610
  const char *NodeName () const { return NodeId (); }
 
80611
  int Sons () const { return CTree::Sons (sons, 8); }
 
80612
  CTree *Son (int n) const { return CTree::Son (sons, 8, n); }
 
80613
  CTree *InitStmt () const { return sons[2]; }
 
80614
  CTree *Condition () const { return sons[3]; }
 
80615
  CTree *Expr () const { return sons[5]; }
 
80616
  CT_Statement *Statement () const { return (CT_Statement*)sons[7]; }
 
80617
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80618
    CTree::ReplaceSon (sons, 8, old_son, new_son);
 
80619
  }
 
80620
};
 
80621
 
 
80622
 
 
80623
#line 80624 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80624
} // closed Puma
 
80625
class WinIfExists;
 
80626
class WinImportHandler;
 
80627
class WinMacros;
 
80628
class CMatchSyntax;
 
80629
class ExtGnu;
 
80630
class ExtAC;
 
80631
class ExtACBuilderCoupling;
 
80632
class ExtACSyntaxCoupling;
 
80633
class ExtACTree;
 
80634
class ExtACKeywords;
 
80635
class WinAsm;
 
80636
class WinDeclSpecs;
 
80637
class WinMemberExplSpec;
 
80638
class WinTypeKeywords;
 
80639
class PragmaOnceUnitState;
 
80640
class PragmaOnce;
 
80641
class CCExprResolve;
 
80642
class CExprResolve;
 
80643
namespace Puma {
 
80644
 
 
80645
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80646
class CT_Condition : public CT_Decl, public CSemObject {
 
80647
#line 80648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80648
  friend class ::WinIfExists;
 
80649
  friend class ::WinImportHandler;
 
80650
  friend class ::WinMacros;
 
80651
  friend class ::CMatchSyntax;
 
80652
  friend class ::ExtGnu;
 
80653
  friend class ::ExtAC;
 
80654
  friend class ::ExtACBuilderCoupling;
 
80655
  friend class ::ExtACSyntaxCoupling;
 
80656
  friend class ::ExtACTree;
 
80657
  friend class ::ExtACKeywords;
 
80658
  friend class ::WinAsm;
 
80659
  friend class ::WinDeclSpecs;
 
80660
  friend class ::WinMemberExplSpec;
 
80661
  friend class ::WinTypeKeywords;
 
80662
  friend class ::PragmaOnceUnitState;
 
80663
  friend class ::PragmaOnce;
 
80664
  friend class ::CCExprResolve;
 
80665
  friend class ::CExprResolve;
 
80666
 
 
80667
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80668
 
 
80669
  CTree *sons[3]; // declspecs, declarator, init
 
80670
 
 
80671
public:
 
80672
  CT_Condition (CTree *dsl, CTree *d) {
 
80673
    sons[0] = dsl; sons[1] = d; sons[2] = 0;
 
80674
  }
 
80675
  static const char *NodeId ();
 
80676
  const char *NodeName () const { return NodeId (); }
 
80677
  int Sons () const { return CTree::Sons (sons, 3); }
 
80678
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
80679
  CT_DeclSpecSeq *DeclSpecs () const { return (CT_DeclSpecSeq*)sons[0]; }
 
80680
  CTree *Declarator () const { return sons[1]; }
 
80681
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[2]; }
 
80682
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
80683
  void Initializer (CTree *i) { sons[2] = i; }
 
80684
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
80685
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
80686
  }
 
80687
};
 
80688
 
 
80689
/*****************************************************************************/
 
80690
/*                                                                           */
 
80691
/*                              Classes                                      */
 
80692
/*                                                                           */
 
80693
/*****************************************************************************/
 
80694
 
 
80695
 
 
80696
#line 80697 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80697
} // closed Puma
 
80698
class WinIfExists;
 
80699
class WinImportHandler;
 
80700
class WinMacros;
 
80701
class CMatchSyntax;
 
80702
class ExtGnu;
 
80703
class ExtAC;
 
80704
class ExtACBuilderCoupling;
 
80705
class ExtACSyntaxCoupling;
 
80706
class ExtACTree;
 
80707
class ExtACKeywords;
 
80708
class WinAsm;
 
80709
class WinDeclSpecs;
 
80710
class WinMemberExplSpec;
 
80711
class WinTypeKeywords;
 
80712
class PragmaOnceUnitState;
 
80713
class PragmaOnce;
 
80714
class CCExprResolve;
 
80715
class CExprResolve;
 
80716
namespace Puma {
 
80717
 
 
80718
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80719
class CT_ClassDef : public CT_Decl, public CSemObject {
 
80720
#line 80721 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80721
  friend class ::WinIfExists;
 
80722
  friend class ::WinImportHandler;
 
80723
  friend class ::WinMacros;
 
80724
  friend class ::CMatchSyntax;
 
80725
  friend class ::ExtGnu;
 
80726
  friend class ::ExtAC;
 
80727
  friend class ::ExtACBuilderCoupling;
 
80728
  friend class ::ExtACSyntaxCoupling;
 
80729
  friend class ::ExtACTree;
 
80730
  friend class ::ExtACKeywords;
 
80731
  friend class ::WinAsm;
 
80732
  friend class ::WinDeclSpecs;
 
80733
  friend class ::WinMemberExplSpec;
 
80734
  friend class ::WinTypeKeywords;
 
80735
  friend class ::PragmaOnceUnitState;
 
80736
  friend class ::PragmaOnce;
 
80737
  friend class ::CCExprResolve;
 
80738
  friend class ::CExprResolve;
 
80739
 
 
80740
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80741
 
 
80742
   
 
80743
#line 80744 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80744
 
 
80745
  struct __ac_wrapper_sons {
 
80746
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
 
80747
    operator A& () { return _data; }
 
80748
    operator A& () const { return (A&)*(::Puma::CTree * *)_data; }
 
80749
    operator const A& () { return _data; }
 
80750
    operator const A& () const { return _data; }
 
80751
    operator void* () { return _data; }
 
80752
    operator void* () const { return (void*)_data; }
 
80753
    operator const void* () { return _data; }
 
80754
    operator const void* () const { return _data; }
 
80755
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
 
80756
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
 
80757
  } sons
 
80758
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80759
 
 
80760
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80761
; // key, name, bases, members
 
80762
  CTree *obj_decl;
 
80763
 
 
80764
public:
 
80765
  
 
80766
#line 80767 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80767
 
 
80768
 
 
80769
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
 
80770
  typedef void Result;
 
80771
  typedef ::Puma::CT_ClassDef That;
 
80772
  typedef ::Puma::CT_ClassDef Target;
 
80773
  static const int JPID = 4;
 
80774
  static const AC::JPType JPTYPE = (AC::JPType)16;
 
80775
  struct Res {
 
80776
    typedef void Type;
 
80777
    typedef void ReferredType;
 
80778
  };
 
80779
  enum { ARGS = 3 };
 
80780
  template <int I, int DUMMY = 0> struct Arg {
 
80781
    typedef void Type;
 
80782
    typedef void ReferredType;
 
80783
  };
 
80784
  template <int DUMMY> struct Arg<0, DUMMY> {
 
80785
    typedef ::Puma::CTree * Type;
 
80786
    typedef ::Puma::CTree * ReferredType;
 
80787
  };
 
80788
  template <int DUMMY> struct Arg<1, DUMMY> {
 
80789
    typedef ::Puma::CTree * Type;
 
80790
    typedef ::Puma::CTree * ReferredType;
 
80791
  };
 
80792
  template <int DUMMY> struct Arg<2, DUMMY> {
 
80793
    typedef ::Puma::CTree * Type;
 
80794
    typedef ::Puma::CTree * ReferredType;
 
80795
  };
 
80796
 
 
80797
  That *_that;
 
80798
 
 
80799
  inline That *that() {return (That*)_that;}
 
80800
 
 
80801
};
 
80802
 
 
80803
 
 
80804
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80805
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
80806
#line 80807 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80807
{
 
80808
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
 
80809
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
 
80810
this->__exec_old_C1(arg0, arg1, arg2);
 
80811
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
 
80812
 
 
80813
}
 
80814
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
80815
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80816
{
 
80817
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
 
80818
  }
 
80819
  static const char *NodeId ();
 
80820
  const char *NodeName () const { return NodeId (); }
 
80821
  int Sons () const { return CTree::Sons (sons, 4); }
 
80822
  CTree *Son (int n) const { return CTree::Son (sons, 4, n); }
 
80823
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[1]; }
 
80824
  CT_MembList *Members () const { return (CT_MembList*)sons[3]; }
 
80825
  CT_BaseSpecList *BaseClasses () const { return (CT_BaseSpecList*)sons[2]; }
 
80826
  CT_ObjDecl *ObjDecl () const { return (CT_ObjDecl*)obj_decl; }
 
80827
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
80828
  void Members (CTree *m) { sons[3] = m; }
 
80829
  void BaseClasses (CTree *bc) { sons[2] = bc; }
 
80830
  void ObjDecl (CTree *od) { obj_decl = od; }
 
80831
  void ReplaceSon (CTree *old_son, CTree *new_son) {
 
80832
    // &(...) is used here to avoid strange warnings by mingw32-g++
 
80833
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
 
80834
  }
 
80835
   private:
 
80836
 
 
80837
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
 
80838
 CTree * _intro_members ;
 
80839
public :
 
80840
CTree * IntroMembers ( ) const { return _intro_members ; }
 
80841
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
80842
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80843
 
 
80844
#line 80845 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80845
 
 
80846
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
 
80847
  typedef void Result;
 
80848
  typedef ::Puma::CT_ClassDef That;
 
80849
  typedef ::Puma::CT_ClassDef Target;
 
80850
  static const int JPID = 4;
 
80851
  static const AC::JPType JPTYPE = (AC::JPType)16;
 
80852
  struct Res {
 
80853
    typedef void Type;
 
80854
    typedef void ReferredType;
 
80855
  };
 
80856
  enum { ARGS = 1 };
 
80857
  template <int I, int DUMMY = 0> struct Arg {
 
80858
    typedef void Type;
 
80859
    typedef void ReferredType;
 
80860
  };
 
80861
  template <int DUMMY> struct Arg<0, DUMMY> {
 
80862
    typedef const ::Puma::CT_ClassDef & Type;
 
80863
    typedef const ::Puma::CT_ClassDef ReferredType;
 
80864
  };
 
80865
 
 
80866
  That *_that;
 
80867
 
 
80868
  inline That *that() {return (That*)_that;}
 
80869
 
 
80870
};
 
80871
 
 
80872
 
 
80873
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80874
 
 
80875
#line 80876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80876
 
 
80877
public:
 
80878
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
 
80879
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
 
80880
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0::That*)this;
 
80881
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0> (&tjp);
 
80882
 
 
80883
}
 
80884
 
 
80885
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80886
 
 
80887
#line 80888 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80888
 
 
80889
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
 
80890
  typedef void Result;
 
80891
  typedef ::Puma::CT_ClassDef That;
 
80892
  typedef ::Puma::CT_ClassDef Target;
 
80893
  static const int JPID = 4;
 
80894
  static const AC::JPType JPTYPE = (AC::JPType)32;
 
80895
  struct Res {
 
80896
    typedef void Type;
 
80897
    typedef void ReferredType;
 
80898
  };
 
80899
  enum { ARGS = 0 };
 
80900
  template <int I, int DUMMY = 0> struct Arg {
 
80901
    typedef void Type;
 
80902
    typedef void ReferredType;
 
80903
  };
 
80904
 
 
80905
  That *_that;
 
80906
 
 
80907
  inline That *that() {return (That*)_that;}
 
80908
 
 
80909
};
 
80910
 
 
80911
 
 
80912
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80913
 
 
80914
#line 80915 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80915
 
 
80916
public:
 
80917
inline ~CT_ClassDef () {
 
80918
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
 
80919
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefD1Ev_0::That*)this;
 
80920
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
 
80921
 
 
80922
}
 
80923
 
 
80924
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80925
};
 
80926
      
 
80927
 
 
80928
#line 80929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80929
} // closed Puma
 
80930
class WinIfExists;
 
80931
class WinImportHandler;
 
80932
class WinMacros;
 
80933
class CMatchSyntax;
 
80934
class ExtGnu;
 
80935
class ExtAC;
 
80936
class ExtACBuilderCoupling;
 
80937
class ExtACSyntaxCoupling;
 
80938
class ExtACTree;
 
80939
class ExtACKeywords;
 
80940
class WinAsm;
 
80941
class WinDeclSpecs;
 
80942
class WinMemberExplSpec;
 
80943
class WinTypeKeywords;
 
80944
class PragmaOnceUnitState;
 
80945
class PragmaOnce;
 
80946
class CCExprResolve;
 
80947
class CExprResolve;
 
80948
namespace Puma {
 
80949
 
 
80950
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80951
class CT_UnionDef : public CT_ClassDef {
 
80952
#line 80953 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80953
  friend class ::WinIfExists;
 
80954
  friend class ::WinImportHandler;
 
80955
  friend class ::WinMacros;
 
80956
  friend class ::CMatchSyntax;
 
80957
  friend class ::ExtGnu;
 
80958
  friend class ::ExtAC;
 
80959
  friend class ::ExtACBuilderCoupling;
 
80960
  friend class ::ExtACSyntaxCoupling;
 
80961
  friend class ::ExtACTree;
 
80962
  friend class ::ExtACKeywords;
 
80963
  friend class ::WinAsm;
 
80964
  friend class ::WinDeclSpecs;
 
80965
  friend class ::WinMemberExplSpec;
 
80966
  friend class ::WinTypeKeywords;
 
80967
  friend class ::PragmaOnceUnitState;
 
80968
  friend class ::PragmaOnce;
 
80969
  friend class ::CCExprResolve;
 
80970
  friend class ::CExprResolve;
 
80971
 
 
80972
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
80973
 
 
80974
public:
 
80975
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
 
80976
  static const char *NodeId ();
 
80977
  const char *NodeName () const { return NodeId (); }
 
80978
};
 
80979
      
 
80980
 
 
80981
#line 80982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
80982
} // closed Puma
 
80983
class WinIfExists;
 
80984
class WinImportHandler;
 
80985
class WinMacros;
 
80986
class CMatchSyntax;
 
80987
class ExtGnu;
 
80988
class ExtAC;
 
80989
class ExtACBuilderCoupling;
 
80990
class ExtACSyntaxCoupling;
 
80991
class ExtACTree;
 
80992
class ExtACKeywords;
 
80993
class WinAsm;
 
80994
class WinDeclSpecs;
 
80995
class WinMemberExplSpec;
 
80996
class WinTypeKeywords;
 
80997
class PragmaOnceUnitState;
 
80998
class PragmaOnce;
 
80999
class CCExprResolve;
 
81000
class CExprResolve;
 
81001
namespace Puma {
 
81002
 
 
81003
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81004
class CT_MembList : public CT_DeclList, public CSemScope {
 
81005
#line 81006 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81006
  friend class ::WinIfExists;
 
81007
  friend class ::WinImportHandler;
 
81008
  friend class ::WinMacros;
 
81009
  friend class ::CMatchSyntax;
 
81010
  friend class ::ExtGnu;
 
81011
  friend class ::ExtAC;
 
81012
  friend class ::ExtACBuilderCoupling;
 
81013
  friend class ::ExtACSyntaxCoupling;
 
81014
  friend class ::ExtACTree;
 
81015
  friend class ::ExtACKeywords;
 
81016
  friend class ::WinAsm;
 
81017
  friend class ::WinDeclSpecs;
 
81018
  friend class ::WinMemberExplSpec;
 
81019
  friend class ::WinTypeKeywords;
 
81020
  friend class ::PragmaOnceUnitState;
 
81021
  friend class ::PragmaOnce;
 
81022
  friend class ::CCExprResolve;
 
81023
  friend class ::CExprResolve;
 
81024
 
 
81025
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81026
 
 
81027
public:
 
81028
  CT_MembList (int size = 10, int incr = 10) : 
 
81029
    CT_DeclList (size, incr) {}
 
81030
  static const char *NodeId ();
 
81031
  const char *NodeName () const { return NodeId (); }
 
81032
};
 
81033
 
 
81034
 
 
81035
#line 81036 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81036
} // closed Puma
 
81037
class WinIfExists;
 
81038
class WinImportHandler;
 
81039
class WinMacros;
 
81040
class CMatchSyntax;
 
81041
class ExtGnu;
 
81042
class ExtAC;
 
81043
class ExtACBuilderCoupling;
 
81044
class ExtACSyntaxCoupling;
 
81045
class ExtACTree;
 
81046
class ExtACKeywords;
 
81047
class WinAsm;
 
81048
class WinDeclSpecs;
 
81049
class WinMemberExplSpec;
 
81050
class WinTypeKeywords;
 
81051
class PragmaOnceUnitState;
 
81052
class PragmaOnce;
 
81053
class CCExprResolve;
 
81054
class CExprResolve;
 
81055
namespace Puma {
 
81056
 
 
81057
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81058
class CT_MembInitList : public CT_List, public CSemScope {
 
81059
#line 81060 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81060
  friend class ::WinIfExists;
 
81061
  friend class ::WinImportHandler;
 
81062
  friend class ::WinMacros;
 
81063
  friend class ::CMatchSyntax;
 
81064
  friend class ::ExtGnu;
 
81065
  friend class ::ExtAC;
 
81066
  friend class ::ExtACBuilderCoupling;
 
81067
  friend class ::ExtACSyntaxCoupling;
 
81068
  friend class ::ExtACTree;
 
81069
  friend class ::ExtACKeywords;
 
81070
  friend class ::WinAsm;
 
81071
  friend class ::WinDeclSpecs;
 
81072
  friend class ::WinMemberExplSpec;
 
81073
  friend class ::WinTypeKeywords;
 
81074
  friend class ::PragmaOnceUnitState;
 
81075
  friend class ::PragmaOnce;
 
81076
  friend class ::CCExprResolve;
 
81077
  friend class ::CExprResolve;
 
81078
 
 
81079
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81080
 
 
81081
public:
 
81082
  CT_MembInitList (int size = 2) : 
 
81083
    CT_List (size, 2, CT_List::OPEN) {}
 
81084
  static const char *NodeId ();
 
81085
  const char *NodeName () const { return NodeId (); }
 
81086
};
 
81087
 
 
81088
 
 
81089
#line 81090 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81090
} // closed Puma
 
81091
class WinIfExists;
 
81092
class WinImportHandler;
 
81093
class WinMacros;
 
81094
class CMatchSyntax;
 
81095
class ExtGnu;
 
81096
class ExtAC;
 
81097
class ExtACBuilderCoupling;
 
81098
class ExtACSyntaxCoupling;
 
81099
class ExtACTree;
 
81100
class ExtACKeywords;
 
81101
class WinAsm;
 
81102
class WinDeclSpecs;
 
81103
class WinMemberExplSpec;
 
81104
class WinTypeKeywords;
 
81105
class PragmaOnceUnitState;
 
81106
class PragmaOnce;
 
81107
class CCExprResolve;
 
81108
class CExprResolve;
 
81109
namespace Puma {
 
81110
 
 
81111
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81112
class CT_MembInit : public CT_Expression, public CSemObject {
 
81113
#line 81114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81114
  friend class ::WinIfExists;
 
81115
  friend class ::WinImportHandler;
 
81116
  friend class ::WinMacros;
 
81117
  friend class ::CMatchSyntax;
 
81118
  friend class ::ExtGnu;
 
81119
  friend class ::ExtAC;
 
81120
  friend class ::ExtACBuilderCoupling;
 
81121
  friend class ::ExtACSyntaxCoupling;
 
81122
  friend class ::ExtACTree;
 
81123
  friend class ::ExtACKeywords;
 
81124
  friend class ::WinAsm;
 
81125
  friend class ::WinDeclSpecs;
 
81126
  friend class ::WinMemberExplSpec;
 
81127
  friend class ::WinTypeKeywords;
 
81128
  friend class ::PragmaOnceUnitState;
 
81129
  friend class ::PragmaOnce;
 
81130
  friend class ::CCExprResolve;
 
81131
  friend class ::CExprResolve;
 
81132
 
 
81133
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81134
 
 
81135
  CTree *sons[2]; // name, init
 
81136
 
 
81137
public:
 
81138
  CT_MembInit (CTree *n, CTree *i) { sons[0] = n; sons[1] = i; }
 
81139
  static const char *NodeId ();
 
81140
  const char *NodeName () const { return NodeId (); }
 
81141
  int Sons () const { return 2; }
 
81142
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
81143
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81144
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
81145
  }
 
81146
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[0]; }
 
81147
  CT_ExprList *Initializer () const { return (CT_ExprList*)sons[1]; }
 
81148
  CSemObject *SemObject () const { return (CSemObject*)this; }
 
81149
   private:
 
81150
  typedef CT_MembInit CCExprResolveExpr;
 
81151
 
 
81152
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
 
81153
 public :
 
81154
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
 
81155
  typedef CT_MembInit CExprResolveExpr;
 
81156
 
 
81157
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
 
81158
 public :
 
81159
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
81160
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81161
};
 
81162
 
 
81163
 
 
81164
#line 81165 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81165
} // closed Puma
 
81166
class WinIfExists;
 
81167
class WinImportHandler;
 
81168
class WinMacros;
 
81169
class CMatchSyntax;
 
81170
class ExtGnu;
 
81171
class ExtAC;
 
81172
class ExtACBuilderCoupling;
 
81173
class ExtACSyntaxCoupling;
 
81174
class ExtACTree;
 
81175
class ExtACKeywords;
 
81176
class WinAsm;
 
81177
class WinDeclSpecs;
 
81178
class WinMemberExplSpec;
 
81179
class WinTypeKeywords;
 
81180
class PragmaOnceUnitState;
 
81181
class PragmaOnce;
 
81182
class CCExprResolve;
 
81183
class CExprResolve;
 
81184
namespace Puma {
 
81185
 
 
81186
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81187
class CT_BaseSpecList : public CT_List {
 
81188
#line 81189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81189
  friend class ::WinIfExists;
 
81190
  friend class ::WinImportHandler;
 
81191
  friend class ::WinMacros;
 
81192
  friend class ::CMatchSyntax;
 
81193
  friend class ::ExtGnu;
 
81194
  friend class ::ExtAC;
 
81195
  friend class ::ExtACBuilderCoupling;
 
81196
  friend class ::ExtACSyntaxCoupling;
 
81197
  friend class ::ExtACTree;
 
81198
  friend class ::ExtACKeywords;
 
81199
  friend class ::WinAsm;
 
81200
  friend class ::WinDeclSpecs;
 
81201
  friend class ::WinMemberExplSpec;
 
81202
  friend class ::WinTypeKeywords;
 
81203
  friend class ::PragmaOnceUnitState;
 
81204
  friend class ::PragmaOnce;
 
81205
  friend class ::CCExprResolve;
 
81206
  friend class ::CExprResolve;
 
81207
 
 
81208
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81209
 
 
81210
public:
 
81211
  CT_BaseSpecList (int size = 2) : 
 
81212
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
 
81213
  static const char *NodeId ();
 
81214
  const char *NodeName () const { return NodeId (); }
 
81215
};
 
81216
 
 
81217
 
 
81218
#line 81219 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81219
} // closed Puma
 
81220
class WinIfExists;
 
81221
class WinImportHandler;
 
81222
class WinMacros;
 
81223
class CMatchSyntax;
 
81224
class ExtGnu;
 
81225
class ExtAC;
 
81226
class ExtACBuilderCoupling;
 
81227
class ExtACSyntaxCoupling;
 
81228
class ExtACTree;
 
81229
class ExtACKeywords;
 
81230
class WinAsm;
 
81231
class WinDeclSpecs;
 
81232
class WinMemberExplSpec;
 
81233
class WinTypeKeywords;
 
81234
class PragmaOnceUnitState;
 
81235
class PragmaOnce;
 
81236
class CCExprResolve;
 
81237
class CExprResolve;
 
81238
namespace Puma {
 
81239
 
 
81240
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81241
class CT_AccessSpec : public CTree {
 
81242
#line 81243 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81243
  friend class ::WinIfExists;
 
81244
  friend class ::WinImportHandler;
 
81245
  friend class ::WinMacros;
 
81246
  friend class ::CMatchSyntax;
 
81247
  friend class ::ExtGnu;
 
81248
  friend class ::ExtAC;
 
81249
  friend class ::ExtACBuilderCoupling;
 
81250
  friend class ::ExtACSyntaxCoupling;
 
81251
  friend class ::ExtACTree;
 
81252
  friend class ::ExtACKeywords;
 
81253
  friend class ::WinAsm;
 
81254
  friend class ::WinDeclSpecs;
 
81255
  friend class ::WinMemberExplSpec;
 
81256
  friend class ::WinTypeKeywords;
 
81257
  friend class ::PragmaOnceUnitState;
 
81258
  friend class ::PragmaOnce;
 
81259
  friend class ::CCExprResolve;
 
81260
  friend class ::CExprResolve;
 
81261
 
 
81262
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81263
 
 
81264
  CTree *sons[2]; // access, colon
 
81265
 
 
81266
public:
 
81267
  CT_AccessSpec (CTree *a, CTree *c) { sons[0] = a; sons[1] = c; }
 
81268
  static const char *NodeId ();
 
81269
  const char *NodeName () const { return NodeId (); }
 
81270
  int Sons () const { return 2; }
 
81271
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
81272
  int Access () const { return sons[0]->token ()->type (); }
 
81273
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81274
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
81275
  }
 
81276
};
 
81277
 
 
81278
 
 
81279
#line 81280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81280
} // closed Puma
 
81281
class WinIfExists;
 
81282
class WinImportHandler;
 
81283
class WinMacros;
 
81284
class CMatchSyntax;
 
81285
class ExtGnu;
 
81286
class ExtAC;
 
81287
class ExtACBuilderCoupling;
 
81288
class ExtACSyntaxCoupling;
 
81289
class ExtACTree;
 
81290
class ExtACKeywords;
 
81291
class WinAsm;
 
81292
class WinDeclSpecs;
 
81293
class WinMemberExplSpec;
 
81294
class WinTypeKeywords;
 
81295
class PragmaOnceUnitState;
 
81296
class PragmaOnce;
 
81297
class CCExprResolve;
 
81298
class CExprResolve;
 
81299
namespace Puma {
 
81300
 
 
81301
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81302
class CT_BaseSpec : public CTree {
 
81303
#line 81304 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81304
  friend class ::WinIfExists;
 
81305
  friend class ::WinImportHandler;
 
81306
  friend class ::WinMacros;
 
81307
  friend class ::CMatchSyntax;
 
81308
  friend class ::ExtGnu;
 
81309
  friend class ::ExtAC;
 
81310
  friend class ::ExtACBuilderCoupling;
 
81311
  friend class ::ExtACSyntaxCoupling;
 
81312
  friend class ::ExtACTree;
 
81313
  friend class ::ExtACKeywords;
 
81314
  friend class ::WinAsm;
 
81315
  friend class ::WinDeclSpecs;
 
81316
  friend class ::WinMemberExplSpec;
 
81317
  friend class ::WinTypeKeywords;
 
81318
  friend class ::PragmaOnceUnitState;
 
81319
  friend class ::PragmaOnce;
 
81320
  friend class ::CCExprResolve;
 
81321
  friend class ::CExprResolve;
 
81322
 
 
81323
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81324
 
 
81325
  CTree *sons[3]; // virtual, access, name
 
81326
 
 
81327
public:
 
81328
  CT_BaseSpec (CTree *v, CTree *a, CTree *n) {
 
81329
    sons[0] = v; sons[1] = a; sons[2] = n; 
 
81330
  }
 
81331
  static const char *NodeId ();
 
81332
  const char *NodeName () const { return NodeId (); }
 
81333
  int Sons () const { return CTree::Sons (sons, 3); }
 
81334
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
81335
  int Access () const { return sons[1]->token ()->type (); }
 
81336
  CTree *AccessSpec () const { return sons[1]; }
 
81337
  CTree *Virtual () const { return sons[0]; }
 
81338
  CT_SimpleName *Name () const { return (CT_SimpleName*)sons[2]; }
 
81339
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81340
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
81341
  }
 
81342
};
 
81343
 
 
81344
 
 
81345
#line 81346 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81346
} // closed Puma
 
81347
class WinIfExists;
 
81348
class WinImportHandler;
 
81349
class WinMacros;
 
81350
class CMatchSyntax;
 
81351
class ExtGnu;
 
81352
class ExtAC;
 
81353
class ExtACBuilderCoupling;
 
81354
class ExtACSyntaxCoupling;
 
81355
class ExtACTree;
 
81356
class ExtACKeywords;
 
81357
class WinAsm;
 
81358
class WinDeclSpecs;
 
81359
class WinMemberExplSpec;
 
81360
class WinTypeKeywords;
 
81361
class PragmaOnceUnitState;
 
81362
class PragmaOnce;
 
81363
class CCExprResolve;
 
81364
class CExprResolve;
 
81365
namespace Puma {
 
81366
 
 
81367
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81368
class CT_AccessDecl : public CT_Decl {
 
81369
#line 81370 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81370
  friend class ::WinIfExists;
 
81371
  friend class ::WinImportHandler;
 
81372
  friend class ::WinMacros;
 
81373
  friend class ::CMatchSyntax;
 
81374
  friend class ::ExtGnu;
 
81375
  friend class ::ExtAC;
 
81376
  friend class ::ExtACBuilderCoupling;
 
81377
  friend class ::ExtACSyntaxCoupling;
 
81378
  friend class ::ExtACTree;
 
81379
  friend class ::ExtACKeywords;
 
81380
  friend class ::WinAsm;
 
81381
  friend class ::WinDeclSpecs;
 
81382
  friend class ::WinMemberExplSpec;
 
81383
  friend class ::WinTypeKeywords;
 
81384
  friend class ::PragmaOnceUnitState;
 
81385
  friend class ::PragmaOnce;
 
81386
  friend class ::CCExprResolve;
 
81387
  friend class ::CExprResolve;
 
81388
 
 
81389
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81390
 
 
81391
  CTree *sons[2]; // name, semi_colon
 
81392
 
 
81393
public:
 
81394
  CT_AccessDecl (CTree *n, CTree *s) { sons[0] = n; sons[1] = s; }
 
81395
  static const char *NodeId ();
 
81396
  const char *NodeName () const { return NodeId (); }
 
81397
  int Sons () const { return 2; }
 
81398
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
81399
  CT_QualName *Member () const { return (CT_QualName*)sons[0]; }
 
81400
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81401
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
81402
  }
 
81403
};
 
81404
 
 
81405
 
 
81406
#line 81407 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81407
} // closed Puma
 
81408
class WinIfExists;
 
81409
class WinImportHandler;
 
81410
class WinMacros;
 
81411
class CMatchSyntax;
 
81412
class ExtGnu;
 
81413
class ExtAC;
 
81414
class ExtACBuilderCoupling;
 
81415
class ExtACSyntaxCoupling;
 
81416
class ExtACTree;
 
81417
class ExtACKeywords;
 
81418
class WinAsm;
 
81419
class WinDeclSpecs;
 
81420
class WinMemberExplSpec;
 
81421
class WinTypeKeywords;
 
81422
class PragmaOnceUnitState;
 
81423
class PragmaOnce;
 
81424
class CCExprResolve;
 
81425
class CExprResolve;
 
81426
namespace Puma {
 
81427
 
 
81428
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81429
class CT_UsingDecl : public CT_AccessDecl {
 
81430
#line 81431 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81431
  friend class ::WinIfExists;
 
81432
  friend class ::WinImportHandler;
 
81433
  friend class ::WinMacros;
 
81434
  friend class ::CMatchSyntax;
 
81435
  friend class ::ExtGnu;
 
81436
  friend class ::ExtAC;
 
81437
  friend class ::ExtACBuilderCoupling;
 
81438
  friend class ::ExtACSyntaxCoupling;
 
81439
  friend class ::ExtACTree;
 
81440
  friend class ::ExtACKeywords;
 
81441
  friend class ::WinAsm;
 
81442
  friend class ::WinDeclSpecs;
 
81443
  friend class ::WinMemberExplSpec;
 
81444
  friend class ::WinTypeKeywords;
 
81445
  friend class ::PragmaOnceUnitState;
 
81446
  friend class ::PragmaOnce;
 
81447
  friend class ::CCExprResolve;
 
81448
  friend class ::CExprResolve;
 
81449
 
 
81450
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81451
 
 
81452
  CTree *sons[2]; // using, typename
 
81453
 
 
81454
public:
 
81455
  CT_UsingDecl (CTree *u, CTree *n, CTree *s) : CT_AccessDecl (n, s) {
 
81456
    sons[0] = u; sons[1] = 0; 
 
81457
  }
 
81458
  CT_UsingDecl (CTree *u, CTree *t, CTree *n, CTree *s) : CT_AccessDecl (n, s) {
 
81459
    sons[0] = u; sons[1] = t; 
 
81460
  }
 
81461
  static const char *NodeId ();
 
81462
  const char *NodeName () const { return NodeId (); }
 
81463
  int Sons () const { return CTree::Sons (sons, 2) + CT_AccessDecl::Sons (); }
 
81464
  CTree *Son (int n) const {
 
81465
    int num = CTree::Sons (sons, 2);
 
81466
    CTree *result = CTree::Son (sons, 2, n);
 
81467
    return result ? result : CT_AccessDecl::Son (n-num);
 
81468
  }
 
81469
  CTree *Typename () const { return sons[1]; }
 
81470
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81471
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
81472
    CT_AccessDecl::ReplaceSon (old_son, new_son);
 
81473
  }
 
81474
};
 
81475
 
 
81476
/*****************************************************************************/
 
81477
/*                                                                           */
 
81478
/*                              Wildcards                                    */
 
81479
/*                                                                           */
 
81480
/*****************************************************************************/
 
81481
 
 
81482
 
 
81483
#line 81484 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81484
} // closed Puma
 
81485
class WinIfExists;
 
81486
class WinImportHandler;
 
81487
class WinMacros;
 
81488
class CMatchSyntax;
 
81489
class ExtGnu;
 
81490
class ExtAC;
 
81491
class ExtACBuilderCoupling;
 
81492
class ExtACSyntaxCoupling;
 
81493
class ExtACTree;
 
81494
class ExtACKeywords;
 
81495
class WinAsm;
 
81496
class WinDeclSpecs;
 
81497
class WinMemberExplSpec;
 
81498
class WinTypeKeywords;
 
81499
class PragmaOnceUnitState;
 
81500
class PragmaOnce;
 
81501
class CCExprResolve;
 
81502
class CExprResolve;
 
81503
namespace Puma {
 
81504
 
 
81505
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81506
class CT_Any : public CTree {
 
81507
#line 81508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81508
  friend class ::WinIfExists;
 
81509
  friend class ::WinImportHandler;
 
81510
  friend class ::WinMacros;
 
81511
  friend class ::CMatchSyntax;
 
81512
  friend class ::ExtGnu;
 
81513
  friend class ::ExtAC;
 
81514
  friend class ::ExtACBuilderCoupling;
 
81515
  friend class ::ExtACSyntaxCoupling;
 
81516
  friend class ::ExtACTree;
 
81517
  friend class ::ExtACKeywords;
 
81518
  friend class ::WinAsm;
 
81519
  friend class ::WinDeclSpecs;
 
81520
  friend class ::WinMemberExplSpec;
 
81521
  friend class ::WinTypeKeywords;
 
81522
  friend class ::PragmaOnceUnitState;
 
81523
  friend class ::PragmaOnce;
 
81524
  friend class ::CCExprResolve;
 
81525
  friend class ::CExprResolve;
 
81526
 
 
81527
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81528
 
 
81529
  CTree *sons[2]; // keyword, extension
 
81530
 
 
81531
public:
 
81532
  CT_Any (CTree *k, CTree *e = (CTree*)0) { sons[0] = k; sons[1] = e; }
 
81533
  static const char *NodeId ();
 
81534
  const char *NodeName () const { return NodeId (); }
 
81535
  int Sons () const { return CTree::Sons (sons, 2); }
 
81536
  CTree *Son (int n) const { return CTree::Son (sons, 2, n); }
 
81537
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81538
    CTree::ReplaceSon (sons, 2, old_son, new_son);
 
81539
  }
 
81540
  int AnyType () const { return sons[0]->token ()->type (); }
 
81541
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
 
81542
};
 
81543
 
 
81544
 
 
81545
#line 81546 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81546
} // closed Puma
 
81547
class WinIfExists;
 
81548
class WinImportHandler;
 
81549
class WinMacros;
 
81550
class CMatchSyntax;
 
81551
class ExtGnu;
 
81552
class ExtAC;
 
81553
class ExtACBuilderCoupling;
 
81554
class ExtACSyntaxCoupling;
 
81555
class ExtACTree;
 
81556
class ExtACKeywords;
 
81557
class WinAsm;
 
81558
class WinDeclSpecs;
 
81559
class WinMemberExplSpec;
 
81560
class WinTypeKeywords;
 
81561
class PragmaOnceUnitState;
 
81562
class PragmaOnce;
 
81563
class CCExprResolve;
 
81564
class CExprResolve;
 
81565
namespace Puma {
 
81566
 
 
81567
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81568
class CT_AnyList : public CT_Any {
 
81569
#line 81570 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81570
  friend class ::WinIfExists;
 
81571
  friend class ::WinImportHandler;
 
81572
  friend class ::WinMacros;
 
81573
  friend class ::CMatchSyntax;
 
81574
  friend class ::ExtGnu;
 
81575
  friend class ::ExtAC;
 
81576
  friend class ::ExtACBuilderCoupling;
 
81577
  friend class ::ExtACSyntaxCoupling;
 
81578
  friend class ::ExtACTree;
 
81579
  friend class ::ExtACKeywords;
 
81580
  friend class ::WinAsm;
 
81581
  friend class ::WinDeclSpecs;
 
81582
  friend class ::WinMemberExplSpec;
 
81583
  friend class ::WinTypeKeywords;
 
81584
  friend class ::PragmaOnceUnitState;
 
81585
  friend class ::PragmaOnce;
 
81586
  friend class ::CCExprResolve;
 
81587
  friend class ::CExprResolve;
 
81588
 
 
81589
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81590
 
 
81591
public:
 
81592
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
 
81593
  static const char *NodeId ();
 
81594
  const char *NodeName () const { return NodeId (); }
 
81595
};
 
81596
 
 
81597
 
 
81598
#line 81599 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81599
} // closed Puma
 
81600
class WinIfExists;
 
81601
class WinImportHandler;
 
81602
class WinMacros;
 
81603
class CMatchSyntax;
 
81604
class ExtGnu;
 
81605
class ExtAC;
 
81606
class ExtACBuilderCoupling;
 
81607
class ExtACSyntaxCoupling;
 
81608
class ExtACTree;
 
81609
class ExtACKeywords;
 
81610
class WinAsm;
 
81611
class WinDeclSpecs;
 
81612
class WinMemberExplSpec;
 
81613
class WinTypeKeywords;
 
81614
class PragmaOnceUnitState;
 
81615
class PragmaOnce;
 
81616
class CCExprResolve;
 
81617
class CExprResolve;
 
81618
namespace Puma {
 
81619
 
 
81620
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81621
class CT_AnyExtension : public CTree, public CSemValue {
 
81622
#line 81623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81623
  friend class ::WinIfExists;
 
81624
  friend class ::WinImportHandler;
 
81625
  friend class ::WinMacros;
 
81626
  friend class ::CMatchSyntax;
 
81627
  friend class ::ExtGnu;
 
81628
  friend class ::ExtAC;
 
81629
  friend class ::ExtACBuilderCoupling;
 
81630
  friend class ::ExtACSyntaxCoupling;
 
81631
  friend class ::ExtACTree;
 
81632
  friend class ::ExtACKeywords;
 
81633
  friend class ::WinAsm;
 
81634
  friend class ::WinDeclSpecs;
 
81635
  friend class ::WinMemberExplSpec;
 
81636
  friend class ::WinTypeKeywords;
 
81637
  friend class ::PragmaOnceUnitState;
 
81638
  friend class ::PragmaOnce;
 
81639
  friend class ::CCExprResolve;
 
81640
  friend class ::CExprResolve;
 
81641
 
 
81642
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81643
 
 
81644
  CTree *sons[5]; // open, string, comma, cond, close
 
81645
 
 
81646
public:
 
81647
  CT_AnyExtension (CTree *o, CTree *n, CTree *co, CTree *c, CTree *cr) {
 
81648
    sons[0] = o; sons[1] = n; sons[2] = co; sons[3] = c; sons[4] = cr; 
 
81649
  }
 
81650
  static const char *NodeId ();
 
81651
  const char *NodeName () const { return NodeId (); }
 
81652
  int Sons () const { return CTree::Sons (sons, 5); }
 
81653
  CTree *Son (int n) const { return CTree::Son (sons, 5, n); }
 
81654
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81655
    CTree::ReplaceSon (sons, 5, old_son, new_son);
 
81656
  }
 
81657
  CTree *Condition () const { return sons[3]; }
 
81658
  CT_Token *String () const { return (CT_Token*)sons[1]; }
 
81659
  const char *Name () const { 
 
81660
    return value ? value->StrLiteral ()->String () : (const char*)0; }
 
81661
 
 
81662
  CExprValue *Value () const { return value; }
 
81663
  CSemValue *SemValue () const { return (CSemValue*)this; }
 
81664
};
 
81665
 
 
81666
 
 
81667
#line 81668 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81668
} // closed Puma
 
81669
class WinIfExists;
 
81670
class WinImportHandler;
 
81671
class WinMacros;
 
81672
class CMatchSyntax;
 
81673
class ExtGnu;
 
81674
class ExtAC;
 
81675
class ExtACBuilderCoupling;
 
81676
class ExtACSyntaxCoupling;
 
81677
class ExtACTree;
 
81678
class ExtACKeywords;
 
81679
class WinAsm;
 
81680
class WinDeclSpecs;
 
81681
class WinMemberExplSpec;
 
81682
class WinTypeKeywords;
 
81683
class PragmaOnceUnitState;
 
81684
class PragmaOnce;
 
81685
class CCExprResolve;
 
81686
class CExprResolve;
 
81687
namespace Puma {
 
81688
 
 
81689
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81690
class CT_AnyCondition : public CTree {
 
81691
#line 81692 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81692
  friend class ::WinIfExists;
 
81693
  friend class ::WinImportHandler;
 
81694
  friend class ::WinMacros;
 
81695
  friend class ::CMatchSyntax;
 
81696
  friend class ::ExtGnu;
 
81697
  friend class ::ExtAC;
 
81698
  friend class ::ExtACBuilderCoupling;
 
81699
  friend class ::ExtACSyntaxCoupling;
 
81700
  friend class ::ExtACTree;
 
81701
  friend class ::ExtACKeywords;
 
81702
  friend class ::WinAsm;
 
81703
  friend class ::WinDeclSpecs;
 
81704
  friend class ::WinMemberExplSpec;
 
81705
  friend class ::WinTypeKeywords;
 
81706
  friend class ::PragmaOnceUnitState;
 
81707
  friend class ::PragmaOnce;
 
81708
  friend class ::CCExprResolve;
 
81709
  friend class ::CExprResolve;
 
81710
 
 
81711
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81712
 
 
81713
  CTree *sons[3]; // arg1, arg2, arg3
 
81714
 
 
81715
public:
 
81716
  CT_AnyCondition (CTree *a1, CTree *a2 = (CTree*)0, CTree *a3 = (CTree*)0) {
 
81717
    sons[0] = a1; sons[1] = a2; sons[2] = a3; 
 
81718
  }
 
81719
  static const char *NodeId ();
 
81720
  const char *NodeName () const { return NodeId (); }
 
81721
  int Sons () const { return CTree::Sons (sons, 3); }
 
81722
  CTree *Son (int n) const { return CTree::Son (sons, 3, n); }
 
81723
  void ReplaceSon (CTree *old_son, CTree *new_son) { 
 
81724
    CTree::ReplaceSon (sons, 3, old_son, new_son);
 
81725
  }
 
81726
};
 
81727
 
 
81728
 
 
81729
} // namespace Puma
 
81730
 
 
81731
#endif /* __CTree_h__ */
 
81732
 
 
81733
#line 81734 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81734
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
81735
 
 
81736
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
81737
 
 
81738
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/WinCTree.h"
 
81739
namespace Puma {
 
81740
 
 
81741
 
 
81742
 
 
81743
#line 81744 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81744
} // closed Puma
 
81745
class WinIfExists;
 
81746
class WinImportHandler;
 
81747
class WinMacros;
 
81748
class CMatchSyntax;
 
81749
class ExtGnu;
 
81750
class ExtAC;
 
81751
class ExtACBuilderCoupling;
 
81752
class ExtACSyntaxCoupling;
 
81753
class ExtACTree;
 
81754
class ExtACKeywords;
 
81755
class WinAsm;
 
81756
class WinDeclSpecs;
 
81757
class WinMemberExplSpec;
 
81758
class WinTypeKeywords;
 
81759
class PragmaOnceUnitState;
 
81760
class PragmaOnce;
 
81761
class CCExprResolve;
 
81762
class CExprResolve;
 
81763
namespace Puma {
 
81764
 
 
81765
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/WinCTree.h"
 
81766
class CT_AsmBlock : public CT_Statement {
 
81767
#line 81768 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81768
  friend class ::WinIfExists;
 
81769
  friend class ::WinImportHandler;
 
81770
  friend class ::WinMacros;
 
81771
  friend class ::CMatchSyntax;
 
81772
  friend class ::ExtGnu;
 
81773
  friend class ::ExtAC;
 
81774
  friend class ::ExtACBuilderCoupling;
 
81775
  friend class ::ExtACSyntaxCoupling;
 
81776
  friend class ::ExtACTree;
 
81777
  friend class ::ExtACKeywords;
 
81778
  friend class ::WinAsm;
 
81779
  friend class ::WinDeclSpecs;
 
81780
  friend class ::WinMemberExplSpec;
 
81781
  friend class ::WinTypeKeywords;
 
81782
  friend class ::PragmaOnceUnitState;
 
81783
  friend class ::PragmaOnce;
 
81784
  friend class ::CCExprResolve;
 
81785
  friend class ::CExprResolve;
 
81786
 
 
81787
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/WinCTree.h"
 
81788
 
 
81789
  CTree *_key;
 
81790
  CTree *_begin;
 
81791
  CTree *_end;
 
81792
 
 
81793
public:
 
81794
  CT_AsmBlock (CTree *k, CTree *b, CTree *e) :
 
81795
    _key (k), _begin (b), _end (e) {}
 
81796
  static const char *NodeId ();
 
81797
  const char *NodeName () const { return NodeId (); }  
 
81798
  virtual int Sons () const { return 3; }
 
81799
  virtual CTree *Son (int n) const {
 
81800
    switch (n) {
 
81801
      case 0: return _key;
 
81802
      case 1: return _begin;
 
81803
      case 2: return _end;
 
81804
      default: return (CTree*)0;
 
81805
    }
 
81806
  }
 
81807
  virtual void ReplaceSon (CTree *old_son, CTree *new_son) {
 
81808
    if (old_son == _key) _key = new_son;
 
81809
    else if (old_son == _begin) _begin = new_son;
 
81810
    else if (old_son == _end) _end = new_son;
 
81811
  }
 
81812
};
 
81813
 
 
81814
 
 
81815
} // namespace Puma
 
81816
 
 
81817
#endif /* __win_c_tree_h__ */
 
81818
 
 
81819
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81820
namespace Puma {
 
81821
  class CCSyntax;
 
81822
  class CCBuilder;
 
81823
} // namespace Puma
 
81824
 
 
81825
 
 
81826
using namespace Puma;
 
81827
 
 
81828
namespace Puma {
 
81829
  
 
81830
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81831
 
 
81832
  
 
81833
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81834
 
 
81835
}
 
81836
 
 
81837
 
 
81838
#line 81839 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81839
class WinIfExists;
 
81840
class WinImportHandler;
 
81841
class WinMacros;
 
81842
class CMatchSyntax;
 
81843
class ExtGnu;
 
81844
class ExtAC;
 
81845
class ExtACBuilderCoupling;
 
81846
class ExtACSyntaxCoupling;
 
81847
class ExtACTree;
 
81848
class ExtACKeywords;
 
81849
class WinDeclSpecs;
 
81850
class WinMemberExplSpec;
 
81851
class WinTypeKeywords;
 
81852
class PragmaOnceUnitState;
 
81853
class PragmaOnce;
 
81854
class CCExprResolve;
 
81855
class CExprResolve;
 
81856
 
 
81857
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81858
class WinAsm {
 
81859
#line 81860 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81860
 
 
81861
public:
 
81862
  static WinAsm *aspectof () {
 
81863
    static WinAsm __instance;
 
81864
    return &__instance;
 
81865
  }
 
81866
  static WinAsm *aspectOf () {
 
81867
    return aspectof ();
 
81868
  }
 
81869
private:
 
81870
 
 
81871
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81872
 
 
81873
#line 81874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81874
  friend class ::WinIfExists;
 
81875
  friend class ::WinImportHandler;
 
81876
  friend class ::WinMacros;
 
81877
  friend class ::CMatchSyntax;
 
81878
  friend class ::ExtGnu;
 
81879
  friend class ::ExtAC;
 
81880
  friend class ::ExtACBuilderCoupling;
 
81881
  friend class ::ExtACSyntaxCoupling;
 
81882
  friend class ::ExtACTree;
 
81883
  friend class ::ExtACKeywords;
 
81884
  friend class ::WinDeclSpecs;
 
81885
  friend class ::WinMemberExplSpec;
 
81886
  friend class ::WinTypeKeywords;
 
81887
  friend class ::PragmaOnceUnitState;
 
81888
  friend class ::PragmaOnce;
 
81889
  friend class ::CCExprResolve;
 
81890
  friend class ::CExprResolve;
 
81891
 
 
81892
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81893
 
 
81894
  /********************************************************/
 
81895
  /* Visual C++ asm statement                             */
 
81896
  /********************************************************/
 
81897
 
 
81898
  // pointcut definitions
 
81899
  
 
81900
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81901
 
 
81902
  
 
81903
#line 49 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81904
 
 
81905
 
 
81906
  // extend the builder
 
81907
  
 
81908
#line 52 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81909
 
 
81910
 
 
81911
  // add rules to the syntax
 
81912
  
 
81913
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81914
 
 
81915
 
 
81916
  // let first parse asm_block() and then stmt() if failed
 
81917
  
 
81918
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81919
 
 
81920
public: template<class JoinPoint> void __a0_after 
 
81921
#line 58 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81922
 
 
81923
#line 58 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81924
(JoinPoint *tjp)
 
81925
#line 58 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81926
 {
 
81927
#line 81928 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81928
 
 
81929
  JoinPoint *&thisJoinPoint = tjp;
 
81930
 
 
81931
#line 58 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81932
 
 
81933
#line 81934 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81934
 
 
81935
  typedef typename JoinPoint::That __JP_That;
 
81936
  typedef typename JoinPoint::Target __JP_Target;
 
81937
  typedef typename JoinPoint::Result __JP_Result;
 
81938
 
 
81939
#line 58 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81940
 
 
81941
    CTree *&result = *(CTree**)thisJoinPoint->result ();
 
81942
    if (!result && tjp->that ()->asm_block ())
 
81943
      result = thisJoinPoint->that ()->builder().stmt ();
 
81944
  }
 
81945
#line 81946 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81946
 
 
81947
private:
 
81948
 
 
81949
#line 62 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81950
 
 
81951
 
 
81952
protected:
 
81953
  WinAsm () {}
 
81954
};
 
81955
#line 81956 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
81956
 
 
81957
namespace AC {
 
81958
  template <class JoinPoint>
 
81959
  inline void invoke_WinAsm_WinAsm_a0_after (JoinPoint *tjp) {
 
81960
    ::WinAsm::aspectof()->__a0_after (tjp);
 
81961
  }
 
81962
 
81963
 
 
81964
#line 66 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81965
 
 
81966
 
 
81967
 
 
81968
#line 72 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81969
 
 
81970
 
 
81971
 
 
81972
#line 76 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81973
 
 
81974
 
 
81975
 
 
81976
#line 133 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81977
 
 
81978
 
 
81979
 
 
81980
#line 138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81981
 
 
81982
 
 
81983
 
 
81984
#line 143 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
 
81985
 
 
81986
 
 
81987
 
 
81988
#endif /* __WinAsm__ */
 
81989
 
 
81990
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
69570
81991
// This file is part of PUMA.
69571
81992
// Copyright (C) 1999-2003  The PUMA developer team.
69572
81993
//                                                                
69598
82019
  class CTree;
69599
82020
} // namespace Puma
69600
82021
 
 
82022
 
 
82023
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
69601
82024
using namespace Puma;
69602
82025
 
69603
82026
namespace Puma {
69604
82027
  
 
82028
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82029
 
69605
82030
  
 
82031
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82032
 
69606
82033
}
69607
82034
 
 
82035
 
 
82036
#line 82037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
69608
82037
class WinIfExists;
69609
82038
class WinImportHandler;
69610
82039
class WinMacros;
69622
82051
class PragmaOnce;
69623
82052
class CCExprResolve;
69624
82053
class CExprResolve;
 
82054
 
 
82055
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
69625
82056
class WinDeclSpecs {
 
82057
#line 82058 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82058
 
69626
82059
public:
69627
82060
  static WinDeclSpecs *aspectof () {
69628
82061
    static WinDeclSpecs __instance;
69632
82065
    return aspectof ();
69633
82066
  }
69634
82067
private:
 
82068
 
 
82069
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82070
 
 
82071
#line 82072 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
69635
82072
  friend class ::WinIfExists;
69636
82073
  friend class ::WinImportHandler;
69637
82074
  friend class ::WinMacros;
69650
82087
  friend class ::CCExprResolve;
69651
82088
  friend class ::CExprResolve;
69652
82089
 
 
82090
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82091
 
69653
82092
  /********************************************************/
69654
82093
  /* Win declaration specifiers                           */
69655
82094
  /********************************************************/
69656
82095
  
69657
82096
  // pointcut definitions
69658
82097
  
69659
 
  
69660
 
 
69661
 
  
69662
 
  
 
82098
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82099
 
 
82100
  
 
82101
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82102
 
 
82103
 
 
82104
  
 
82105
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82106
 
 
82107
  
 
82108
#line 51 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82109
 
69663
82110
  
69664
82111
  // extended declaration specifiers
69665
82112
  
69666
 
public: template<class JoinPoint> void __a0_after (JoinPoint *tjp) {
 
82113
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82114
 
 
82115
public: template<class JoinPoint> void __a0_after 
 
82116
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82117
 
 
82118
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82119
(JoinPoint *tjp)
 
82120
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82121
 {
 
82122
#line 82123 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82123
 
69667
82124
  typedef typename JoinPoint::That __JP_That;
69668
82125
  typedef typename JoinPoint::Target __JP_Target;
69669
82126
  typedef typename JoinPoint::Result __JP_Result;
69670
82127
 
 
82128
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82129
 
69671
82130
    tjp->that ()->_misc_spec_1.set (TOK_CDECL);
69672
82131
    tjp->that ()->_misc_spec_1.set (TOK_STDCALL);
69673
82132
    tjp->that ()->_misc_spec_1.set (TOK_FASTCALL);
69674
82133
  }
 
82134
#line 82135 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82135
 
69675
82136
private:
69676
82137
 
 
82138
#line 59 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82139
 
69677
82140
  
69678
82141
  // extended cv qualifier
69679
82142
  
69680
 
public: template<class JoinPoint> void __a1_after (JoinPoint *tjp) {
 
82143
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82144
 
 
82145
public: template<class JoinPoint> void __a1_after 
 
82146
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82147
 
 
82148
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82149
(JoinPoint *tjp)
 
82150
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82151
 {
 
82152
#line 82153 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82153
 
69681
82154
  typedef typename JoinPoint::That __JP_That;
69682
82155
  typedef typename JoinPoint::Target __JP_Target;
69683
82156
  typedef typename JoinPoint::Result __JP_Result;
69684
82157
 
 
82158
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82159
 
69685
82160
    tjp->that ()->_cv_qual_1.set (TOK_CDECL);
69686
82161
    tjp->that ()->_cv_qual_1.set (TOK_STDCALL);
69687
82162
    tjp->that ()->_cv_qual_1.set (TOK_FASTCALL);
69688
82163
  }
 
82164
#line 82165 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82165
 
69689
82166
private:
69690
82167
 
 
82168
#line 67 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82169
 
69691
82170
 
69692
82171
  // let first parse the win declaration specifiers
69693
82172
  
69694
 
public: template<class JoinPoint> void __a2_around (JoinPoint *tjp) {
 
82173
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82174
 
 
82175
public: template<class JoinPoint> void __a2_around 
 
82176
#line 70 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82177
 
 
82178
#line 70 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82179
(JoinPoint *tjp)
 
82180
#line 70 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82181
 {
 
82182
#line 82183 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82183
 
69695
82184
  typedef typename JoinPoint::That __JP_That;
69696
82185
  typedef typename JoinPoint::Target __JP_Target;
69697
82186
  typedef typename JoinPoint::Result __JP_Result;
69698
82187
 
 
82188
#line 70 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82189
 
69699
82190
    CTree *&result = *(CTree**)tjp->result ();
69700
 
    if ((tjp->that ()->parse (&__JP_That::declarator_id) ||
 
82191
    if ((tjp->that ()->parse (&__JP_That
 
82192
#line 72 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82193
::declarator_id) ||
69701
82194
         (tjp->that ()->parse (TOK_OPEN_ROUND) && 
69702
 
          (tjp->that ()->parse (&__JP_That::win_decl_spec),
69703
 
           tjp->that ()->parse (&__JP_That::declarator)) &&
 
82195
          (tjp->that ()->parse (&__JP_That
 
82196
#line 74 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82197
::win_decl_spec),
 
82198
           tjp->that ()->parse (&__JP_That
 
82199
#line 75 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82200
::declarator)) &&
69704
82201
          tjp->that ()->parse (TOK_CLOSE_ROUND))) &&  
69705
82202
        tjp->that ()->opt (
69706
 
         tjp->that ()->seq (&__JP_That::direct_declarator1))) 
 
82203
         tjp->that ()->seq (&__JP_That
 
82204
#line 78 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82205
::direct_declarator1))) 
69707
82206
      result = tjp->that ()->builder ().direct_declarator ();
69708
82207
    else
69709
82208
      result = (CTree*)0;
69710
82209
  }
 
82210
#line 82211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82211
 
69711
82212
private:
69712
82213
 
 
82214
#line 82 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82215
 
69713
82216
 
69714
82217
  // let first parse the win declaration specifiers
69715
82218
  
69716
 
public: template<class JoinPoint> void __a3_around (JoinPoint *tjp) {
 
82219
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82220
 
 
82221
public: template<class JoinPoint> void __a3_around 
 
82222
#line 85 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82223
 
 
82224
#line 85 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82225
(JoinPoint *tjp)
 
82226
#line 85 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82227
 {
 
82228
#line 82229 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82229
 
69717
82230
  typedef typename JoinPoint::That __JP_That;
69718
82231
  typedef typename JoinPoint::Target __JP_Target;
69719
82232
  typedef typename JoinPoint::Result __JP_Result;
69720
82233
 
 
82234
#line 85 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82235
 
69721
82236
    CTree *&result = *(CTree**)tjp->result ();
69722
 
    if ((tjp->that ()->parse (&__JP_That::direct_abst_declarator1) ||
 
82237
    if ((tjp->that ()->parse (&__JP_That
 
82238
#line 87 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82239
::direct_abst_declarator1) ||
69723
82240
         (tjp->that ()->parse (TOK_OPEN_ROUND) && 
69724
 
          (tjp->that ()->parse (&__JP_That::win_decl_spec),
69725
 
           tjp->that ()->parse (&__JP_That::abst_declarator)) &&
 
82241
          (tjp->that ()->parse (&__JP_That
 
82242
#line 89 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82243
::win_decl_spec),
 
82244
           tjp->that ()->parse (&__JP_That
 
82245
#line 90 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82246
::abst_declarator)) &&
69726
82247
          tjp->that ()->parse (TOK_CLOSE_ROUND))) &&  
69727
82248
        tjp->that ()->opt (
69728
 
         tjp->that ()->seq (&__JP_That::direct_abst_declarator1)))
 
82249
         tjp->that ()->seq (&__JP_That
 
82250
#line 93 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82251
::direct_abst_declarator1)))
69729
82252
      result = tjp->that ()->semantic ().direct_abst_declarator ();
69730
82253
    else
69731
82254
      result = (CTree*)0;
69732
82255
  }
 
82256
#line 82257 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82257
 
69733
82258
private:
69734
82259
 
 
82260
#line 97 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82261
 
69735
82262
 
69736
82263
protected:
69737
82264
  WinDeclSpecs () {}
69738
82265
};
 
82266
#line 82267 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82267
 
69739
82268
namespace AC {
69740
82269
  template <class JoinPoint>
69741
82270
  inline void invoke_WinDeclSpecs_WinDeclSpecs_a0_after (JoinPoint *tjp) {
69755
82284
  }
69756
82285
69757
82286
 
69758
 
 
69759
 
 
69760
 
 
69761
 
 
69762
 
 
69763
 
 
69764
 
 
 
82287
#line 101 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82288
 
 
82289
 
 
82290
 
 
82291
#line 107 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82292
 
 
82293
 
 
82294
 
 
82295
#line 115 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82296
 
 
82297
 
 
82298
 
 
82299
#line 121 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
 
82300
 
 
82301
 
 
82302
 
 
82303
#line 125 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
69765
82304
 
69766
82305
 
69767
82306
#endif /* __WinDeclSpecs__ */
69768
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSyntax_h__
69769
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSyntax_h__
 
82307
 
 
82308
#line 8 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
 
82309
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSyntax_h__
 
82310
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSyntax_h__
 
82311
 
 
82312
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
69770
82313
// This file is part of PUMA.
69771
82314
// Copyright (C) 1999-2003  The PUMA developer team.
69772
82315
//                                                                
69791
82334
// Parser for the C programming language (C99)
69792
82335
 
69793
82336
 
 
82337
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
82338
 
 
82339
#line 82340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82340
 
69794
82341
#ifndef __ac_fwd_ExtGnu__
69795
82342
#define __ac_fwd_ExtGnu__
69796
82343
class ExtGnu;
69830
82377
}
69831
82378
#endif
69832
82379
 
69833
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
69834
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
82380
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
82381
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
69835
82382
#endif
69836
82383
 
69837
82384
#ifndef __ac_fwd_CMatchSyntax__
69893
82440
}
69894
82441
#endif
69895
82442
 
69896
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
69897
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
 
82443
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
 
82444
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
69898
82445
#endif
 
82446
 
 
82447
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
69899
82448
// This file is part of PUMA.
69900
82449
// Copyright (C) 1999-2003  The PUMA developer team.
69901
82450
//                                                                
69930
82479
class Config;
69931
82480
class CTree;
69932
82481
 
 
82482
 
 
82483
#line 82484 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
69933
82484
} // closed Puma
69934
82485
class WinIfExists;
69935
82486
class WinImportHandler;
69950
82501
class CCExprResolve;
69951
82502
class CExprResolve;
69952
82503
namespace Puma {
69953
 
class Syntax {  friend class ::WinIfExists;
 
82504
 
 
82505
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
82506
class Syntax {
 
82507
#line 82508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82508
  friend class ::WinIfExists;
69954
82509
  friend class ::WinImportHandler;
69955
82510
  friend class ::WinMacros;
69956
82511
  friend class ::CMatchSyntax;
69969
82524
  friend class ::CCExprResolve;
69970
82525
  friend class ::CExprResolve;
69971
82526
 
 
82527
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
82528
 
69972
82529
  Token *_problem_token;
69973
82530
  bool _have_error;
69974
82531
 
69979
82536
  TokenProvider *token_provider;
69980
82537
 
69981
82538
public: 
69982
 
  struct State : public TokenProvider::State {  friend class ::WinIfExists;
 
82539
  struct State : public TokenProvider::State {
 
82540
#line 82541 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82541
  friend class ::WinIfExists;
69983
82542
  friend class ::WinImportHandler;
69984
82543
  friend class ::WinMacros;
69985
82544
  friend class ::CMatchSyntax;
69998
82557
  friend class ::CCExprResolve;
69999
82558
  friend class ::CExprResolve;
70000
82559
 
 
82560
#line 46 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
82561
 
70001
82562
    State () {}
70002
82563
    State (int) {}
70003
82564
    State (const TokenProvider::State &s) : TokenProvider::State (s) {}
70011
82572
  CTree *run (TokenProvider &);
70012
82573
  template <class T> CTree *run (TokenProvider &, CTree *(T::*)());
70013
82574
  
 
82575
#line 82576 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82576
 
70014
82577
 
70015
82578
struct TJP__ZN4Puma6Syntax9configureERN4PumaE6Config_0 {
70016
82579
  typedef void Result;
70059
82622
  };
70060
82623
};
70061
82624
 
70062
 
virtual void configure (Config & arg0) {
 
82625
 
 
82626
#line 59 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
82627
virtual void configure (Config & arg0) 
 
82628
#line 82629 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82629
{
70063
82630
  void *args__ZN4Puma6Syntax9configureERN4PumaE6Config[] = { (void*)&arg0 };
70064
82631
  TJP__ZN4Puma6Syntax9configureERN4PumaE6Config_0 tjp;
70065
82632
  tjp._args = args__ZN4Puma6Syntax9configureERN4PumaE6Config;
70068
82635
this->__exec_old_configure(arg0);
70069
82636
 
70070
82637
}
70071
 
inline void __exec_old_configure(::Puma::Config & ){}
 
82638
inline void __exec_old_configure(::Puma::Config & )
 
82639
#line 59 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Syntax.h"
 
82640
{}
70072
82641
  TokenProvider *provider () const { return token_provider; }
70073
82642
  Token *problem () const;
70074
82643
  bool error () const;
70277
82846
 
70278
82847
#endif /* __Syntax_h__ */
70279
82848
 
 
82849
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
82850
 
 
82851
#line 82852 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82852
 
70280
82853
#ifndef __ac_fwd_ExtACBuilderCoupling__
70281
82854
#define __ac_fwd_ExtACBuilderCoupling__
70282
82855
class ExtACBuilderCoupling;
70286
82859
}
70287
82860
#endif
70288
82861
 
70289
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
70290
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
 
82862
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
 
82863
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
70291
82864
#endif
 
82865
 
 
82866
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
82867
 
 
82868
#line 82869 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82869
 
 
82870
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
70292
82871
// This file is part of PUMA.
70293
82872
// Copyright (C) 1999-2003  The PUMA developer team.
70294
82873
//                                                                
70317
82896
// new C and CC Builder member functions
70318
82897
 
70319
82898
 
 
82899
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82900
 
70320
82901
 
70321
82902
// extension of existing builder functions
70322
82903
 
 
82904
 
 
82905
#line 82906 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
70323
82906
class WinIfExists;
70324
82907
class WinImportHandler;
70325
82908
class WinMacros;
70337
82920
class PragmaOnce;
70338
82921
class CCExprResolve;
70339
82922
class CExprResolve;
 
82923
 
 
82924
#line 46 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
70340
82925
class ExtACBuilderCoupling {
 
82926
#line 82927 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82927
 
70341
82928
public:
70342
82929
  static ExtACBuilderCoupling *aspectof () {
70343
82930
    static ExtACBuilderCoupling __instance;
70347
82934
    return aspectof ();
70348
82935
  }
70349
82936
private:
 
82937
 
 
82938
#line 46 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82939
 
 
82940
#line 82941 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
70350
82941
  friend class ::WinIfExists;
70351
82942
  friend class ::WinImportHandler;
70352
82943
  friend class ::WinMacros;
70365
82956
  friend class ::CCExprResolve;
70366
82957
  friend class ::CExprResolve;
70367
82958
 
70368
 
  
70369
 
  
 
82959
#line 46 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82960
 
 
82961
  
 
82962
  
 
82963
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82964
 
70370
82965
  
70371
82966
  // bind the slice
70372
82967
  
 
82968
#line 51 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82969
 
70373
82970
  
70374
82971
  // extension for member_decl
70375
82972
  
70376
 
public: template<class JoinPoint> void __a0_around (JoinPoint *tjp) {
 
82973
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82974
 
 
82975
public: template<class JoinPoint> void __a0_around 
 
82976
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82977
 
 
82978
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82979
(JoinPoint *tjp)
 
82980
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82981
 {
 
82982
#line 82983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82983
 
70377
82984
  typedef typename JoinPoint::That __JP_That;
70378
82985
  typedef typename JoinPoint::Target __JP_Target;
70379
82986
  typedef typename JoinPoint::Result __JP_Result;
70380
82987
 
 
82988
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
82989
 
70381
82990
    // 1: advice_decl
70382
82991
    // 1: pointcut_decl
70383
82992
    if (tjp->that ()->is_advice_decl ())
70385
82994
    else
70386
82995
      tjp->proceed ();
70387
82996
  }
 
82997
#line 82998 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
82998
 
70388
82999
private:
70389
83000
 
 
83001
#line 62 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
83002
 
70390
83003
};
 
83004
#line 83005 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83005
 
70391
83006
namespace AC {
70392
83007
  template <class JoinPoint>
70393
83008
  inline void invoke_ExtACBuilderCoupling_ExtACBuilderCoupling_a0_around (JoinPoint *tjp) {
70395
83010
  }
70396
83011
70397
83012
 
 
83013
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
 
83014
 
70398
83015
 
70399
83016
#endif /* __ext_ac_builder_h_ah__ */
70400
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CBuilder_h__
70401
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
83017
 
 
83018
#line 8 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
83019
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
83020
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
83021
 
 
83022
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
70402
83023
// This file is part of PUMA.
70403
83024
// Copyright (C) 1999-2003  The PUMA developer team.
70404
83025
//                                                                
70420
83041
#ifndef __CBuilder_h__
70421
83042
#define __CBuilder_h__
70422
83043
 
 
83044
 
 
83045
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
70423
83046
namespace Puma {
70424
83047
 
70425
83048
 
 
83049
 
 
83050
#line 83051 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
70426
83051
} // closed Puma
70427
83052
class WinIfExists;
70428
83053
class WinImportHandler;
70443
83068
class CCExprResolve;
70444
83069
class CExprResolve;
70445
83070
namespace Puma {
70446
 
class CBuilder : public Builder {  friend class ::WinIfExists;
 
83071
 
 
83072
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
83073
class CBuilder : public Builder {
 
83074
#line 83075 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83075
  friend class ::WinIfExists;
70447
83076
  friend class ::WinImportHandler;
70448
83077
  friend class ::WinMacros;
70449
83078
  friend class ::CMatchSyntax;
70462
83091
  friend class ::CCExprResolve;
70463
83092
  friend class ::CExprResolve;
70464
83093
 
 
83094
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
83095
 
70465
83096
public:
70466
83097
  CBuilder () {}
70467
83098
 
70575
83206
  virtual CTree *class_head ();
70576
83207
  virtual CTree *class_key ();
70577
83208
  virtual CTree *member_spec ();
70578
 
  public: inline ::Puma::CTree * __exec_old_member_decl();
 
83209
  
 
83210
#line 83211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83211
public: inline ::Puma::CTree * __exec_old_member_decl();
 
83212
 
 
83213
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
70579
83214
virtual CTree *member_decl ();
70580
83215
  virtual CTree *member_declarator_list ();
70581
83216
  virtual CTree *member_declarator ();
70586
83221
  CTree *prim_ds ();
70587
83222
   private:
70588
83223
  typedef CBuilder CMatchCBuilder;
 
83224
 
 
83225
#line 366 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
70589
83226
 public :
70590
83227
virtual CTree * any ( ) ;
70591
83228
virtual CTree * any_list ( ) ;
70599
83236
virtual CTree * wc_match_list ( ) ;
70600
83237
virtual CTree * wc_element ( ) ;  private:
70601
83238
  typedef CBuilder ExtGnuAsmBuilder;
 
83239
 
 
83240
#line 336 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
70602
83241
 public :
70603
83242
CTree * gnu_asm_def ( ) ;
70604
83243
CTree * gnu_asm_operands ( ) ;
70605
83244
CTree * gnu_asm_operand ( ) ;
70606
83245
CTree * gnu_asm_clobbers ( ) ;  private:
70607
83246
  typedef CBuilder ExtGnuStmtExprsBuilder;
 
83247
 
 
83248
#line 376 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
70608
83249
 public :
70609
83250
CTree * gnu_statement_expr ( ) ;  private:
70610
83251
  typedef CBuilder ExtGnuTypeofBuilder;
 
83252
 
 
83253
#line 482 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
70611
83254
 public :
70612
83255
CTree * gnu_typeof ( ) ;  private:
70613
83256
  typedef CBuilder ExtACBuilder;
 
83257
 
 
83258
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
70614
83259
 bool is_advice_decl ( ) const ;
70615
83260
public :
70616
83261
virtual CTree * advice_decl ( ) ;
70625
83270
virtual CTree * pointcut_expr ( ) ;
70626
83271
virtual CTree * intro ( ) ;  private:
70627
83272
  typedef CBuilder WinAsmBuilder;
 
83273
 
 
83274
#line 136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
70628
83275
 public :
70629
83276
virtual CTree * asm_block ( ) ;  private:
70630
83277
  typedef CBuilder WinDeclSpecsBuilder;
 
83278
 
 
83279
#line 118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
70631
83280
 public :
70632
83281
 
70633
 
virtual CTree * win_decl_spec ( ) ;};
 
83282
virtual CTree * win_decl_spec ( ) ;
 
83283
#line 149 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
83284
};
70634
83285
 
70635
83286
 
70636
83287
} // namespace Puma
70637
83288
 
70638
83289
#endif /* __CBuilder_h__ */
70639
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
83290
 
 
83291
#line 83292 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83292
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
83293
 
 
83294
#line 154 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
83295
 
 
83296
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
83297
 
 
83298
#line 83299 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
70640
83299
 
70641
83300
#ifndef __ac_fwd_ExtGnu__
70642
83301
#define __ac_fwd_ExtGnu__
70677
83336
}
70678
83337
#endif
70679
83338
 
70680
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
70681
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
83339
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
83340
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
70682
83341
#endif
70683
83342
 
70684
83343
#ifndef __ac_fwd_ExtAC__
70710
83369
}
70711
83370
#endif
70712
83371
 
70713
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
70714
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
 
83372
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
 
83373
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
70715
83374
#endif
70716
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemantic_h__
70717
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
83375
 
 
83376
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
83377
 
 
83378
#line 83379 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83379
 
 
83380
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
83381
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
83382
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
83383
 
 
83384
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
70718
83385
// This file is part of PUMA.
70719
83386
// Copyright (C) 1999-2003  The PUMA developer team.
70720
83387
//                                                                
70736
83403
#ifndef __CSemantic_h__
70737
83404
#define __CSemantic_h__
70738
83405
 
 
83406
 
 
83407
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Semantic.h"
70739
83408
// This file is part of PUMA.
70740
83409
// Copyright (C) 1999-2003  The PUMA developer team.
70741
83410
//                                                                
70758
83427
#define __Semantic_h__
70759
83428
 
70760
83429
 
 
83430
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
83431
 
 
83432
#line 83433 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83433
 
70761
83434
#ifndef __ac_fwd_ExtAC__
70762
83435
#define __ac_fwd_ExtAC__
70763
83436
class ExtAC;
70787
83460
}
70788
83461
#endif
70789
83462
 
70790
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
70791
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
 
83463
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
 
83464
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
70792
83465
#endif
70793
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
70794
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
83466
 
 
83467
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
83468
 
 
83469
#line 83470 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83470
 
 
83471
#line 4 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
83472
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
83473
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
83474
 
 
83475
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
70795
83476
// This file is part of PUMA.
70796
83477
// Copyright (C) 1999-2003  The PUMA developer team.
70797
83478
//                                                                
70814
83495
#define __CClassDatabase_h__
70815
83496
 
70816
83497
 
 
83498
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
83499
 
 
83500
#line 83501 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83501
 
70817
83502
#ifndef __ac_fwd_ExtACKeywords__
70818
83503
#define __ac_fwd_ExtACKeywords__
70819
83504
class ExtACKeywords;
70827
83512
}
70828
83513
#endif
70829
83514
 
70830
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
70831
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
83515
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
83516
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
70832
83517
#endif
 
83518
 
 
83519
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
70833
83520
// This file is part of PUMA.
70834
83521
// Copyright (C) 1999-2003  The PUMA developer team.
70835
83522
//                                                                
70864
83551
class Source;
70865
83552
class CTypeInfo;
70866
83553
 
 
83554
 
 
83555
#line 83556 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
70867
83556
} // closed Puma
70868
83557
class WinIfExists;
70869
83558
class WinImportHandler;
70884
83573
class CCExprResolve;
70885
83574
class CExprResolve;
70886
83575
namespace Puma {
70887
 
class CProject : public Project {  friend class ::WinIfExists;
 
83576
 
 
83577
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
83578
class CProject : public Project {
 
83579
#line 83580 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83580
  friend class ::WinIfExists;
70888
83581
  friend class ::WinImportHandler;
70889
83582
  friend class ::WinMacros;
70890
83583
  friend class ::CMatchSyntax;
70903
83596
  friend class ::CCExprResolve;
70904
83597
  friend class ::CExprResolve;
70905
83598
 
 
83599
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
83600
 
70906
83601
  Config _config;
70907
83602
  CScanner _scanner;
70908
83603
 
70936
83631
 
70937
83632
  // Scan the file `file' or the source if given. When
70938
83633
  // scanning a source the resulting unit gets the name `file'.
70939
 
  public: inline ::Puma::Unit * __exec_old_scanFile(const char * file,::Puma::Source * ,bool isFile);
 
83634
  
 
83635
#line 83636 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83636
public: inline ::Puma::Unit * __exec_old_scanFile(const char * file,::Puma::Source * ,bool isFile);
 
83637
 
 
83638
#line 69 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
70940
83639
virtual Unit *scanFile (const char *file, Source * = (Source*)0, 
70941
83640
                          bool isFile = true);
70942
83641
        
70965
83664
} // namespace Puma
70966
83665
 
70967
83666
#endif /* __CProject_h__ */
 
83667
 
 
83668
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
70968
83669
using namespace std;
70969
83670
 
70970
83671
namespace Puma {
70987
83688
/** \class CClassDatabase CClassDatabase.h Puma/infos/CClassDatabase.h
70988
83689
 *  A CClassDatabase object is a database of all semantic objects
70989
83690
 *  (infos) of a project. */
 
83691
 
 
83692
#line 83693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
70990
83693
} // closed Puma
70991
83694
class WinIfExists;
70992
83695
class WinImportHandler;
71007
83710
class CCExprResolve;
71008
83711
class CExprResolve;
71009
83712
namespace Puma {
71010
 
class CClassDatabase  :public ACClassDatabase {  friend class ::WinIfExists;
 
83713
 
 
83714
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
83715
class CClassDatabase  :public ACClassDatabase {
 
83716
#line 83717 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83717
  friend class ::WinIfExists;
71011
83718
  friend class ::WinImportHandler;
71012
83719
  friend class ::WinMacros;
71013
83720
  friend class ::CMatchSyntax;
71026
83733
  friend class ::CCExprResolve;
71027
83734
  friend class ::CExprResolve;
71028
83735
 
 
83736
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
83737
 
71029
83738
  
71030
83739
  Array<CObjectInfo*> _Classes;   // index of classes
71031
83740
  Array<CObjectInfo*> _Unions;    // index of unions
71115
83824
   *  tree corresponding to the nesting of the semantic objects.
71116
83825
   *  \param out The output stream to dump to.
71117
83826
   *  \param depth The max. depth in the tree to be dumped. */
71118
 
  public: inline void __exec_old_Dump(::std::ostream & out,int depth) const;
 
83827
  
 
83828
#line 83829 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83829
public: inline void __exec_old_Dump(::std::ostream & out,int depth) const;
 
83830
 
 
83831
#line 137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
71119
83832
void Dump (ostream &out, int depth = 0) const;
71120
83833
 
71121
83834
  /** Get the project info delivered to the constructor of the database. */
71178
83891
} // namespace Puma
71179
83892
 
71180
83893
#endif /* __CClassDatabase_h__ */
71181
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
83894
 
 
83895
#line 83896 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83896
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
83897
 
 
83898
#line 198 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
83899
 
 
83900
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Semantic.h"
71182
83901
namespace Puma {
71183
83902
 
71184
83903
 
71193
83912
 
71194
83913
/*DEBUG*/extern int TRACE_SCOPES;
71195
83914
 
 
83915
 
 
83916
#line 83917 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
71196
83917
} // closed Puma
71197
83918
class WinIfExists;
71198
83919
class WinImportHandler;
71213
83934
class CCExprResolve;
71214
83935
class CExprResolve;
71215
83936
namespace Puma {
71216
 
class Semantic : public PtrStack<CObjectInfo> {  friend class ::WinIfExists;
 
83937
 
 
83938
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Semantic.h"
 
83939
class Semantic : public PtrStack<CObjectInfo> {
 
83940
#line 83941 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
83941
  friend class ::WinIfExists;
71217
83942
  friend class ::WinImportHandler;
71218
83943
  friend class ::WinMacros;
71219
83944
  friend class ::CMatchSyntax;
71232
83957
  friend class ::CCExprResolve;
71233
83958
  friend class ::CExprResolve;
71234
83959
 
 
83960
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/Semantic.h"
 
83961
 
71235
83962
protected:
71236
83963
  CClassDatabase *_db;
71237
83964
  CFileInfo *_file;
71326
84053
 
71327
84054
#endif /* __Semantic_h__ */
71328
84055
 
 
84056
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
84057
 
 
84058
#line 84059 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84059
 
71329
84060
#ifndef __ac_fwd_ExtACBuilderCoupling__
71330
84061
#define __ac_fwd_ExtACBuilderCoupling__
71331
84062
class ExtACBuilderCoupling;
71335
84066
}
71336
84067
#endif
71337
84068
 
71338
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
71339
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
 
84069
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
 
84070
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
71340
84071
#endif
71341
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CBuilder_h__
71342
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
84072
 
 
84073
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
84074
 
 
84075
#line 84076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84076
 
 
84077
#line 8 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
84078
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
84079
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
84080
 
 
84081
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
71343
84082
// This file is part of PUMA.
71344
84083
// Copyright (C) 1999-2003  The PUMA developer team.
71345
84084
//                                                                
71366
84105
namespace Puma {
71367
84106
 
71368
84107
 
 
84108
 
 
84109
#line 84110 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
71369
84110
} // closed Puma
71370
84111
class WinIfExists;
71371
84112
class WinImportHandler;
71386
84127
class CCExprResolve;
71387
84128
class CExprResolve;
71388
84129
namespace Puma {
71389
 
class CBuilder : public Builder {  friend class ::WinIfExists;
 
84130
 
 
84131
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
84132
class CBuilder : public Builder {
 
84133
#line 84134 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84134
  friend class ::WinIfExists;
71390
84135
  friend class ::WinImportHandler;
71391
84136
  friend class ::WinMacros;
71392
84137
  friend class ::CMatchSyntax;
71405
84150
  friend class ::CCExprResolve;
71406
84151
  friend class ::CExprResolve;
71407
84152
 
 
84153
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
84154
 
71408
84155
public:
71409
84156
  CBuilder () {}
71410
84157
 
71518
84265
  virtual CTree *class_head ();
71519
84266
  virtual CTree *class_key ();
71520
84267
  virtual CTree *member_spec ();
71521
 
  public: inline ::Puma::CTree * __exec_old_member_decl();
 
84268
  
 
84269
#line 84270 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84270
public: inline ::Puma::CTree * __exec_old_member_decl();
 
84271
 
 
84272
#line 141 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
71522
84273
virtual CTree *member_decl ();
71523
84274
  virtual CTree *member_declarator_list ();
71524
84275
  virtual CTree *member_declarator ();
71529
84280
  CTree *prim_ds ();
71530
84281
   private:
71531
84282
  typedef CBuilder CMatchCBuilder;
 
84283
 
 
84284
#line 366 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
71532
84285
 public :
71533
84286
virtual CTree * any ( ) ;
71534
84287
virtual CTree * any_list ( ) ;
71542
84295
virtual CTree * wc_match_list ( ) ;
71543
84296
virtual CTree * wc_element ( ) ;  private:
71544
84297
  typedef CBuilder ExtGnuAsmBuilder;
 
84298
 
 
84299
#line 336 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
71545
84300
 public :
71546
84301
CTree * gnu_asm_def ( ) ;
71547
84302
CTree * gnu_asm_operands ( ) ;
71548
84303
CTree * gnu_asm_operand ( ) ;
71549
84304
CTree * gnu_asm_clobbers ( ) ;  private:
71550
84305
  typedef CBuilder ExtGnuStmtExprsBuilder;
 
84306
 
 
84307
#line 376 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
71551
84308
 public :
71552
84309
CTree * gnu_statement_expr ( ) ;  private:
71553
84310
  typedef CBuilder ExtGnuTypeofBuilder;
 
84311
 
 
84312
#line 482 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
71554
84313
 public :
71555
84314
CTree * gnu_typeof ( ) ;  private:
71556
84315
  typedef CBuilder ExtACBuilder;
 
84316
 
 
84317
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACBuilderH.ah"
71557
84318
 bool is_advice_decl ( ) const ;
71558
84319
public :
71559
84320
virtual CTree * advice_decl ( ) ;
71568
84329
virtual CTree * pointcut_expr ( ) ;
71569
84330
virtual CTree * intro ( ) ;  private:
71570
84331
  typedef CBuilder WinAsmBuilder;
 
84332
 
 
84333
#line 136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
71571
84334
 public :
71572
84335
virtual CTree * asm_block ( ) ;  private:
71573
84336
  typedef CBuilder WinDeclSpecsBuilder;
 
84337
 
 
84338
#line 118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
71574
84339
 public :
71575
84340
 
71576
 
virtual CTree * win_decl_spec ( ) ;};
 
84341
virtual CTree * win_decl_spec ( ) ;
 
84342
#line 149 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
84343
};
71577
84344
 
71578
84345
 
71579
84346
} // namespace Puma
71580
84347
 
71581
84348
#endif /* __CBuilder_h__ */
71582
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
84349
 
 
84350
#line 84351 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84351
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CBuilder_h__
 
84352
 
 
84353
#line 154 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CBuilder.h"
 
84354
 
 
84355
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84356
 
 
84357
#line 84358 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
71583
84358
 
71584
84359
#ifndef __ac_fwd_ExtACTree__
71585
84360
#define __ac_fwd_ExtACTree__
71592
84367
}
71593
84368
#endif
71594
84369
 
71595
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
71596
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
84370
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
84371
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
71597
84372
#endif
71598
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
71599
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
84373
 
 
84374
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84375
 
 
84376
#line 84377 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84377
 
 
84378
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84379
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
84380
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
84381
 
 
84382
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
71600
84383
// This file is part of PUMA.
71601
84384
// Copyright (C) 1999-2003  The PUMA developer team.
71602
84385
//                                                                
71778
84561
/*                                                                           */
71779
84562
/*****************************************************************************/
71780
84563
 
 
84564
 
 
84565
#line 84566 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
71781
84566
} // closed Puma
71782
84567
class WinIfExists;
71783
84568
class WinImportHandler;
71798
84583
class CCExprResolve;
71799
84584
class CExprResolve;
71800
84585
namespace Puma {
71801
 
class CTree {  friend class ::WinIfExists;
 
84586
 
 
84587
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84588
class CTree {
 
84589
#line 84590 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84590
  friend class ::WinIfExists;
71802
84591
  friend class ::WinImportHandler;
71803
84592
  friend class ::WinMacros;
71804
84593
  friend class ::CMatchSyntax;
71817
84606
  friend class ::CCExprResolve;
71818
84607
  friend class ::CExprResolve;
71819
84608
 
 
84609
#line 182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84610
 
71820
84611
public:
71821
84612
  /*DEBUG*/static int alloc;
71822
84613
  /*DEBUG*/static int release;
71852
84643
  virtual CT_Declarator *IsDeclarator () { return 0; }
71853
84644
   private:
71854
84645
  typedef CTree CCExprResolveCTree;
 
84646
 
 
84647
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
71855
84648
 public :
71856
84649
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
71857
84650
  typedef CTree CExprResolveCTree;
 
84651
 
 
84652
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
71858
84653
 public :
71859
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
71860
 
 
 
84654
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
84655
#line 216 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84656
};
 
84657
 
 
84658
 
 
84659
#line 84660 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
71861
84660
} // closed Puma
71862
84661
class WinIfExists;
71863
84662
class WinImportHandler;
71878
84677
class CCExprResolve;
71879
84678
class CExprResolve;
71880
84679
namespace Puma {
71881
 
class CT_Error : public CTree {  friend class ::WinIfExists;
 
84680
 
 
84681
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84682
class CT_Error : public CTree {
 
84683
#line 84684 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84684
  friend class ::WinIfExists;
71882
84685
  friend class ::WinImportHandler;
71883
84686
  friend class ::WinMacros;
71884
84687
  friend class ::CMatchSyntax;
71897
84700
  friend class ::CCExprResolve;
71898
84701
  friend class ::CExprResolve;
71899
84702
 
 
84703
#line 218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84704
 
71900
84705
public:
71901
84706
  static const char *NodeId ();
71902
84707
  const char *NodeName () const { return NodeId (); }
71903
84708
  int Sons () const { return 0; }
71904
84709
};
71905
84710
 
 
84711
 
 
84712
#line 84713 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
71906
84713
} // closed Puma
71907
84714
class WinIfExists;
71908
84715
class WinImportHandler;
71923
84730
class CCExprResolve;
71924
84731
class CExprResolve;
71925
84732
namespace Puma {
71926
 
class CT_Token : public CTree {  friend class ::WinIfExists;
 
84733
 
 
84734
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84735
class CT_Token : public CTree {
 
84736
#line 84737 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84737
  friend class ::WinIfExists;
71927
84738
  friend class ::WinImportHandler;
71928
84739
  friend class ::WinMacros;
71929
84740
  friend class ::CMatchSyntax;
71942
84753
  friend class ::CCExprResolve;
71943
84754
  friend class ::CExprResolve;
71944
84755
 
 
84756
#line 225 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84757
 
71945
84758
  Token *_token;
71946
84759
  unsigned long int _number;
71947
84760
  
71968
84781
/*                                                                           */
71969
84782
/*****************************************************************************/
71970
84783
 
 
84784
 
 
84785
#line 84786 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
71971
84786
} // closed Puma
71972
84787
class WinIfExists;
71973
84788
class WinImportHandler;
71988
84803
class CCExprResolve;
71989
84804
class CExprResolve;
71990
84805
namespace Puma {
71991
 
class CT_List : public CTree {  friend class ::WinIfExists;
 
84806
 
 
84807
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84808
class CT_List : public CTree {
 
84809
#line 84810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84810
  friend class ::WinIfExists;
71992
84811
  friend class ::WinImportHandler;
71993
84812
  friend class ::WinMacros;
71994
84813
  friend class ::CMatchSyntax;
72007
84826
  friend class ::CCExprResolve;
72008
84827
  friend class ::CExprResolve;
72009
84828
 
 
84829
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84830
 
72010
84831
  Array<CTree*> _sons;
72011
84832
  int _properties;
72012
84833
 
72045
84866
   { if (idx < Sons ()) _sons.remove (idx); }
72046
84867
};
72047
84868
 
 
84869
 
 
84870
#line 84871 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72048
84871
} // closed Puma
72049
84872
class WinIfExists;
72050
84873
class WinImportHandler;
72065
84888
class CCExprResolve;
72066
84889
class CExprResolve;
72067
84890
namespace Puma {
72068
 
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
84891
 
 
84892
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84893
class CT_ExprList : public CT_List, public CSemValue, public CSemObject {
 
84894
#line 84895 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84895
  friend class ::WinIfExists;
72069
84896
  friend class ::WinImportHandler;
72070
84897
  friend class ::WinMacros;
72071
84898
  friend class ::CMatchSyntax;
72084
84911
  friend class ::CCExprResolve;
72085
84912
  friend class ::CExprResolve;
72086
84913
 
 
84914
#line 291 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84915
 
72087
84916
public:
72088
84917
  CT_ExprList () { AddProperties (SEPARATORS); }
72089
84918
  static const char *NodeId ();
72095
84924
  CSemObject *SemObject () const { return (CSemObject*)this; }
72096
84925
};
72097
84926
 
 
84927
 
 
84928
#line 84929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72098
84929
} // closed Puma
72099
84930
class WinIfExists;
72100
84931
class WinImportHandler;
72115
84946
class CCExprResolve;
72116
84947
class CExprResolve;
72117
84948
namespace Puma {
72118
 
class CT_DeclaratorList : public CT_List {  friend class ::WinIfExists;
 
84949
 
 
84950
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84951
class CT_DeclaratorList : public CT_List {
 
84952
#line 84953 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
84953
  friend class ::WinIfExists;
72119
84954
  friend class ::WinImportHandler;
72120
84955
  friend class ::WinMacros;
72121
84956
  friend class ::CMatchSyntax;
72134
84969
  friend class ::CCExprResolve;
72135
84970
  friend class ::CExprResolve;
72136
84971
 
 
84972
#line 303 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
84973
 
72137
84974
public:
72138
84975
  static const char *NodeId ();
72139
84976
  const char *NodeName () const { return NodeId (); }
72140
84977
};
72141
84978
 
 
84979
 
 
84980
#line 84981 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72142
84981
} // closed Puma
72143
84982
class WinIfExists;
72144
84983
class WinImportHandler;
72159
84998
class CCExprResolve;
72160
84999
class CExprResolve;
72161
85000
namespace Puma {
72162
 
class CT_EnumeratorList : public CT_List {  friend class ::WinIfExists;
 
85001
 
 
85002
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85003
class CT_EnumeratorList : public CT_List {
 
85004
#line 85005 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85005
  friend class ::WinIfExists;
72163
85006
  friend class ::WinImportHandler;
72164
85007
  friend class ::WinMacros;
72165
85008
  friend class ::CMatchSyntax;
72178
85021
  friend class ::CCExprResolve;
72179
85022
  friend class ::CExprResolve;
72180
85023
 
 
85024
#line 309 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85025
 
72181
85026
public:
72182
85027
  CT_EnumeratorList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
72183
85028
  static const char *NodeId ();
72184
85029
  const char *NodeName () const { return NodeId (); }
72185
85030
};
72186
85031
   
 
85032
 
 
85033
#line 85034 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72187
85034
} // closed Puma
72188
85035
class WinIfExists;
72189
85036
class WinImportHandler;
72204
85051
class CCExprResolve;
72205
85052
class CExprResolve;
72206
85053
namespace Puma {
72207
 
class CT_DeclList : public CT_List {  friend class ::WinIfExists;
 
85054
 
 
85055
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85056
class CT_DeclList : public CT_List {
 
85057
#line 85058 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85058
  friend class ::WinIfExists;
72208
85059
  friend class ::WinImportHandler;
72209
85060
  friend class ::WinMacros;
72210
85061
  friend class ::CMatchSyntax;
72223
85074
  friend class ::CCExprResolve;
72224
85075
  friend class ::CExprResolve;
72225
85076
 
 
85077
#line 316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85078
 
72226
85079
public:
72227
85080
  CT_DeclList (int size = 20, int incr = 20) : CT_List (size, incr) {}
72228
85081
  static const char *NodeId ();
72230
85083
  void Linkage (CT_LinkageSpec *l);
72231
85084
};
72232
85085
 
 
85086
 
 
85087
#line 85088 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72233
85088
} // closed Puma
72234
85089
class WinIfExists;
72235
85090
class WinImportHandler;
72250
85105
class CCExprResolve;
72251
85106
class CExprResolve;
72252
85107
namespace Puma {
72253
 
class CT_DeclSpecSeq : public CT_List {  friend class ::WinIfExists;
 
85108
 
 
85109
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85110
class CT_DeclSpecSeq : public CT_List {
 
85111
#line 85112 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85112
  friend class ::WinIfExists;
72254
85113
  friend class ::WinImportHandler;
72255
85114
  friend class ::WinMacros;
72256
85115
  friend class ::CMatchSyntax;
72269
85128
  friend class ::CCExprResolve;
72270
85129
  friend class ::CExprResolve;
72271
85130
 
 
85131
#line 324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85132
 
72272
85133
public:
72273
85134
  static const char *NodeId ();
72274
85135
  const char *NodeName () const { return NodeId (); }
72275
85136
};
72276
85137
 
 
85138
 
 
85139
#line 85140 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72277
85140
} // closed Puma
72278
85141
class WinIfExists;
72279
85142
class WinImportHandler;
72294
85157
class CCExprResolve;
72295
85158
class CExprResolve;
72296
85159
namespace Puma {
72297
 
class CT_CmpdStmt : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
85160
 
 
85161
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85162
class CT_CmpdStmt : public CT_List, public CSemScope {
 
85163
#line 85164 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85164
  friend class ::WinIfExists;
72298
85165
  friend class ::WinImportHandler;
72299
85166
  friend class ::WinMacros;
72300
85167
  friend class ::CMatchSyntax;
72313
85180
  friend class ::CCExprResolve;
72314
85181
  friend class ::CExprResolve;
72315
85182
 
 
85183
#line 330 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85184
 
72316
85185
public:
72317
85186
  CT_CmpdStmt () { AddProperties (OPEN_CLOSE); }
72318
85187
  static const char *NodeId ();
72319
85188
  const char *NodeName () const { return NodeId (); }
72320
85189
};
72321
85190
 
 
85191
 
 
85192
#line 85193 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72322
85193
} // closed Puma
72323
85194
class WinIfExists;
72324
85195
class WinImportHandler;
72339
85210
class CCExprResolve;
72340
85211
class CExprResolve;
72341
85212
namespace Puma {
72342
 
class CT_HandlerSeq : public CT_List {  friend class ::WinIfExists;
 
85213
 
 
85214
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85215
class CT_HandlerSeq : public CT_List {
 
85216
#line 85217 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85217
  friend class ::WinIfExists;
72343
85218
  friend class ::WinImportHandler;
72344
85219
  friend class ::WinMacros;
72345
85220
  friend class ::CMatchSyntax;
72358
85233
  friend class ::CCExprResolve;
72359
85234
  friend class ::CExprResolve;
72360
85235
 
 
85236
#line 337 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85237
 
72361
85238
public:
72362
85239
  static const char *NodeId ();
72363
85240
  const char *NodeName () const { return NodeId (); }
72364
85241
};
72365
85242
 
 
85243
 
 
85244
#line 85245 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72366
85245
} // closed Puma
72367
85246
class WinIfExists;
72368
85247
class WinImportHandler;
72383
85262
class CCExprResolve;
72384
85263
class CExprResolve;
72385
85264
namespace Puma {
72386
 
class CT_TemplateParamList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
85265
 
 
85266
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85267
class CT_TemplateParamList : public CT_List, public CSemScope {
 
85268
#line 85269 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85269
  friend class ::WinIfExists;
72387
85270
  friend class ::WinImportHandler;
72388
85271
  friend class ::WinMacros;
72389
85272
  friend class ::CMatchSyntax;
72402
85285
  friend class ::CCExprResolve;
72403
85286
  friend class ::CExprResolve;
72404
85287
 
 
85288
#line 343 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85289
 
72405
85290
public:
72406
85291
  CT_TemplateParamList () { AddProperties (INTRO | SEPARATORS | OPEN_CLOSE); }
72407
85292
  static const char *NodeId ();
72408
85293
  const char *NodeName () const { return NodeId (); }
72409
85294
};
72410
85295
 
 
85296
 
 
85297
#line 85298 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72411
85298
} // closed Puma
72412
85299
class WinIfExists;
72413
85300
class WinImportHandler;
72428
85315
class CCExprResolve;
72429
85316
class CExprResolve;
72430
85317
namespace Puma {
72431
 
class CT_TemplateArgList : public CT_List {  friend class ::WinIfExists;
 
85318
 
 
85319
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85320
class CT_TemplateArgList : public CT_List {
 
85321
#line 85322 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85322
  friend class ::WinIfExists;
72432
85323
  friend class ::WinImportHandler;
72433
85324
  friend class ::WinMacros;
72434
85325
  friend class ::CMatchSyntax;
72447
85338
  friend class ::CCExprResolve;
72448
85339
  friend class ::CExprResolve;
72449
85340
 
 
85341
#line 350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85342
 
72450
85343
public:
72451
85344
  CT_TemplateArgList () { AddProperties (SEPARATORS | OPEN_CLOSE); }
72452
85345
  static const char *NodeId ();
72459
85352
/*                                                                           */
72460
85353
/*****************************************************************************/
72461
85354
 
 
85355
 
 
85356
#line 85357 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72462
85357
} // closed Puma
72463
85358
class WinIfExists;
72464
85359
class WinImportHandler;
72479
85374
class CCExprResolve;
72480
85375
class CExprResolve;
72481
85376
namespace Puma {
72482
 
class CT_Expression : public CTree, public CSemValue {  friend class ::WinIfExists;
 
85377
 
 
85378
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85379
class CT_Expression : public CTree, public CSemValue {
 
85380
#line 85381 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85381
  friend class ::WinIfExists;
72483
85382
  friend class ::WinImportHandler;
72484
85383
  friend class ::WinMacros;
72485
85384
  friend class ::CMatchSyntax;
72498
85397
  friend class ::CCExprResolve;
72499
85398
  friend class ::CExprResolve;
72500
85399
 
 
85400
#line 363 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85401
 
72501
85402
protected:
72502
85403
  CT_Expression () {}
72503
85404
 
72509
85410
  CSemValue *SemValue () const { return (CSemValue*)this; }
72510
85411
   private:
72511
85412
  typedef CT_Expression CCExprResolveExpr;
 
85413
 
 
85414
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72512
85415
 public :
72513
85416
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72514
85417
  typedef CT_Expression CExprResolveExpr;
 
85418
 
 
85419
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72515
85420
 public :
72516
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72517
 
 
 
85421
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85422
#line 373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85423
};
 
85424
 
 
85425
 
 
85426
#line 85427 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72518
85427
} // closed Puma
72519
85428
class WinIfExists;
72520
85429
class WinImportHandler;
72535
85444
class CCExprResolve;
72536
85445
class CExprResolve;
72537
85446
namespace Puma {
72538
 
class CT_String : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
85447
 
 
85448
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85449
class CT_String : public CT_List, public CSemValue {
 
85450
#line 85451 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85451
  friend class ::WinIfExists;
72539
85452
  friend class ::WinImportHandler;
72540
85453
  friend class ::WinMacros;
72541
85454
  friend class ::CMatchSyntax;
72554
85467
  friend class ::CCExprResolve;
72555
85468
  friend class ::CExprResolve;
72556
85469
 
 
85470
#line 375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85471
 
72557
85472
public:
72558
85473
  CT_String (int size) : CT_List (size, 1) {}
72559
85474
  static const char *NodeId ();
72564
85479
  CSemValue *SemValue () const { return (CSemValue*)this; }
72565
85480
   private:
72566
85481
  typedef CT_String CCExprResolveExpr;
 
85482
 
 
85483
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72567
85484
 public :
72568
85485
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72569
85486
  typedef CT_String CExprResolveExpr;
 
85487
 
 
85488
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72570
85489
 public :
72571
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72572
 
 
 
85490
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85491
#line 384 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85492
};
 
85493
 
 
85494
 
 
85495
#line 85496 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72573
85496
} // closed Puma
72574
85497
class WinIfExists;
72575
85498
class WinImportHandler;
72590
85513
class CCExprResolve;
72591
85514
class CExprResolve;
72592
85515
namespace Puma {
72593
 
class CT_WideString : public CT_String {  friend class ::WinIfExists;
 
85516
 
 
85517
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85518
class CT_WideString : public CT_String {
 
85519
#line 85520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85520
  friend class ::WinIfExists;
72594
85521
  friend class ::WinImportHandler;
72595
85522
  friend class ::WinMacros;
72596
85523
  friend class ::CMatchSyntax;
72609
85536
  friend class ::CCExprResolve;
72610
85537
  friend class ::CExprResolve;
72611
85538
 
 
85539
#line 386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85540
 
72612
85541
public:
72613
85542
  CT_WideString (int size) : CT_String (size) {}
72614
85543
  static const char *NodeId ();
72615
85544
  const char *NodeName () const { return NodeId (); }
72616
85545
   private:
72617
85546
  typedef CT_WideString CCExprResolveExpr;
 
85547
 
 
85548
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72618
85549
 public :
72619
85550
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72620
85551
  typedef CT_WideString CExprResolveExpr;
 
85552
 
 
85553
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72621
85554
 public :
72622
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72623
 
 
 
85555
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85556
#line 391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85557
};
 
85558
 
 
85559
 
 
85560
#line 85561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72624
85561
} // closed Puma
72625
85562
class WinIfExists;
72626
85563
class WinImportHandler;
72641
85578
class CCExprResolve;
72642
85579
class CExprResolve;
72643
85580
namespace Puma {
72644
 
class CT_Integer : public CT_Expression {  friend class ::WinIfExists;
 
85581
 
 
85582
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85583
class CT_Integer : public CT_Expression {
 
85584
#line 85585 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85585
  friend class ::WinIfExists;
72645
85586
  friend class ::WinImportHandler;
72646
85587
  friend class ::WinMacros;
72647
85588
  friend class ::CMatchSyntax;
72660
85601
  friend class ::CCExprResolve;
72661
85602
  friend class ::CExprResolve;
72662
85603
 
 
85604
#line 393 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85605
 
72663
85606
  CTree *_value;  // CT_Token
72664
85607
 
72665
85608
public:
72672
85615
   { if (old_son == _value) _value = new_son; }
72673
85616
   private:
72674
85617
  typedef CT_Integer CCExprResolveExpr;
 
85618
 
 
85619
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72675
85620
 public :
72676
85621
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72677
85622
  typedef CT_Integer CExprResolveExpr;
 
85623
 
 
85624
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72678
85625
 public :
72679
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72680
 
 
 
85626
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85627
#line 404 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85628
};
 
85629
 
 
85630
 
 
85631
#line 85632 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72681
85632
} // closed Puma
72682
85633
class WinIfExists;
72683
85634
class WinImportHandler;
72698
85649
class CCExprResolve;
72699
85650
class CExprResolve;
72700
85651
namespace Puma {
72701
 
class CT_Character : public CT_Expression {  friend class ::WinIfExists;
 
85652
 
 
85653
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85654
class CT_Character : public CT_Expression {
 
85655
#line 85656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85656
  friend class ::WinIfExists;
72702
85657
  friend class ::WinImportHandler;
72703
85658
  friend class ::WinMacros;
72704
85659
  friend class ::CMatchSyntax;
72717
85672
  friend class ::CCExprResolve;
72718
85673
  friend class ::CExprResolve;
72719
85674
 
 
85675
#line 406 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85676
 
72720
85677
  CTree *_value;  // CT_Token
72721
85678
 
72722
85679
public:
72729
85686
   { if (old_son == _value) _value = new_son; }
72730
85687
   private:
72731
85688
  typedef CT_Character CCExprResolveExpr;
 
85689
 
 
85690
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72732
85691
 public :
72733
85692
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72734
85693
  typedef CT_Character CExprResolveExpr;
 
85694
 
 
85695
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72735
85696
 public :
72736
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72737
 
 
 
85697
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85698
#line 417 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85699
};
 
85700
 
 
85701
 
 
85702
#line 85703 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72738
85703
} // closed Puma
72739
85704
class WinIfExists;
72740
85705
class WinImportHandler;
72755
85720
class CCExprResolve;
72756
85721
class CExprResolve;
72757
85722
namespace Puma {
72758
 
class CT_WideCharacter : public CT_Character {  friend class ::WinIfExists;
 
85723
 
 
85724
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85725
class CT_WideCharacter : public CT_Character {
 
85726
#line 85727 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85727
  friend class ::WinIfExists;
72759
85728
  friend class ::WinImportHandler;
72760
85729
  friend class ::WinMacros;
72761
85730
  friend class ::CMatchSyntax;
72774
85743
  friend class ::CCExprResolve;
72775
85744
  friend class ::CExprResolve;
72776
85745
 
 
85746
#line 419 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85747
 
72777
85748
  CTree *_value;  // CT_Token
72778
85749
 
72779
85750
public:
72784
85755
   { if (old_son == _value) _value = new_son; }
72785
85756
   private:
72786
85757
  typedef CT_WideCharacter CCExprResolveExpr;
 
85758
 
 
85759
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72787
85760
 public :
72788
85761
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72789
85762
  typedef CT_WideCharacter CExprResolveExpr;
 
85763
 
 
85764
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72790
85765
 public :
72791
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72792
 
 
 
85766
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85767
#line 428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85768
};
 
85769
 
 
85770
 
 
85771
#line 85772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72793
85772
} // closed Puma
72794
85773
class WinIfExists;
72795
85774
class WinImportHandler;
72810
85789
class CCExprResolve;
72811
85790
class CExprResolve;
72812
85791
namespace Puma {
72813
 
class CT_Float : public CT_Expression {  friend class ::WinIfExists;
 
85792
 
 
85793
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85794
class CT_Float : public CT_Expression {
 
85795
#line 85796 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85796
  friend class ::WinIfExists;
72814
85797
  friend class ::WinImportHandler;
72815
85798
  friend class ::WinMacros;
72816
85799
  friend class ::CMatchSyntax;
72829
85812
  friend class ::CCExprResolve;
72830
85813
  friend class ::CExprResolve;
72831
85814
 
 
85815
#line 430 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85816
 
72832
85817
  CTree *_value;  // CT_Token
72833
85818
 
72834
85819
public:
72841
85826
   { if (old_son == _value) _value = new_son; }
72842
85827
   private:
72843
85828
  typedef CT_Float CCExprResolveExpr;
 
85829
 
 
85830
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72844
85831
 public :
72845
85832
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72846
85833
  typedef CT_Float CExprResolveExpr;
 
85834
 
 
85835
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72847
85836
 public :
72848
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72849
 
 
 
85837
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85838
#line 441 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85839
};
 
85840
 
 
85841
 
 
85842
#line 85843 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72850
85843
} // closed Puma
72851
85844
class WinIfExists;
72852
85845
class WinImportHandler;
72867
85860
class CCExprResolve;
72868
85861
class CExprResolve;
72869
85862
namespace Puma {
72870
 
class CT_Bool : public CT_Expression {  friend class ::WinIfExists;
 
85863
 
 
85864
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85865
class CT_Bool : public CT_Expression {
 
85866
#line 85867 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85867
  friend class ::WinIfExists;
72871
85868
  friend class ::WinImportHandler;
72872
85869
  friend class ::WinMacros;
72873
85870
  friend class ::CMatchSyntax;
72886
85883
  friend class ::CCExprResolve;
72887
85884
  friend class ::CExprResolve;
72888
85885
 
 
85886
#line 443 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85887
 
72889
85888
  CTree *_value;  // CT_Token
72890
85889
 
72891
85890
public:
72898
85897
   { if (old_son == _value) _value = new_son; }
72899
85898
   private:
72900
85899
  typedef CT_Bool CCExprResolveExpr;
 
85900
 
 
85901
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72901
85902
 public :
72902
85903
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72903
85904
  typedef CT_Bool CExprResolveExpr;
 
85905
 
 
85906
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72904
85907
 public :
72905
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72906
 
 
 
85908
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85909
#line 454 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85910
};
 
85911
 
 
85912
 
 
85913
#line 85914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72907
85914
} // closed Puma
72908
85915
class WinIfExists;
72909
85916
class WinImportHandler;
72924
85931
class CCExprResolve;
72925
85932
class CExprResolve;
72926
85933
namespace Puma {
72927
 
class CT_BracedExpr : public CT_Expression {  friend class ::WinIfExists;
 
85934
 
 
85935
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85936
class CT_BracedExpr : public CT_Expression {
 
85937
#line 85938 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
85938
  friend class ::WinIfExists;
72928
85939
  friend class ::WinImportHandler;
72929
85940
  friend class ::WinMacros;
72930
85941
  friend class ::CMatchSyntax;
72943
85954
  friend class ::CCExprResolve;
72944
85955
  friend class ::CExprResolve;
72945
85956
 
 
85957
#line 456 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85958
 
72946
85959
  CTree *sons[3]; // open, expr, close
72947
85960
 
72948
85961
public:
72962
85975
  }
72963
85976
   private:
72964
85977
  typedef CT_BracedExpr CCExprResolveExpr;
 
85978
 
 
85979
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
72965
85980
 public :
72966
85981
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
72967
85982
  typedef CT_BracedExpr CExprResolveExpr;
 
85983
 
 
85984
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
72968
85985
 public :
72969
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
72970
 
 
 
85986
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
85987
#line 474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
85988
};
 
85989
 
 
85990
 
 
85991
#line 85992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
72971
85992
} // closed Puma
72972
85993
class WinIfExists;
72973
85994
class WinImportHandler;
72988
86009
class CCExprResolve;
72989
86010
class CExprResolve;
72990
86011
namespace Puma {
 
86012
 
 
86013
#line 476 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
72991
86014
class CT_SimpleName : public CT_List, public Printable, 
72992
 
                      public CSemValue, public CSemObject {  friend class ::WinIfExists;
 
86015
                      public CSemValue, public CSemObject {
 
86016
#line 86017 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86017
  friend class ::WinIfExists;
72993
86018
  friend class ::WinImportHandler;
72994
86019
  friend class ::WinMacros;
72995
86020
  friend class ::CMatchSyntax;
73008
86033
  friend class ::CCExprResolve;
73009
86034
  friend class ::CExprResolve;
73010
86035
 
 
86036
#line 477 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86037
 
73011
86038
protected:
73012
86039
  CT_SimpleName (int size) : CT_List (size, 1) {}
73013
86040
  CT_SimpleName (int size, int properties) : 
73032
86059
  virtual CT_SimpleName *IsSimpleName () { return this; }  
73033
86060
   private:
73034
86061
  typedef CT_SimpleName CCExprResolveExpr;
 
86062
 
 
86063
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73035
86064
 public :
73036
86065
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73037
86066
  typedef CT_SimpleName CExprResolveExpr;
 
86067
 
 
86068
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73038
86069
 public :
73039
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73040
 
 
 
86070
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86071
#line 500 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86072
};
 
86073
 
 
86074
 
 
86075
#line 86076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73041
86076
} // closed Puma
73042
86077
class WinIfExists;
73043
86078
class WinImportHandler;
73058
86093
class CCExprResolve;
73059
86094
class CExprResolve;
73060
86095
namespace Puma {
73061
 
class CT_SpecialName : public CT_SimpleName {  friend class ::WinIfExists;
 
86096
 
 
86097
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86098
class CT_SpecialName : public CT_SimpleName {
 
86099
#line 86100 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86100
  friend class ::WinIfExists;
73062
86101
  friend class ::WinImportHandler;
73063
86102
  friend class ::WinMacros;
73064
86103
  friend class ::CMatchSyntax;
73077
86116
  friend class ::CCExprResolve;
73078
86117
  friend class ::CExprResolve;
73079
86118
 
 
86119
#line 502 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86120
 
73080
86121
  char *_name;
73081
86122
  
73082
86123
protected:
73096
86137
  void  operator delete (void *);
73097
86138
   private:
73098
86139
  typedef CT_SpecialName CCExprResolveExpr;
 
86140
 
 
86141
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73099
86142
 public :
73100
86143
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73101
86144
  typedef CT_SpecialName CExprResolveExpr;
 
86145
 
 
86146
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73102
86147
 public :
73103
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73104
 
 
 
86148
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86149
#line 520 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86150
};
 
86151
 
 
86152
 
 
86153
#line 86154 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73105
86154
} // closed Puma
73106
86155
class WinIfExists;
73107
86156
class WinImportHandler;
73122
86171
class CCExprResolve;
73123
86172
class CExprResolve;
73124
86173
namespace Puma {
73125
 
class CT_PrivateName : public CT_SpecialName {  friend class ::WinIfExists;
 
86174
 
 
86175
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86176
class CT_PrivateName : public CT_SpecialName {
 
86177
#line 86178 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86178
  friend class ::WinIfExists;
73126
86179
  friend class ::WinImportHandler;
73127
86180
  friend class ::WinMacros;
73128
86181
  friend class ::CMatchSyntax;
73141
86194
  friend class ::CCExprResolve;
73142
86195
  friend class ::CExprResolve;
73143
86196
 
 
86197
#line 522 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86198
 
73144
86199
public:
73145
86200
  CT_PrivateName (const char *n) { Name (n); }
73146
86201
  static const char *NodeId ();
73152
86207
  void  operator delete (void *);
73153
86208
   private:
73154
86209
  typedef CT_PrivateName CCExprResolveExpr;
 
86210
 
 
86211
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73155
86212
 public :
73156
86213
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73157
86214
  typedef CT_PrivateName CExprResolveExpr;
 
86215
 
 
86216
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73158
86217
 public :
73159
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73160
 
 
 
86218
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86219
#line 532 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86220
};
 
86221
 
 
86222
 
 
86223
#line 86224 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73161
86224
} // closed Puma
73162
86225
class WinIfExists;
73163
86226
class WinImportHandler;
73178
86241
class CCExprResolve;
73179
86242
class CExprResolve;
73180
86243
namespace Puma {
73181
 
class CT_DestructorName : public CT_SpecialName {  friend class ::WinIfExists;
 
86244
 
 
86245
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86246
class CT_DestructorName : public CT_SpecialName {
 
86247
#line 86248 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86248
  friend class ::WinIfExists;
73182
86249
  friend class ::WinImportHandler;
73183
86250
  friend class ::WinMacros;
73184
86251
  friend class ::CMatchSyntax;
73197
86264
  friend class ::CCExprResolve;
73198
86265
  friend class ::CExprResolve;
73199
86266
 
 
86267
#line 534 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86268
 
73200
86269
public:
73201
86270
  CT_DestructorName (CTree *, CTree *);
73202
86271
  static const char *NodeId ();
73206
86275
  void  operator delete (void *);
73207
86276
   private:
73208
86277
  typedef CT_DestructorName CCExprResolveExpr;
 
86278
 
 
86279
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73209
86280
 public :
73210
86281
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73211
86282
  typedef CT_DestructorName CExprResolveExpr;
 
86283
 
 
86284
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73212
86285
 public :
73213
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73214
 
 
 
86286
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86287
#line 542 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86288
};
 
86289
 
 
86290
 
 
86291
#line 86292 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73215
86292
} // closed Puma
73216
86293
class WinIfExists;
73217
86294
class WinImportHandler;
73232
86309
class CCExprResolve;
73233
86310
class CExprResolve;
73234
86311
namespace Puma {
73235
 
class CT_TemplateName : public CT_SpecialName {  friend class ::WinIfExists;
 
86312
 
 
86313
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86314
class CT_TemplateName : public CT_SpecialName {
 
86315
#line 86316 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86316
  friend class ::WinIfExists;
73236
86317
  friend class ::WinImportHandler;
73237
86318
  friend class ::WinMacros;
73238
86319
  friend class ::CMatchSyntax;
73251
86332
  friend class ::CCExprResolve;
73252
86333
  friend class ::CExprResolve;
73253
86334
 
 
86335
#line 544 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86336
 
73254
86337
public:
73255
86338
  CT_TemplateName (CTree *n, CTree *a) 
73256
86339
   { AddSon (n); AddSon (a); }
73267
86350
  void  operator delete (void *);
73268
86351
   private:
73269
86352
  typedef CT_TemplateName CCExprResolveExpr;
 
86353
 
 
86354
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73270
86355
 public :
73271
86356
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73272
86357
  typedef CT_TemplateName CExprResolveExpr;
 
86358
 
 
86359
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73273
86360
 public :
73274
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73275
 
 
 
86361
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86362
#line 559 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86363
};
 
86364
 
 
86365
 
 
86366
#line 86367 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73276
86367
} // closed Puma
73277
86368
class WinIfExists;
73278
86369
class WinImportHandler;
73293
86384
class CCExprResolve;
73294
86385
class CExprResolve;
73295
86386
namespace Puma {
73296
 
class CT_OperatorName : public CT_SpecialName {  friend class ::WinIfExists;
 
86387
 
 
86388
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86389
class CT_OperatorName : public CT_SpecialName {
 
86390
#line 86391 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86391
  friend class ::WinIfExists;
73297
86392
  friend class ::WinImportHandler;
73298
86393
  friend class ::WinMacros;
73299
86394
  friend class ::CMatchSyntax;
73312
86407
  friend class ::CCExprResolve;
73313
86408
  friend class ::CExprResolve;
73314
86409
 
 
86410
#line 561 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86411
 
73315
86412
  int _oper;
73316
86413
 
73317
86414
public:
73333
86430
  void  operator delete (void *);
73334
86431
   private:
73335
86432
  typedef CT_OperatorName CCExprResolveExpr;
 
86433
 
 
86434
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73336
86435
 public :
73337
86436
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73338
86437
  typedef CT_OperatorName CExprResolveExpr;
 
86438
 
 
86439
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73339
86440
 public :
73340
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73341
 
 
 
86441
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86442
#line 581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86443
};
 
86444
 
 
86445
 
 
86446
#line 86447 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73342
86447
} // closed Puma
73343
86448
class WinIfExists;
73344
86449
class WinImportHandler;
73359
86464
class CCExprResolve;
73360
86465
class CExprResolve;
73361
86466
namespace Puma {
73362
 
class CT_ConversionName : public CT_SpecialName {  friend class ::WinIfExists;
 
86467
 
 
86468
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86469
class CT_ConversionName : public CT_SpecialName {
 
86470
#line 86471 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86471
  friend class ::WinIfExists;
73363
86472
  friend class ::WinImportHandler;
73364
86473
  friend class ::WinMacros;
73365
86474
  friend class ::CMatchSyntax;
73378
86487
  friend class ::CCExprResolve;
73379
86488
  friend class ::CExprResolve;
73380
86489
 
 
86490
#line 583 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86491
 
73381
86492
public:
73382
86493
  CT_ConversionName (CTree *, CTree *);
73383
86494
  static const char *NodeId ();
73388
86499
  void  operator delete (void *);
73389
86500
   private:
73390
86501
  typedef CT_ConversionName CCExprResolveExpr;
 
86502
 
 
86503
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73391
86504
 public :
73392
86505
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73393
86506
  typedef CT_ConversionName CExprResolveExpr;
 
86507
 
 
86508
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73394
86509
 public :
73395
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73396
 
 
 
86510
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86511
#line 592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86512
};
 
86513
 
 
86514
 
 
86515
#line 86516 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73397
86516
} // closed Puma
73398
86517
class WinIfExists;
73399
86518
class WinImportHandler;
73414
86533
class CCExprResolve;
73415
86534
class CExprResolve;
73416
86535
namespace Puma {
73417
 
class CT_QualName : public CT_SimpleName {  friend class ::WinIfExists;
 
86536
 
 
86537
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86538
class CT_QualName : public CT_SimpleName {
 
86539
#line 86540 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86540
  friend class ::WinIfExists;
73418
86541
  friend class ::WinImportHandler;
73419
86542
  friend class ::WinMacros;
73420
86543
  friend class ::CMatchSyntax;
73433
86556
  friend class ::CCExprResolve;
73434
86557
  friend class ::CExprResolve;
73435
86558
 
 
86559
#line 594 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86560
 
73436
86561
public:
73437
86562
  CT_QualName (int size = 3) : 
73438
86563
    CT_SimpleName (size, CT_List::SEPARATORS) {}
73450
86575
  void  operator delete (void *);
73451
86576
   private:
73452
86577
  typedef CT_QualName CCExprResolveExpr;
 
86578
 
 
86579
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73453
86580
 public :
73454
86581
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73455
86582
  typedef CT_QualName CExprResolveExpr;
 
86583
 
 
86584
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73456
86585
 public :
73457
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73458
 
 
 
86586
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86587
#line 610 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86588
};
 
86589
 
 
86590
 
 
86591
#line 86592 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73459
86592
} // closed Puma
73460
86593
class WinIfExists;
73461
86594
class WinImportHandler;
73476
86609
class CCExprResolve;
73477
86610
class CExprResolve;
73478
86611
namespace Puma {
73479
 
class CT_RootQualName : public CT_QualName {  friend class ::WinIfExists;
 
86612
 
 
86613
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86614
class CT_RootQualName : public CT_QualName {
 
86615
#line 86616 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86616
  friend class ::WinIfExists;
73480
86617
  friend class ::WinImportHandler;
73481
86618
  friend class ::WinMacros;
73482
86619
  friend class ::CMatchSyntax;
73495
86632
  friend class ::CCExprResolve;
73496
86633
  friend class ::CExprResolve;
73497
86634
 
 
86635
#line 612 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86636
 
73498
86637
public:
73499
86638
  CT_RootQualName (int size = 2) : 
73500
86639
    CT_QualName (size) { AddProperties (INTRO); }
73505
86644
  void  operator delete (void *);
73506
86645
   private:
73507
86646
  typedef CT_RootQualName CCExprResolveExpr;
 
86647
 
 
86648
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73508
86649
 public :
73509
86650
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73510
86651
  typedef CT_RootQualName CExprResolveExpr;
 
86652
 
 
86653
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73511
86654
 public :
73512
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73513
 
 
 
86655
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86656
#line 621 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86657
};
 
86658
 
 
86659
 
 
86660
#line 86661 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73514
86661
} // closed Puma
73515
86662
class WinIfExists;
73516
86663
class WinImportHandler;
73531
86678
class CCExprResolve;
73532
86679
class CExprResolve;
73533
86680
namespace Puma {
73534
 
class CT_BinaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
86681
 
 
86682
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86683
class CT_BinaryExpr : public CT_Expression {
 
86684
#line 86685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86685
  friend class ::WinIfExists;
73535
86686
  friend class ::WinImportHandler;
73536
86687
  friend class ::WinMacros;
73537
86688
  friend class ::CMatchSyntax;
73550
86701
  friend class ::CCExprResolve;
73551
86702
  friend class ::CExprResolve;
73552
86703
 
 
86704
#line 623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86705
 
73553
86706
  CTree *sons[3]; // expr, oper, expr
73554
86707
 
73555
86708
public:
73565
86718
  }
73566
86719
   private:
73567
86720
  typedef CT_BinaryExpr CCExprResolveExpr;
 
86721
 
 
86722
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73568
86723
 public :
73569
86724
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73570
86725
  typedef CT_BinaryExpr CExprResolveExpr;
 
86726
 
 
86727
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73571
86728
 public :
73572
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73573
 
 
 
86729
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86730
#line 637 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86731
};
 
86732
 
 
86733
 
 
86734
#line 86735 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73574
86735
} // closed Puma
73575
86736
class WinIfExists;
73576
86737
class WinImportHandler;
73591
86752
class CCExprResolve;
73592
86753
class CExprResolve;
73593
86754
namespace Puma {
73594
 
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {  friend class ::WinIfExists;
 
86755
 
 
86756
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86757
class CT_MembPtrExpr : public CT_BinaryExpr, public CSemObject {
 
86758
#line 86759 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86759
  friend class ::WinIfExists;
73595
86760
  friend class ::WinImportHandler;
73596
86761
  friend class ::WinMacros;
73597
86762
  friend class ::CMatchSyntax;
73610
86775
  friend class ::CCExprResolve;
73611
86776
  friend class ::CExprResolve;
73612
86777
 
 
86778
#line 639 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86779
 
73613
86780
public:
73614
86781
  CT_MembPtrExpr (CTree *e, CTree *o, CTree *i) :
73615
86782
    CT_BinaryExpr (e, o, i) {}
73618
86785
  CSemObject *SemObject () const { return (CSemObject*)this; }
73619
86786
   private:
73620
86787
  typedef CT_MembPtrExpr CCExprResolveExpr;
 
86788
 
 
86789
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73621
86790
 public :
73622
86791
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73623
86792
  typedef CT_MembPtrExpr CExprResolveExpr;
 
86793
 
 
86794
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73624
86795
 public :
73625
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73626
 
 
 
86796
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86797
#line 646 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86798
};
 
86799
 
 
86800
 
 
86801
#line 86802 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73627
86802
} // closed Puma
73628
86803
class WinIfExists;
73629
86804
class WinImportHandler;
73644
86819
class CCExprResolve;
73645
86820
class CExprResolve;
73646
86821
namespace Puma {
73647
 
class CT_MembRefExpr : public CT_MembPtrExpr {  friend class ::WinIfExists;
 
86822
 
 
86823
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86824
class CT_MembRefExpr : public CT_MembPtrExpr {
 
86825
#line 86826 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86826
  friend class ::WinIfExists;
73648
86827
  friend class ::WinImportHandler;
73649
86828
  friend class ::WinMacros;
73650
86829
  friend class ::CMatchSyntax;
73663
86842
  friend class ::CCExprResolve;
73664
86843
  friend class ::CExprResolve;
73665
86844
 
 
86845
#line 648 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86846
 
73666
86847
public:
73667
86848
  CT_MembRefExpr (CTree *e, CTree *o, CTree *i) :
73668
86849
    CT_MembPtrExpr (e, o, i) {}
73670
86851
  const char *NodeName () const { return NodeId (); }
73671
86852
   private:
73672
86853
  typedef CT_MembRefExpr CCExprResolveExpr;
 
86854
 
 
86855
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73673
86856
 public :
73674
86857
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73675
86858
  typedef CT_MembRefExpr CExprResolveExpr;
 
86859
 
 
86860
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73676
86861
 public :
73677
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73678
 
 
 
86862
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86863
#line 654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86864
};
 
86865
 
 
86866
 
 
86867
#line 86868 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73679
86868
} // closed Puma
73680
86869
class WinIfExists;
73681
86870
class WinImportHandler;
73696
86885
class CCExprResolve;
73697
86886
class CExprResolve;
73698
86887
namespace Puma {
73699
 
class CT_UnaryExpr : public CT_Expression {  friend class ::WinIfExists;
 
86888
 
 
86889
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86890
class CT_UnaryExpr : public CT_Expression {
 
86891
#line 86892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86892
  friend class ::WinIfExists;
73700
86893
  friend class ::WinImportHandler;
73701
86894
  friend class ::WinMacros;
73702
86895
  friend class ::CMatchSyntax;
73715
86908
  friend class ::CCExprResolve;
73716
86909
  friend class ::CExprResolve;
73717
86910
 
 
86911
#line 656 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86912
 
73718
86913
  CTree *sons[2]; // oper, expr
73719
86914
 
73720
86915
public:
73729
86924
  CTree *Expr () const { return sons[1]; }
73730
86925
   private:
73731
86926
  typedef CT_UnaryExpr CCExprResolveExpr;
 
86927
 
 
86928
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73732
86929
 public :
73733
86930
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73734
86931
  typedef CT_UnaryExpr CExprResolveExpr;
 
86932
 
 
86933
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73735
86934
 public :
73736
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73737
 
 
 
86935
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
86936
#line 669 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86937
};
 
86938
 
 
86939
 
 
86940
#line 86941 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73738
86941
} // closed Puma
73739
86942
class WinIfExists;
73740
86943
class WinImportHandler;
73755
86958
class CCExprResolve;
73756
86959
class CExprResolve;
73757
86960
namespace Puma {
73758
 
class CT_PostfixExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
86961
 
 
86962
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86963
class CT_PostfixExpr : public CT_UnaryExpr {
 
86964
#line 86965 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
86965
  friend class ::WinIfExists;
73759
86966
  friend class ::WinImportHandler;
73760
86967
  friend class ::WinMacros;
73761
86968
  friend class ::CMatchSyntax;
73774
86981
  friend class ::CCExprResolve;
73775
86982
  friend class ::CExprResolve;
73776
86983
 
 
86984
#line 671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
86985
 
73777
86986
public:
73778
86987
  CT_PostfixExpr (CTree *e, CTree *o) :
73779
86988
    CT_UnaryExpr (e, o) {}
73781
86990
  const char *NodeName () const { return NodeId (); }
73782
86991
   private:
73783
86992
  typedef CT_PostfixExpr CCExprResolveExpr;
 
86993
 
 
86994
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73784
86995
 public :
73785
86996
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73786
86997
  typedef CT_PostfixExpr CExprResolveExpr;
 
86998
 
 
86999
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73787
87000
 public :
73788
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73789
 
 
 
87001
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87002
#line 677 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87003
};
 
87004
 
 
87005
 
 
87006
#line 87007 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73790
87007
} // closed Puma
73791
87008
class WinIfExists;
73792
87009
class WinImportHandler;
73807
87024
class CCExprResolve;
73808
87025
class CExprResolve;
73809
87026
namespace Puma {
73810
 
class CT_AddrExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
87027
 
 
87028
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87029
class CT_AddrExpr : public CT_UnaryExpr {
 
87030
#line 87031 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87031
  friend class ::WinIfExists;
73811
87032
  friend class ::WinImportHandler;
73812
87033
  friend class ::WinMacros;
73813
87034
  friend class ::CMatchSyntax;
73826
87047
  friend class ::CCExprResolve;
73827
87048
  friend class ::CExprResolve;
73828
87049
 
 
87050
#line 679 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87051
 
73829
87052
public:
73830
87053
  CT_AddrExpr (CTree *o, CTree *e) :
73831
87054
    CT_UnaryExpr (o, e) {}
73833
87056
  const char *NodeName () const { return NodeId (); }
73834
87057
   private:
73835
87058
  typedef CT_AddrExpr CCExprResolveExpr;
 
87059
 
 
87060
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73836
87061
 public :
73837
87062
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73838
87063
  typedef CT_AddrExpr CExprResolveExpr;
 
87064
 
 
87065
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73839
87066
 public :
73840
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73841
 
 
 
87067
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87068
#line 685 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87069
};
 
87070
 
 
87071
 
 
87072
#line 87073 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73842
87073
} // closed Puma
73843
87074
class WinIfExists;
73844
87075
class WinImportHandler;
73859
87090
class CCExprResolve;
73860
87091
class CExprResolve;
73861
87092
namespace Puma {
73862
 
class CT_DerefExpr : public CT_UnaryExpr {  friend class ::WinIfExists;
 
87093
 
 
87094
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87095
class CT_DerefExpr : public CT_UnaryExpr {
 
87096
#line 87097 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87097
  friend class ::WinIfExists;
73863
87098
  friend class ::WinImportHandler;
73864
87099
  friend class ::WinMacros;
73865
87100
  friend class ::CMatchSyntax;
73878
87113
  friend class ::CCExprResolve;
73879
87114
  friend class ::CExprResolve;
73880
87115
 
 
87116
#line 687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87117
 
73881
87118
public:
73882
87119
  CT_DerefExpr (CTree *o, CTree *e) :
73883
87120
    CT_UnaryExpr (o, e) {}
73885
87122
  const char *NodeName () const { return NodeId (); }
73886
87123
   private:
73887
87124
  typedef CT_DerefExpr CCExprResolveExpr;
 
87125
 
 
87126
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73888
87127
 public :
73889
87128
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73890
87129
  typedef CT_DerefExpr CExprResolveExpr;
 
87130
 
 
87131
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73891
87132
 public :
73892
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73893
 
 
 
87133
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87134
#line 693 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87135
};
 
87136
 
 
87137
 
 
87138
#line 87139 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73894
87139
} // closed Puma
73895
87140
class WinIfExists;
73896
87141
class WinImportHandler;
73911
87156
class CCExprResolve;
73912
87157
class CExprResolve;
73913
87158
namespace Puma {
73914
 
class CT_DeleteExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
87159
 
 
87160
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87161
class CT_DeleteExpr : public CT_Expression, public CSemObject {
 
87162
#line 87163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87163
  friend class ::WinIfExists;
73915
87164
  friend class ::WinImportHandler;
73916
87165
  friend class ::WinMacros;
73917
87166
  friend class ::CMatchSyntax;
73930
87179
  friend class ::CCExprResolve;
73931
87180
  friend class ::CExprResolve;
73932
87181
 
 
87182
#line 695 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87183
 
73933
87184
  CTree *sons[2]; // oper, expr
73934
87185
 
73935
87186
public:
73946
87197
  CSemObject *SemObject () const { return (CSemObject*)this; }
73947
87198
   private:
73948
87199
  typedef CT_DeleteExpr CCExprResolveExpr;
 
87200
 
 
87201
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
73949
87202
 public :
73950
87203
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
73951
87204
  typedef CT_DeleteExpr CExprResolveExpr;
 
87205
 
 
87206
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
73952
87207
 public :
73953
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
73954
 
 
 
87208
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87209
#line 710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87210
};
 
87211
 
 
87212
 
 
87213
#line 87214 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
73955
87214
} // closed Puma
73956
87215
class WinIfExists;
73957
87216
class WinImportHandler;
73972
87231
class CCExprResolve;
73973
87232
class CExprResolve;
73974
87233
namespace Puma {
73975
 
class CT_NewExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
87234
 
 
87235
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87236
class CT_NewExpr : public CT_Expression, public CSemObject {
 
87237
#line 87238 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87238
  friend class ::WinIfExists;
73976
87239
  friend class ::WinImportHandler;
73977
87240
  friend class ::WinMacros;
73978
87241
  friend class ::CMatchSyntax;
73991
87254
  friend class ::CCExprResolve;
73992
87255
  friend class ::CExprResolve;
73993
87256
 
 
87257
#line 712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87258
 
73994
87259
  CTree *sons[6]; // oper, placement, open, type, close, init
73995
87260
 
73996
87261
public:
74011
87276
  CSemObject *SemObject () const { return (CSemObject*)this; }
74012
87277
   private:
74013
87278
  typedef CT_NewExpr CCExprResolveExpr;
 
87279
 
 
87280
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74014
87281
 public :
74015
87282
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74016
87283
  typedef CT_NewExpr CExprResolveExpr;
 
87284
 
 
87285
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74017
87286
 public :
74018
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74019
 
 
 
87287
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87288
#line 731 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87289
};
 
87290
 
 
87291
 
 
87292
#line 87293 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74020
87293
} // closed Puma
74021
87294
class WinIfExists;
74022
87295
class WinImportHandler;
74037
87310
class CCExprResolve;
74038
87311
class CExprResolve;
74039
87312
namespace Puma {
74040
 
class CT_IfThenExpr : public CT_Expression {  friend class ::WinIfExists;
 
87313
 
 
87314
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87315
class CT_IfThenExpr : public CT_Expression {
 
87316
#line 87317 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87317
  friend class ::WinIfExists;
74041
87318
  friend class ::WinImportHandler;
74042
87319
  friend class ::WinMacros;
74043
87320
  friend class ::CMatchSyntax;
74056
87333
  friend class ::CCExprResolve;
74057
87334
  friend class ::CExprResolve;
74058
87335
 
 
87336
#line 733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87337
 
74059
87338
  CTree *sons[5]; // cond, oper, left, colon, right
74060
87339
 
74061
87340
public:
74077
87356
  }
74078
87357
   private:
74079
87358
  typedef CT_IfThenExpr CCExprResolveExpr;
 
87359
 
 
87360
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74080
87361
 public :
74081
87362
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74082
87363
  typedef CT_IfThenExpr CExprResolveExpr;
 
87364
 
 
87365
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74083
87366
 public :
74084
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74085
 
 
 
87367
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87368
#line 753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87369
};
 
87370
 
 
87371
 
 
87372
#line 87373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74086
87373
} // closed Puma
74087
87374
class WinIfExists;
74088
87375
class WinImportHandler;
74103
87390
class CCExprResolve;
74104
87391
class CExprResolve;
74105
87392
namespace Puma {
74106
 
class CT_CmpdLiteral : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
87393
 
 
87394
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87395
class CT_CmpdLiteral : public CT_Expression, public CSemObject {
 
87396
#line 87397 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87397
  friend class ::WinIfExists;
74107
87398
  friend class ::WinImportHandler;
74108
87399
  friend class ::WinMacros;
74109
87400
  friend class ::CMatchSyntax;
74122
87413
  friend class ::CCExprResolve;
74123
87414
  friend class ::CExprResolve;
74124
87415
 
 
87416
#line 755 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87417
 
74125
87418
  CTree *sons[4]; // open, type, close, init
74126
87419
 
74127
87420
public:
74140
87433
  CSemObject *SemObject () const { return (CSemObject*)this; }
74141
87434
   private:
74142
87435
  typedef CT_CmpdLiteral CCExprResolveExpr;
 
87436
 
 
87437
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74143
87438
 public :
74144
87439
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74145
87440
  typedef CT_CmpdLiteral CExprResolveExpr;
 
87441
 
 
87442
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74146
87443
 public :
74147
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74148
 
 
 
87444
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87445
#line 772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87446
};
 
87447
 
 
87448
 
 
87449
#line 87450 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74149
87450
} // closed Puma
74150
87451
class WinIfExists;
74151
87452
class WinImportHandler;
74166
87467
class CCExprResolve;
74167
87468
class CExprResolve;
74168
87469
namespace Puma {
74169
 
class CT_ConstructExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
87470
 
 
87471
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87472
class CT_ConstructExpr : public CT_Expression, public CSemObject {
 
87473
#line 87474 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87474
  friend class ::WinIfExists;
74170
87475
  friend class ::WinImportHandler;
74171
87476
  friend class ::WinMacros;
74172
87477
  friend class ::CMatchSyntax;
74185
87490
  friend class ::CCExprResolve;
74186
87491
  friend class ::CExprResolve;
74187
87492
 
 
87493
#line 774 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87494
 
74188
87495
  CTree *sons[2]; // type, init
74189
87496
 
74190
87497
public:
74201
87508
  CSemObject *SemObject () const { return (CSemObject*)this; }
74202
87509
   private:
74203
87510
  typedef CT_ConstructExpr CCExprResolveExpr;
 
87511
 
 
87512
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74204
87513
 public :
74205
87514
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74206
87515
  typedef CT_ConstructExpr CExprResolveExpr;
 
87516
 
 
87517
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74207
87518
 public :
74208
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74209
 
 
 
87519
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87520
#line 789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87521
};
 
87522
 
 
87523
 
 
87524
#line 87525 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74210
87525
} // closed Puma
74211
87526
class WinIfExists;
74212
87527
class WinImportHandler;
74227
87542
class CCExprResolve;
74228
87543
class CExprResolve;
74229
87544
namespace Puma {
74230
 
class CT_ThrowExpr : public CT_Expression {  friend class ::WinIfExists;
 
87545
 
 
87546
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87547
class CT_ThrowExpr : public CT_Expression {
 
87548
#line 87549 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87549
  friend class ::WinIfExists;
74231
87550
  friend class ::WinImportHandler;
74232
87551
  friend class ::WinMacros;
74233
87552
  friend class ::CMatchSyntax;
74246
87565
  friend class ::CCExprResolve;
74247
87566
  friend class ::CExprResolve;
74248
87567
 
 
87568
#line 791 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87569
 
74249
87570
  CTree *sons[2]; // throw, expr
74250
87571
 
74251
87572
public:
74260
87581
  CTree *Expr () const { return sons[1]; }
74261
87582
   private:
74262
87583
  typedef CT_ThrowExpr CCExprResolveExpr;
 
87584
 
 
87585
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74263
87586
 public :
74264
87587
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74265
87588
  typedef CT_ThrowExpr CExprResolveExpr;
 
87589
 
 
87590
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74266
87591
 public :
74267
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74268
 
 
 
87592
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87593
#line 804 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87594
};
 
87595
 
 
87596
 
 
87597
#line 87598 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74269
87598
} // closed Puma
74270
87599
class WinIfExists;
74271
87600
class WinImportHandler;
74286
87615
class CCExprResolve;
74287
87616
class CExprResolve;
74288
87617
namespace Puma {
74289
 
class CT_IndexExpr : public CT_Expression {  friend class ::WinIfExists;
 
87618
 
 
87619
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87620
class CT_IndexExpr : public CT_Expression {
 
87621
#line 87622 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87622
  friend class ::WinIfExists;
74290
87623
  friend class ::WinImportHandler;
74291
87624
  friend class ::WinMacros;
74292
87625
  friend class ::CMatchSyntax;
74305
87638
  friend class ::CCExprResolve;
74306
87639
  friend class ::CExprResolve;
74307
87640
 
 
87641
#line 806 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87642
 
74308
87643
  CTree *sons[4]; // expr, open, index, close
74309
87644
 
74310
87645
public:
74320
87655
  }
74321
87656
   private:
74322
87657
  typedef CT_IndexExpr CCExprResolveExpr;
 
87658
 
 
87659
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74323
87660
 public :
74324
87661
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74325
87662
  typedef CT_IndexExpr CExprResolveExpr;
 
87663
 
 
87664
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74326
87665
 public :
74327
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74328
 
 
 
87666
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87667
#line 820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87668
};
 
87669
 
 
87670
 
 
87671
#line 87672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74329
87672
} // closed Puma
74330
87673
class WinIfExists;
74331
87674
class WinImportHandler;
74346
87689
class CCExprResolve;
74347
87690
class CExprResolve;
74348
87691
namespace Puma {
74349
 
class CT_CallExpr : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
87692
 
 
87693
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87694
class CT_CallExpr : public CT_Expression, public CSemObject {
 
87695
#line 87696 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87696
  friend class ::WinIfExists;
74350
87697
  friend class ::WinImportHandler;
74351
87698
  friend class ::WinMacros;
74352
87699
  friend class ::CMatchSyntax;
74365
87712
  friend class ::CCExprResolve;
74366
87713
  friend class ::CExprResolve;
74367
87714
 
 
87715
#line 822 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87716
 
74368
87717
  CTree *sons[2]; // expr, args
74369
87718
 
74370
87719
public:
74382
87731
  CSemObject *SemObject () const { return (CSemObject*)this; }
74383
87732
   private:
74384
87733
  typedef CT_CallExpr CCExprResolveExpr;
 
87734
 
 
87735
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74385
87736
 public :
74386
87737
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74387
87738
  typedef CT_CallExpr CExprResolveExpr;
 
87739
 
 
87740
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74388
87741
 public :
74389
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74390
 
 
 
87742
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87743
#line 838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87744
};
 
87745
 
 
87746
 
 
87747
#line 87748 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74391
87748
} // closed Puma
74392
87749
class WinIfExists;
74393
87750
class WinImportHandler;
74408
87765
class CCExprResolve;
74409
87766
class CExprResolve;
74410
87767
namespace Puma {
74411
 
class CT_CastExpr : public CT_Expression {  friend class ::WinIfExists;
 
87768
 
 
87769
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87770
class CT_CastExpr : public CT_Expression {
 
87771
#line 87772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87772
  friend class ::WinIfExists;
74412
87773
  friend class ::WinImportHandler;
74413
87774
  friend class ::WinMacros;
74414
87775
  friend class ::CMatchSyntax;
74427
87788
  friend class ::CCExprResolve;
74428
87789
  friend class ::CExprResolve;
74429
87790
 
 
87791
#line 840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87792
 
74430
87793
  CTree *sons[4]; // open, type, close, expr
74431
87794
 
74432
87795
public:
74444
87807
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[1]; }
74445
87808
   private:
74446
87809
  typedef CT_CastExpr CCExprResolveExpr;
 
87810
 
 
87811
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74447
87812
 public :
74448
87813
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74449
87814
  typedef CT_CastExpr CExprResolveExpr;
 
87815
 
 
87816
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74450
87817
 public :
74451
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74452
 
 
 
87818
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87819
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87820
};
 
87821
 
 
87822
 
 
87823
#line 87824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74453
87824
} // closed Puma
74454
87825
class WinIfExists;
74455
87826
class WinImportHandler;
74470
87841
class CCExprResolve;
74471
87842
class CExprResolve;
74472
87843
namespace Puma {
74473
 
class CT_StaticCast : public CT_Expression {  friend class ::WinIfExists;
 
87844
 
 
87845
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87846
class CT_StaticCast : public CT_Expression {
 
87847
#line 87848 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87848
  friend class ::WinIfExists;
74474
87849
  friend class ::WinImportHandler;
74475
87850
  friend class ::WinMacros;
74476
87851
  friend class ::CMatchSyntax;
74489
87864
  friend class ::CCExprResolve;
74490
87865
  friend class ::CExprResolve;
74491
87866
 
 
87867
#line 858 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87868
 
74492
87869
  CTree *sons[5]; // cast, open, type, close, expr
74493
87870
 
74494
87871
public:
74506
87883
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
74507
87884
   private:
74508
87885
  typedef CT_StaticCast CCExprResolveExpr;
 
87886
 
 
87887
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74509
87888
 public :
74510
87889
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74511
87890
  typedef CT_StaticCast CExprResolveExpr;
 
87891
 
 
87892
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74512
87893
 public :
74513
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74514
 
 
 
87894
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87895
#line 874 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87896
};
 
87897
 
 
87898
 
 
87899
#line 87900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74515
87900
} // closed Puma
74516
87901
class WinIfExists;
74517
87902
class WinImportHandler;
74532
87917
class CCExprResolve;
74533
87918
class CExprResolve;
74534
87919
namespace Puma {
74535
 
class CT_ConstCast : public CT_StaticCast {  friend class ::WinIfExists;
 
87920
 
 
87921
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87922
class CT_ConstCast : public CT_StaticCast {
 
87923
#line 87924 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87924
  friend class ::WinIfExists;
74536
87925
  friend class ::WinImportHandler;
74537
87926
  friend class ::WinMacros;
74538
87927
  friend class ::CMatchSyntax;
74551
87940
  friend class ::CCExprResolve;
74552
87941
  friend class ::CExprResolve;
74553
87942
 
 
87943
#line 876 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87944
 
74554
87945
public:
74555
87946
  CT_ConstCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
74556
87947
    CT_StaticCast (cst, o, t, c, e) {}
74558
87949
  const char *NodeName () const { return NodeId (); }
74559
87950
   private:
74560
87951
  typedef CT_ConstCast CCExprResolveExpr;
 
87952
 
 
87953
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74561
87954
 public :
74562
87955
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74563
87956
  typedef CT_ConstCast CExprResolveExpr;
 
87957
 
 
87958
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74564
87959
 public :
74565
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74566
 
 
 
87960
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
87961
#line 882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87962
};
 
87963
 
 
87964
 
 
87965
#line 87966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74567
87966
} // closed Puma
74568
87967
class WinIfExists;
74569
87968
class WinImportHandler;
74584
87983
class CCExprResolve;
74585
87984
class CExprResolve;
74586
87985
namespace Puma {
74587
 
class CT_ReintCast : public CT_StaticCast {  friend class ::WinIfExists;
 
87986
 
 
87987
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
87988
class CT_ReintCast : public CT_StaticCast {
 
87989
#line 87990 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
87990
  friend class ::WinIfExists;
74588
87991
  friend class ::WinImportHandler;
74589
87992
  friend class ::WinMacros;
74590
87993
  friend class ::CMatchSyntax;
74603
88006
  friend class ::CCExprResolve;
74604
88007
  friend class ::CExprResolve;
74605
88008
 
 
88009
#line 884 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88010
 
74606
88011
public:
74607
88012
  CT_ReintCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
74608
88013
    CT_StaticCast (cst, o, t, c, e) {}
74610
88015
  const char *NodeName () const { return NodeId (); }
74611
88016
   private:
74612
88017
  typedef CT_ReintCast CCExprResolveExpr;
 
88018
 
 
88019
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74613
88020
 public :
74614
88021
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74615
88022
  typedef CT_ReintCast CExprResolveExpr;
 
88023
 
 
88024
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74616
88025
 public :
74617
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74618
 
 
 
88026
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
88027
#line 890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88028
};
 
88029
 
 
88030
 
 
88031
#line 88032 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74619
88032
} // closed Puma
74620
88033
class WinIfExists;
74621
88034
class WinImportHandler;
74636
88049
class CCExprResolve;
74637
88050
class CExprResolve;
74638
88051
namespace Puma {
74639
 
class CT_DynamicCast : public CT_StaticCast {  friend class ::WinIfExists;
 
88052
 
 
88053
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88054
class CT_DynamicCast : public CT_StaticCast {
 
88055
#line 88056 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88056
  friend class ::WinIfExists;
74640
88057
  friend class ::WinImportHandler;
74641
88058
  friend class ::WinMacros;
74642
88059
  friend class ::CMatchSyntax;
74655
88072
  friend class ::CCExprResolve;
74656
88073
  friend class ::CExprResolve;
74657
88074
 
 
88075
#line 892 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88076
 
74658
88077
public:
74659
88078
  CT_DynamicCast (CTree *cst, CTree *o, CTree *t, CTree *c, CTree *e) :
74660
88079
    CT_StaticCast (cst, o, t, c, e) {}
74662
88081
  const char *NodeName () const { return NodeId (); }
74663
88082
   private:
74664
88083
  typedef CT_DynamicCast CCExprResolveExpr;
 
88084
 
 
88085
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74665
88086
 public :
74666
88087
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74667
88088
  typedef CT_DynamicCast CExprResolveExpr;
 
88089
 
 
88090
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74668
88091
 public :
74669
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74670
 
 
 
88092
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
88093
#line 898 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88094
};
 
88095
 
 
88096
 
 
88097
#line 88098 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74671
88098
} // closed Puma
74672
88099
class WinIfExists;
74673
88100
class WinImportHandler;
74688
88115
class CCExprResolve;
74689
88116
class CExprResolve;
74690
88117
namespace Puma {
74691
 
class CT_ImplicitCast : public CT_Expression {  friend class ::WinIfExists;
 
88118
 
 
88119
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88120
class CT_ImplicitCast : public CT_Expression {
 
88121
#line 88122 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88122
  friend class ::WinIfExists;
74692
88123
  friend class ::WinImportHandler;
74693
88124
  friend class ::WinMacros;
74694
88125
  friend class ::CMatchSyntax;
74707
88138
  friend class ::CCExprResolve;
74708
88139
  friend class ::CExprResolve;
74709
88140
 
 
88141
#line 900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88142
 
74710
88143
  CTree *_expr; // casted expression
74711
88144
 
74712
88145
public:
74720
88153
   { if (old_son == _expr) _expr = new_son; }
74721
88154
   private:
74722
88155
  typedef CT_ImplicitCast CCExprResolveExpr;
 
88156
 
 
88157
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74723
88158
 public :
74724
88159
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74725
88160
  typedef CT_ImplicitCast CExprResolveExpr;
 
88161
 
 
88162
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74726
88163
 public :
74727
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74728
 
 
 
88164
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
88165
#line 912 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88166
};
 
88167
 
 
88168
 
 
88169
#line 88170 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74729
88170
} // closed Puma
74730
88171
class WinIfExists;
74731
88172
class WinImportHandler;
74746
88187
class CCExprResolve;
74747
88188
class CExprResolve;
74748
88189
namespace Puma {
74749
 
class CT_TypeidExpr : public CT_Expression {  friend class ::WinIfExists;
 
88190
 
 
88191
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88192
class CT_TypeidExpr : public CT_Expression {
 
88193
#line 88194 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88194
  friend class ::WinIfExists;
74750
88195
  friend class ::WinImportHandler;
74751
88196
  friend class ::WinMacros;
74752
88197
  friend class ::CMatchSyntax;
74765
88210
  friend class ::CCExprResolve;
74766
88211
  friend class ::CExprResolve;
74767
88212
 
 
88213
#line 914 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88214
 
74768
88215
  CTree *sons[4]; // typeid, open, type_id/expr, close
74769
88216
 
74770
88217
public:
74781
88228
  CTree *Arg () const { return sons[2]; }
74782
88229
   private:
74783
88230
  typedef CT_TypeidExpr CCExprResolveExpr;
 
88231
 
 
88232
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74784
88233
 public :
74785
88234
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74786
88235
  typedef CT_TypeidExpr CExprResolveExpr;
 
88236
 
 
88237
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74787
88238
 public :
74788
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74789
 
 
 
88239
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
88240
#line 929 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88241
};
 
88242
 
 
88243
 
 
88244
#line 88245 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74790
88245
} // closed Puma
74791
88246
class WinIfExists;
74792
88247
class WinImportHandler;
74807
88262
class CCExprResolve;
74808
88263
class CExprResolve;
74809
88264
namespace Puma {
74810
 
class CT_SizeofExpr : public CT_Expression {  friend class ::WinIfExists;
 
88265
 
 
88266
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88267
class CT_SizeofExpr : public CT_Expression {
 
88268
#line 88269 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88269
  friend class ::WinIfExists;
74811
88270
  friend class ::WinImportHandler;
74812
88271
  friend class ::WinMacros;
74813
88272
  friend class ::CMatchSyntax;
74826
88285
  friend class ::CCExprResolve;
74827
88286
  friend class ::CExprResolve;
74828
88287
 
 
88288
#line 931 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88289
 
74829
88290
  CTree *sons[5]; // key, open, type, close, expr
74830
88291
 
74831
88292
public:
74846
88307
  CT_NamedType *TypeName () const { return (CT_NamedType*)sons[2]; }
74847
88308
   private:
74848
88309
  typedef CT_SizeofExpr CCExprResolveExpr;
 
88310
 
 
88311
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74849
88312
 public :
74850
88313
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74851
88314
  typedef CT_SizeofExpr CExprResolveExpr;
 
88315
 
 
88316
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74852
88317
 public :
74853
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74854
 
 
 
88318
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
88319
#line 950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88320
};
 
88321
 
 
88322
 
 
88323
#line 88324 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74855
88324
} // closed Puma
74856
88325
class WinIfExists;
74857
88326
class WinImportHandler;
74872
88341
class CCExprResolve;
74873
88342
class CExprResolve;
74874
88343
namespace Puma {
74875
 
class CT_IndexDesignator : public CT_Expression {  friend class ::WinIfExists;
 
88344
 
 
88345
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88346
class CT_IndexDesignator : public CT_Expression {
 
88347
#line 88348 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88348
  friend class ::WinIfExists;
74876
88349
  friend class ::WinImportHandler;
74877
88350
  friend class ::WinMacros;
74878
88351
  friend class ::CMatchSyntax;
74891
88364
  friend class ::CCExprResolve;
74892
88365
  friend class ::CExprResolve;
74893
88366
 
 
88367
#line 952 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88368
 
74894
88369
  CTree *sons[3]; // open, index, close
74895
88370
 
74896
88371
public:
74906
88381
  }
74907
88382
   private:
74908
88383
  typedef CT_IndexDesignator CCExprResolveExpr;
 
88384
 
 
88385
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74909
88386
 public :
74910
88387
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74911
88388
  typedef CT_IndexDesignator CExprResolveExpr;
 
88389
 
 
88390
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74912
88391
 public :
74913
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74914
 
 
 
88392
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
88393
#line 966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88394
};
 
88395
 
 
88396
 
 
88397
#line 88398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74915
88398
} // closed Puma
74916
88399
class WinIfExists;
74917
88400
class WinImportHandler;
74932
88415
class CCExprResolve;
74933
88416
class CExprResolve;
74934
88417
namespace Puma {
74935
 
class CT_MembDesignator : public CT_Expression {  friend class ::WinIfExists;
 
88418
 
 
88419
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88420
class CT_MembDesignator : public CT_Expression {
 
88421
#line 88422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88422
  friend class ::WinIfExists;
74936
88423
  friend class ::WinImportHandler;
74937
88424
  friend class ::WinMacros;
74938
88425
  friend class ::CMatchSyntax;
74951
88438
  friend class ::CCExprResolve;
74952
88439
  friend class ::CExprResolve;
74953
88440
 
 
88441
#line 968 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88442
 
74954
88443
  CTree *sons[2]; // dot, member
74955
88444
 
74956
88445
public:
74964
88453
  }
74965
88454
   private:
74966
88455
  typedef CT_MembDesignator CCExprResolveExpr;
 
88456
 
 
88457
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
74967
88458
 public :
74968
88459
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
74969
88460
  typedef CT_MembDesignator CExprResolveExpr;
 
88461
 
 
88462
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
74970
88463
 public :
74971
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
74972
 
 
 
88464
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
88465
#line 980 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88466
};
 
88467
 
 
88468
 
 
88469
#line 88470 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
74973
88470
} // closed Puma
74974
88471
class WinIfExists;
74975
88472
class WinImportHandler;
74990
88487
class CCExprResolve;
74991
88488
class CExprResolve;
74992
88489
namespace Puma {
74993
 
class CT_DesignatorSeq : public CT_List, public CSemValue {  friend class ::WinIfExists;
 
88490
 
 
88491
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88492
class CT_DesignatorSeq : public CT_List, public CSemValue {
 
88493
#line 88494 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88494
  friend class ::WinIfExists;
74994
88495
  friend class ::WinImportHandler;
74995
88496
  friend class ::WinMacros;
74996
88497
  friend class ::CMatchSyntax;
75009
88510
  friend class ::CCExprResolve;
75010
88511
  friend class ::CExprResolve;
75011
88512
 
 
88513
#line 982 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88514
 
75012
88515
public:
75013
88516
  CT_DesignatorSeq (int size = 1) : CT_List (size, 2) {}
75014
88517
  static const char *NodeId ();
75025
88528
/*                                                                           */
75026
88529
/*****************************************************************************/
75027
88530
 
 
88531
 
 
88532
#line 88533 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75028
88533
} // closed Puma
75029
88534
class WinIfExists;
75030
88535
class WinImportHandler;
75045
88550
class CCExprResolve;
75046
88551
class CExprResolve;
75047
88552
namespace Puma {
75048
 
class CT_DeclSpec : public CTree {  friend class ::WinIfExists;
 
88553
 
 
88554
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88555
class CT_DeclSpec : public CTree {
 
88556
#line 88557 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88557
  friend class ::WinIfExists;
75049
88558
  friend class ::WinImportHandler;
75050
88559
  friend class ::WinMacros;
75051
88560
  friend class ::CMatchSyntax;
75064
88573
  friend class ::CCExprResolve;
75065
88574
  friend class ::CExprResolve;
75066
88575
 
 
88576
#line 999 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88577
 
75067
88578
protected:
75068
88579
  CT_DeclSpec () {}
75069
88580
};
75070
88581
 
 
88582
 
 
88583
#line 88584 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75071
88584
} // closed Puma
75072
88585
class WinIfExists;
75073
88586
class WinImportHandler;
75088
88601
class CCExprResolve;
75089
88602
class CExprResolve;
75090
88603
namespace Puma {
75091
 
class CT_PrimDeclSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
88604
 
 
88605
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88606
class CT_PrimDeclSpec : public CT_DeclSpec {
 
88607
#line 88608 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88608
  friend class ::WinIfExists;
75092
88609
  friend class ::WinImportHandler;
75093
88610
  friend class ::WinMacros;
75094
88611
  friend class ::CMatchSyntax;
75107
88624
  friend class ::CCExprResolve;
75108
88625
  friend class ::CExprResolve;
75109
88626
 
 
88627
#line 1004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88628
 
75110
88629
public:
75111
88630
  enum Type { PDS_FRIEND, PDS_TYPEDEF, PDS_AUTO, PDS_REGISTER, PDS_STATIC, 
75112
88631
              PDS_EXTERN, PDS_MUTABLE, PDS_INLINE, PDS_VIRTUAL, PDS_EXPLICIT, 
75139
88658
  static const int NumTypes = PDS_NUM;
75140
88659
};
75141
88660
 
 
88661
 
 
88662
#line 88663 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75142
88663
} // closed Puma
75143
88664
class WinIfExists;
75144
88665
class WinImportHandler;
75159
88680
class CCExprResolve;
75160
88681
class CExprResolve;
75161
88682
namespace Puma {
75162
 
class CT_NamedType : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
88683
 
 
88684
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88685
class CT_NamedType : public CT_DeclSpec, public CSemObject {
 
88686
#line 88687 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88687
  friend class ::WinIfExists;
75163
88688
  friend class ::WinImportHandler;
75164
88689
  friend class ::WinMacros;
75165
88690
  friend class ::CMatchSyntax;
75178
88703
  friend class ::CCExprResolve;
75179
88704
  friend class ::CExprResolve;
75180
88705
 
 
88706
#line 1037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88707
 
75181
88708
  CTree *sons[2]; // declspecs, declarator
75182
88709
 
75183
88710
public:
75193
88720
  CSemObject *SemObject () const { return (CSemObject*)this; }
75194
88721
};
75195
88722
      
 
88723
 
 
88724
#line 88725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75196
88725
} // closed Puma
75197
88726
class WinIfExists;
75198
88727
class WinImportHandler;
75213
88742
class CCExprResolve;
75214
88743
class CExprResolve;
75215
88744
namespace Puma {
75216
 
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {  friend class ::WinIfExists;
 
88745
 
 
88746
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88747
class CT_ClassSpec : public CT_DeclSpec, public CSemObject {
 
88748
#line 88749 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88749
  friend class ::WinIfExists;
75217
88750
  friend class ::WinImportHandler;
75218
88751
  friend class ::WinMacros;
75219
88752
  friend class ::CMatchSyntax;
75232
88765
  friend class ::CCExprResolve;
75233
88766
  friend class ::CExprResolve;
75234
88767
 
 
88768
#line 1053 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88769
 
75235
88770
  CTree *sons[2]; // key, name
75236
88771
  
75237
88772
public:
75247
88782
  }
75248
88783
};
75249
88784
 
 
88785
 
 
88786
#line 88787 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75250
88787
} // closed Puma
75251
88788
class WinIfExists;
75252
88789
class WinImportHandler;
75267
88804
class CCExprResolve;
75268
88805
class CExprResolve;
75269
88806
namespace Puma {
75270
 
class CT_UnionSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
88807
 
 
88808
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88809
class CT_UnionSpec : public CT_ClassSpec {
 
88810
#line 88811 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88811
  friend class ::WinIfExists;
75271
88812
  friend class ::WinImportHandler;
75272
88813
  friend class ::WinMacros;
75273
88814
  friend class ::CMatchSyntax;
75286
88827
  friend class ::CCExprResolve;
75287
88828
  friend class ::CExprResolve;
75288
88829
 
 
88830
#line 1069 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88831
 
75289
88832
public:
75290
88833
  CT_UnionSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
75291
88834
  static const char *NodeId ();
75292
88835
  const char *NodeName () const { return NodeId (); }
75293
88836
};
75294
88837
 
 
88838
 
 
88839
#line 88840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75295
88840
} // closed Puma
75296
88841
class WinIfExists;
75297
88842
class WinImportHandler;
75312
88857
class CCExprResolve;
75313
88858
class CExprResolve;
75314
88859
namespace Puma {
75315
 
class CT_EnumSpec : public CT_ClassSpec {  friend class ::WinIfExists;
 
88860
 
 
88861
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88862
class CT_EnumSpec : public CT_ClassSpec {
 
88863
#line 88864 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88864
  friend class ::WinIfExists;
75316
88865
  friend class ::WinImportHandler;
75317
88866
  friend class ::WinMacros;
75318
88867
  friend class ::CMatchSyntax;
75331
88880
  friend class ::CCExprResolve;
75332
88881
  friend class ::CExprResolve;
75333
88882
 
 
88883
#line 1076 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88884
 
75334
88885
public:
75335
88886
  CT_EnumSpec (CTree *k, CTree *n) : CT_ClassSpec (k, n) {}
75336
88887
  static const char *NodeId ();
75337
88888
  const char *NodeName () const { return NodeId (); }
75338
88889
};
75339
88890
 
 
88891
 
 
88892
#line 88893 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75340
88893
} // closed Puma
75341
88894
class WinIfExists;
75342
88895
class WinImportHandler;
75357
88910
class CCExprResolve;
75358
88911
class CExprResolve;
75359
88912
namespace Puma {
75360
 
class CT_ExceptionSpec : public CT_DeclSpec {  friend class ::WinIfExists;
 
88913
 
 
88914
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88915
class CT_ExceptionSpec : public CT_DeclSpec {
 
88916
#line 88917 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88917
  friend class ::WinIfExists;
75361
88918
  friend class ::WinImportHandler;
75362
88919
  friend class ::WinMacros;
75363
88920
  friend class ::CMatchSyntax;
75376
88933
  friend class ::CCExprResolve;
75377
88934
  friend class ::CExprResolve;
75378
88935
 
 
88936
#line 1083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88937
 
75379
88938
  CTree *sons[2]; // throw, type_id_list
75380
88939
  
75381
88940
public:
75396
88955
/*                                                                           */
75397
88956
/*****************************************************************************/
75398
88957
 
 
88958
 
 
88959
#line 88960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75399
88960
} // closed Puma
75400
88961
class WinIfExists;
75401
88962
class WinImportHandler;
75416
88977
class CCExprResolve;
75417
88978
class CExprResolve;
75418
88979
namespace Puma {
75419
 
class CT_Decl : public CTree {  friend class ::WinIfExists;
 
88980
 
 
88981
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
88982
class CT_Decl : public CTree {
 
88983
#line 88984 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
88984
  friend class ::WinIfExists;
75420
88985
  friend class ::WinImportHandler;
75421
88986
  friend class ::WinMacros;
75422
88987
  friend class ::CMatchSyntax;
75434
88999
  friend class ::PragmaOnce;
75435
89000
  friend class ::CCExprResolve;
75436
89001
  friend class ::CExprResolve;
 
89002
 
 
89003
#line 1104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
75437
89004
 
75438
89005
  CT_LinkageSpec *_linkage;
75439
89006
protected:
75443
89010
  CT_LinkageSpec *Linkage () const { return _linkage; }
75444
89011
};
75445
89012
 
 
89013
 
 
89014
#line 89015 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75446
89015
} // closed Puma
75447
89016
class WinIfExists;
75448
89017
class WinImportHandler;
75463
89032
class CCExprResolve;
75464
89033
class CExprResolve;
75465
89034
namespace Puma {
75466
 
class CT_Program : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
89035
 
 
89036
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89037
class CT_Program : public CT_DeclList, public CSemScope {
 
89038
#line 89039 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89039
  friend class ::WinIfExists;
75467
89040
  friend class ::WinImportHandler;
75468
89041
  friend class ::WinMacros;
75469
89042
  friend class ::CMatchSyntax;
75482
89055
  friend class ::CCExprResolve;
75483
89056
  friend class ::CExprResolve;
75484
89057
 
 
89058
#line 1113 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89059
 
75485
89060
public:
75486
89061
  CT_Program (int size = 20, int incr = 20) : CT_DeclList (size, incr) {}
75487
89062
  static const char *NodeId ();
75488
89063
  const char *NodeName () const { return NodeId (); }
75489
89064
};
75490
89065
   
 
89066
 
 
89067
#line 89068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75491
89068
} // closed Puma
75492
89069
class WinIfExists;
75493
89070
class WinImportHandler;
75508
89085
class CCExprResolve;
75509
89086
class CExprResolve;
75510
89087
namespace Puma {
75511
 
class CT_ObjDecl : public CT_Decl {  friend class ::WinIfExists;
 
89088
 
 
89089
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89090
class CT_ObjDecl : public CT_Decl {
 
89091
#line 89092 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89092
  friend class ::WinIfExists;
75512
89093
  friend class ::WinImportHandler;
75513
89094
  friend class ::WinMacros;
75514
89095
  friend class ::CMatchSyntax;
75527
89108
  friend class ::CCExprResolve;
75528
89109
  friend class ::CExprResolve;
75529
89110
 
 
89111
#line 1120 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89112
 
75530
89113
  CTree *sons[3]; // declspecs, declarators, colon
75531
89114
 
75532
89115
public:
75544
89127
  }
75545
89128
};
75546
89129
 
 
89130
 
 
89131
#line 89132 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75547
89132
} // closed Puma
75548
89133
class WinIfExists;
75549
89134
class WinImportHandler;
75564
89149
class CCExprResolve;
75565
89150
class CExprResolve;
75566
89151
namespace Puma {
75567
 
class CT_TemplateDecl : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
89152
 
 
89153
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89154
class CT_TemplateDecl : public CT_Decl, public CSemScope {
 
89155
#line 89156 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89156
  friend class ::WinIfExists;
75568
89157
  friend class ::WinImportHandler;
75569
89158
  friend class ::WinMacros;
75570
89159
  friend class ::CMatchSyntax;
75583
89172
  friend class ::CCExprResolve;
75584
89173
  friend class ::CExprResolve;
75585
89174
 
 
89175
#line 1138 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89176
 
75586
89177
  CTree *sons[3]; // export, param_list, decl
75587
89178
 
75588
89179
public:
75603
89194
  CTree *Declaration () const { return sons[2]; }
75604
89195
};
75605
89196
 
 
89197
 
 
89198
#line 89199 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75606
89199
} // closed Puma
75607
89200
class WinIfExists;
75608
89201
class WinImportHandler;
75623
89216
class CCExprResolve;
75624
89217
class CExprResolve;
75625
89218
namespace Puma {
75626
 
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
89219
 
 
89220
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89221
class CT_TemplateParamDecl : public CT_Decl, public CSemObject {
 
89222
#line 89223 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89223
  friend class ::WinIfExists;
75627
89224
  friend class ::WinImportHandler;
75628
89225
  friend class ::WinMacros;
75629
89226
  friend class ::CMatchSyntax;
75642
89239
  friend class ::CCExprResolve;
75643
89240
  friend class ::CExprResolve;
75644
89241
 
 
89242
#line 1159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89243
 
75645
89244
protected:
75646
89245
  CT_TemplateParamDecl () {}
75647
89246
  
75650
89249
  CSemObject *SemObject () const { return (CSemObject*)this; }
75651
89250
};
75652
89251
 
 
89252
 
 
89253
#line 89254 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75653
89254
} // closed Puma
75654
89255
class WinIfExists;
75655
89256
class WinImportHandler;
75670
89271
class CCExprResolve;
75671
89272
class CExprResolve;
75672
89273
namespace Puma {
75673
 
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
89274
 
 
89275
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89276
class CT_NonTypeParamDecl : public CT_TemplateParamDecl {
 
89277
#line 89278 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89278
  friend class ::WinIfExists;
75674
89279
  friend class ::WinImportHandler;
75675
89280
  friend class ::WinMacros;
75676
89281
  friend class ::CMatchSyntax;
75689
89294
  friend class ::CCExprResolve;
75690
89295
  friend class ::CExprResolve;
75691
89296
 
 
89297
#line 1168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89298
 
75692
89299
  CTree *sons[3]; // declspecs, declarator, init
75693
89300
 
75694
89301
public:
75709
89316
  }
75710
89317
};
75711
89318
 
 
89319
 
 
89320
#line 89321 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75712
89321
} // closed Puma
75713
89322
class WinIfExists;
75714
89323
class WinImportHandler;
75729
89338
class CCExprResolve;
75730
89339
class CExprResolve;
75731
89340
namespace Puma {
75732
 
class CT_TypeParamDecl : public CT_TemplateParamDecl {  friend class ::WinIfExists;
 
89341
 
 
89342
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89343
class CT_TypeParamDecl : public CT_TemplateParamDecl {
 
89344
#line 89345 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89345
  friend class ::WinIfExists;
75733
89346
  friend class ::WinImportHandler;
75734
89347
  friend class ::WinMacros;
75735
89348
  friend class ::CMatchSyntax;
75748
89361
  friend class ::CCExprResolve;
75749
89362
  friend class ::CExprResolve;
75750
89363
 
 
89364
#line 1189 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89365
 
75751
89366
  CTree *sons[4]; // params, key, id, init
75752
89367
 
75753
89368
public:
75769
89384
  }
75770
89385
};
75771
89386
 
 
89387
 
 
89388
#line 89389 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75772
89389
} // closed Puma
75773
89390
class WinIfExists;
75774
89391
class WinImportHandler;
75789
89406
class CCExprResolve;
75790
89407
class CExprResolve;
75791
89408
namespace Puma {
75792
 
class CT_EnumDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
89409
 
 
89410
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89411
class CT_EnumDef : public CT_Decl, public CSemObject {
 
89412
#line 89413 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89413
  friend class ::WinIfExists;
75793
89414
  friend class ::WinImportHandler;
75794
89415
  friend class ::WinMacros;
75795
89416
  friend class ::CMatchSyntax;
75808
89429
  friend class ::CCExprResolve;
75809
89430
  friend class ::CExprResolve;
75810
89431
 
 
89432
#line 1211 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89433
 
75811
89434
  CTree *sons[3]; // key, name, enumerators
75812
89435
 
75813
89436
public:
75827
89450
  CSemObject *SemObject () const { return (CSemObject*)this; }
75828
89451
};
75829
89452
 
 
89453
 
 
89454
#line 89455 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75830
89455
} // closed Puma
75831
89456
class WinIfExists;
75832
89457
class WinImportHandler;
75847
89472
class CCExprResolve;
75848
89473
class CExprResolve;
75849
89474
namespace Puma {
75850
 
class CT_Enumerator : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
89475
 
 
89476
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89477
class CT_Enumerator : public CT_Decl, public CSemObject {
 
89478
#line 89479 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89479
  friend class ::WinIfExists;
75851
89480
  friend class ::WinImportHandler;
75852
89481
  friend class ::WinMacros;
75853
89482
  friend class ::CMatchSyntax;
75866
89495
  friend class ::CCExprResolve;
75867
89496
  friend class ::CExprResolve;
75868
89497
 
 
89498
#line 1231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89499
 
75869
89500
  CTree *sons[2]; // name, init
75870
89501
 
75871
89502
public:
75883
89514
  CSemObject *SemObject () const { return (CSemObject*)this; }
75884
89515
};
75885
89516
 
 
89517
 
 
89518
#line 89519 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75886
89519
} // closed Puma
75887
89520
class WinIfExists;
75888
89521
class WinImportHandler;
75903
89536
class CCExprResolve;
75904
89537
class CExprResolve;
75905
89538
namespace Puma {
75906
 
class CT_FctDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
89539
 
 
89540
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89541
class CT_FctDef : public CT_Decl, public CSemObject {
 
89542
#line 89543 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89543
  friend class ::WinIfExists;
75907
89544
  friend class ::WinImportHandler;
75908
89545
  friend class ::WinMacros;
75909
89546
  friend class ::CMatchSyntax;
75922
89559
  friend class ::CCExprResolve;
75923
89560
  friend class ::CExprResolve;
75924
89561
 
 
89562
#line 1249 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89563
 
75925
89564
  CTree *sons[7]; // declspecs, declarator, try, ctor_init, args, body, handlers
75926
89565
 
75927
89566
public:
75952
89591
  }
75953
89592
};
75954
89593
 
 
89594
 
 
89595
#line 89596 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
75955
89596
} // closed Puma
75956
89597
class WinIfExists;
75957
89598
class WinImportHandler;
75972
89613
class CCExprResolve;
75973
89614
class CExprResolve;
75974
89615
namespace Puma {
75975
 
class CT_AsmDef : public CT_Decl {  friend class ::WinIfExists;
 
89616
 
 
89617
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89618
class CT_AsmDef : public CT_Decl {
 
89619
#line 89620 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89620
  friend class ::WinIfExists;
75976
89621
  friend class ::WinImportHandler;
75977
89622
  friend class ::WinMacros;
75978
89623
  friend class ::CMatchSyntax;
75991
89636
  friend class ::CCExprResolve;
75992
89637
  friend class ::CExprResolve;
75993
89638
 
 
89639
#line 1280 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89640
 
75994
89641
  CTree *sons[5]; // asm, open, str, close, semi_colon
75995
89642
 
75996
89643
public:
76007
89654
  }
76008
89655
};
76009
89656
 
 
89657
 
 
89658
#line 89659 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76010
89659
} // closed Puma
76011
89660
class WinIfExists;
76012
89661
class WinImportHandler;
76027
89676
class CCExprResolve;
76028
89677
class CExprResolve;
76029
89678
namespace Puma {
76030
 
class CT_Handler : public CT_Decl, public CSemScope {  friend class ::WinIfExists;
 
89679
 
 
89680
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89681
class CT_Handler : public CT_Decl, public CSemScope {
 
89682
#line 89683 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89683
  friend class ::WinIfExists;
76031
89684
  friend class ::WinImportHandler;
76032
89685
  friend class ::WinMacros;
76033
89686
  friend class ::CMatchSyntax;
76046
89699
  friend class ::CCExprResolve;
76047
89700
  friend class ::CExprResolve;
76048
89701
 
 
89702
#line 1297 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89703
 
76049
89704
  CTree *sons[3]; // catch, exception_decl, stmt
76050
89705
 
76051
89706
public:
76063
89718
  }
76064
89719
};
76065
89720
 
 
89721
 
 
89722
#line 89723 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76066
89723
} // closed Puma
76067
89724
class WinIfExists;
76068
89725
class WinImportHandler;
76083
89740
class CCExprResolve;
76084
89741
class CExprResolve;
76085
89742
namespace Puma {
76086
 
class CT_LinkageSpec : public CT_Decl {  friend class ::WinIfExists;
 
89743
 
 
89744
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89745
class CT_LinkageSpec : public CT_Decl {
 
89746
#line 89747 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89747
  friend class ::WinIfExists;
76087
89748
  friend class ::WinImportHandler;
76088
89749
  friend class ::WinMacros;
76089
89750
  friend class ::CMatchSyntax;
76102
89763
  friend class ::CCExprResolve;
76103
89764
  friend class ::CExprResolve;
76104
89765
 
 
89766
#line 1315 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89767
 
76105
89768
  CTree *sons[5]; // extern, str, open, decls, close
76106
89769
 
76107
89770
public:
76126
89789
  }
76127
89790
};
76128
89791
 
 
89792
 
 
89793
#line 89794 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76129
89794
} // closed Puma
76130
89795
class WinIfExists;
76131
89796
class WinImportHandler;
76146
89811
class CCExprResolve;
76147
89812
class CExprResolve;
76148
89813
namespace Puma {
76149
 
class CT_ArgDecl : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
89814
 
 
89815
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89816
class CT_ArgDecl : public CT_Decl, public CSemObject {
 
89817
#line 89818 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89818
  friend class ::WinIfExists;
76150
89819
  friend class ::WinImportHandler;
76151
89820
  friend class ::WinMacros;
76152
89821
  friend class ::CMatchSyntax;
76165
89834
  friend class ::CCExprResolve;
76166
89835
  friend class ::CExprResolve;
76167
89836
 
 
89837
#line 1340 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89838
 
76168
89839
  CTree *sons[4]; // declspecs, declarator, init, ellipsis
76169
89840
 
76170
89841
public:
76189
89860
  }
76190
89861
};
76191
89862
 
 
89863
 
 
89864
#line 89865 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76192
89865
} // closed Puma
76193
89866
class WinIfExists;
76194
89867
class WinImportHandler;
76209
89882
class CCExprResolve;
76210
89883
class CExprResolve;
76211
89884
namespace Puma {
76212
 
class CT_ArgDeclList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
89885
 
 
89886
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89887
class CT_ArgDeclList : public CT_DeclList, public CSemScope {
 
89888
#line 89889 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89889
  friend class ::WinIfExists;
76213
89890
  friend class ::WinImportHandler;
76214
89891
  friend class ::WinMacros;
76215
89892
  friend class ::CMatchSyntax;
76228
89905
  friend class ::CCExprResolve;
76229
89906
  friend class ::CExprResolve;
76230
89907
 
 
89908
#line 1365 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89909
 
76231
89910
public:
76232
89911
  CT_ArgDeclList (int size = 2, int props = SEPARATORS | OPEN_CLOSE) : 
76233
89912
   CT_DeclList (size, 2) { AddProperties (props); }
76235
89914
  const char *NodeName () const { return NodeId (); }
76236
89915
};
76237
89916
 
 
89917
 
 
89918
#line 89919 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76238
89919
} // closed Puma
76239
89920
class WinIfExists;
76240
89921
class WinImportHandler;
76255
89936
class CCExprResolve;
76256
89937
class CExprResolve;
76257
89938
namespace Puma {
76258
 
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
89939
 
 
89940
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89941
class CT_ArgDeclSeq : public CT_DeclList, public CSemScope {
 
89942
#line 89943 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89943
  friend class ::WinIfExists;
76259
89944
  friend class ::WinImportHandler;
76260
89945
  friend class ::WinMacros;
76261
89946
  friend class ::CMatchSyntax;
76274
89959
  friend class ::CCExprResolve;
76275
89960
  friend class ::CExprResolve;
76276
89961
 
 
89962
#line 1373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89963
 
76277
89964
public:
76278
89965
  CT_ArgDeclSeq (int size = 2) : CT_DeclList (size, 2) {}
76279
89966
  static const char *NodeId ();
76280
89967
  const char *NodeName () const { return NodeId (); }
76281
89968
};
76282
89969
 
 
89970
 
 
89971
#line 89972 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76283
89972
} // closed Puma
76284
89973
class WinIfExists;
76285
89974
class WinImportHandler;
76300
89989
class CCExprResolve;
76301
89990
class CExprResolve;
76302
89991
namespace Puma {
76303
 
class CT_ArgNameList : public CT_ArgDeclList {  friend class ::WinIfExists;
 
89992
 
 
89993
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
89994
class CT_ArgNameList : public CT_ArgDeclList {
 
89995
#line 89996 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
89996
  friend class ::WinIfExists;
76304
89997
  friend class ::WinImportHandler;
76305
89998
  friend class ::WinMacros;
76306
89999
  friend class ::CMatchSyntax;
76319
90012
  friend class ::CCExprResolve;
76320
90013
  friend class ::CExprResolve;
76321
90014
 
 
90015
#line 1380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90016
 
76322
90017
public:
76323
90018
  CT_ArgNameList () : CT_ArgDeclList () {}
76324
90019
  static const char *NodeId ();
76325
90020
  const char *NodeName () const { return NodeId (); }
76326
90021
};
76327
90022
 
 
90023
 
 
90024
#line 90025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76328
90025
} // closed Puma
76329
90026
class WinIfExists;
76330
90027
class WinImportHandler;
76345
90042
class CCExprResolve;
76346
90043
class CExprResolve;
76347
90044
namespace Puma {
76348
 
class CT_NamespaceDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
90045
 
 
90046
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90047
class CT_NamespaceDef : public CT_Decl, public CSemObject {
 
90048
#line 90049 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90049
  friend class ::WinIfExists;
76349
90050
  friend class ::WinImportHandler;
76350
90051
  friend class ::WinMacros;
76351
90052
  friend class ::CMatchSyntax;
76364
90065
  friend class ::CCExprResolve;
76365
90066
  friend class ::CExprResolve;
76366
90067
 
 
90068
#line 1387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90069
 
76367
90070
  CTree *sons[3]; // ns, name, members
76368
90071
 
76369
90072
public:
76386
90089
  }
76387
90090
};
76388
90091
 
 
90092
 
 
90093
#line 90094 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76389
90094
} // closed Puma
76390
90095
class WinIfExists;
76391
90096
class WinImportHandler;
76406
90111
class CCExprResolve;
76407
90112
class CExprResolve;
76408
90113
namespace Puma {
76409
 
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
90114
 
 
90115
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90116
class CT_NamespaceAliasDef : public CT_Decl, public CSemObject {
 
90117
#line 90118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90118
  friend class ::WinIfExists;
76410
90119
  friend class ::WinImportHandler;
76411
90120
  friend class ::WinMacros;
76412
90121
  friend class ::CMatchSyntax;
76425
90134
  friend class ::CCExprResolve;
76426
90135
  friend class ::CExprResolve;
76427
90136
 
 
90137
#line 1410 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90138
 
76428
90139
  CTree *sons[5]; // ns, alias, assign, name, semi_colon
76429
90140
 
76430
90141
public:
76443
90154
  }
76444
90155
};
76445
90156
 
 
90157
 
 
90158
#line 90159 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76446
90159
} // closed Puma
76447
90160
class WinIfExists;
76448
90161
class WinImportHandler;
76463
90176
class CCExprResolve;
76464
90177
class CExprResolve;
76465
90178
namespace Puma {
76466
 
class CT_UsingDirective : public CT_Decl {  friend class ::WinIfExists;
 
90179
 
 
90180
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90181
class CT_UsingDirective : public CT_Decl {
 
90182
#line 90183 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90183
  friend class ::WinIfExists;
76467
90184
  friend class ::WinImportHandler;
76468
90185
  friend class ::WinMacros;
76469
90186
  friend class ::CMatchSyntax;
76482
90199
  friend class ::CCExprResolve;
76483
90200
  friend class ::CExprResolve;
76484
90201
 
 
90202
#line 1429 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90203
 
76485
90204
  CTree *sons[4]; // using, ns, name, semi_colon
76486
90205
 
76487
90206
public:
76504
90223
/*                                                                           */
76505
90224
/*****************************************************************************/
76506
90225
 
 
90226
 
 
90227
#line 90228 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76507
90228
} // closed Puma
76508
90229
class WinIfExists;
76509
90230
class WinImportHandler;
76524
90245
class CCExprResolve;
76525
90246
class CExprResolve;
76526
90247
namespace Puma {
76527
 
class CT_Declarator : public CTree {  friend class ::WinIfExists;
 
90248
 
 
90249
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90250
class CT_Declarator : public CTree {
 
90251
#line 90252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90252
  friend class ::WinIfExists;
76528
90253
  friend class ::WinImportHandler;
76529
90254
  friend class ::WinMacros;
76530
90255
  friend class ::CMatchSyntax;
76543
90268
  friend class ::CCExprResolve;
76544
90269
  friend class ::CExprResolve;
76545
90270
 
 
90271
#line 1452 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90272
 
76546
90273
protected:
76547
90274
  CT_Declarator () {}
76548
90275
 
76555
90282
  CT_SimpleName *Name (CT_Declarator *&last_declarator);
76556
90283
};
76557
90284
 
 
90285
 
 
90286
#line 90287 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76558
90287
} // closed Puma
76559
90288
class WinIfExists;
76560
90289
class WinImportHandler;
76575
90304
class CCExprResolve;
76576
90305
class CExprResolve;
76577
90306
namespace Puma {
76578
 
class CT_InitDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
90307
 
 
90308
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90309
class CT_InitDeclarator : public CT_Declarator, public CSemObject {
 
90310
#line 90311 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90311
  friend class ::WinIfExists;
76579
90312
  friend class ::WinImportHandler;
76580
90313
  friend class ::WinMacros;
76581
90314
  friend class ::CMatchSyntax;
76594
90327
  friend class ::CCExprResolve;
76595
90328
  friend class ::CExprResolve;
76596
90329
 
 
90330
#line 1465 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90331
 
76597
90332
  CTree *sons[2]; // declarator, init
76598
90333
  CTree *obj_decl;
76599
90334
 
76616
90351
  }
76617
90352
};
76618
90353
 
 
90354
 
 
90355
#line 90356 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76619
90356
} // closed Puma
76620
90357
class WinIfExists;
76621
90358
class WinImportHandler;
76636
90373
class CCExprResolve;
76637
90374
class CExprResolve;
76638
90375
namespace Puma {
76639
 
class CT_BracedDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
90376
 
 
90377
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90378
class CT_BracedDeclarator : public CT_Declarator {
 
90379
#line 90380 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90380
  friend class ::WinIfExists;
76640
90381
  friend class ::WinImportHandler;
76641
90382
  friend class ::WinMacros;
76642
90383
  friend class ::CMatchSyntax;
76655
90396
  friend class ::CCExprResolve;
76656
90397
  friend class ::CExprResolve;
76657
90398
 
 
90399
#line 1488 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90400
 
76658
90401
  CTree *sons[4]; // open, win_specs, declarator, close
76659
90402
 
76660
90403
public:
76674
90417
  }
76675
90418
};
76676
90419
 
 
90420
 
 
90421
#line 90422 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76677
90422
} // closed Puma
76678
90423
class WinIfExists;
76679
90424
class WinImportHandler;
76694
90439
class CCExprResolve;
76695
90440
class CExprResolve;
76696
90441
namespace Puma {
76697
 
class CT_ArrayDelimiter : public CTree {  friend class ::WinIfExists;
 
90442
 
 
90443
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90444
class CT_ArrayDelimiter : public CTree {
 
90445
#line 90446 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90446
  friend class ::WinIfExists;
76698
90447
  friend class ::WinImportHandler;
76699
90448
  friend class ::WinMacros;
76700
90449
  friend class ::CMatchSyntax;
76713
90462
  friend class ::CCExprResolve;
76714
90463
  friend class ::CExprResolve;
76715
90464
 
 
90465
#line 1508 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90466
 
76716
90467
  CTree *sons[4]; // star, static, quals, expr
76717
90468
  bool pos0;
76718
90469
 
76733
90484
  }
76734
90485
};
76735
90486
 
 
90487
 
 
90488
#line 90489 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76736
90489
} // closed Puma
76737
90490
class WinIfExists;
76738
90491
class WinImportHandler;
76753
90506
class CCExprResolve;
76754
90507
class CExprResolve;
76755
90508
namespace Puma {
76756
 
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {  friend class ::WinIfExists;
 
90509
 
 
90510
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90511
class CT_ArrayDeclarator : public CT_Declarator, public CSemValue {
 
90512
#line 90513 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90513
  friend class ::WinIfExists;
76757
90514
  friend class ::WinImportHandler;
76758
90515
  friend class ::WinMacros;
76759
90516
  friend class ::CMatchSyntax;
76772
90529
  friend class ::CCExprResolve;
76773
90530
  friend class ::CExprResolve;
76774
90531
 
 
90532
#line 1529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90533
 
76775
90534
  CTree *sons[4]; // declarator, open, delim, close
76776
90535
 
76777
90536
public:
76793
90552
  CSemValue *SemValue () const { return (CSemValue*)this; }
76794
90553
};
76795
90554
 
 
90555
 
 
90556
#line 90557 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76796
90557
} // closed Puma
76797
90558
class WinIfExists;
76798
90559
class WinImportHandler;
76813
90574
class CCExprResolve;
76814
90575
class CExprResolve;
76815
90576
namespace Puma {
76816
 
class CT_FctDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
90577
 
 
90578
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90579
class CT_FctDeclarator : public CT_Declarator {
 
90580
#line 90581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90581
  friend class ::WinIfExists;
76817
90582
  friend class ::WinImportHandler;
76818
90583
  friend class ::WinMacros;
76819
90584
  friend class ::CMatchSyntax;
76832
90597
  friend class ::CCExprResolve;
76833
90598
  friend class ::CExprResolve;
76834
90599
 
 
90600
#line 1551 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90601
 
76835
90602
  CTree *sons[4]; // declarator, args, cv_quals, exception_specs
76836
90603
 
76837
90604
public:
76851
90618
  }
76852
90619
};
76853
90620
 
 
90621
 
 
90622
#line 90623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76854
90623
} // closed Puma
76855
90624
class WinIfExists;
76856
90625
class WinImportHandler;
76871
90640
class CCExprResolve;
76872
90641
class CExprResolve;
76873
90642
namespace Puma {
76874
 
class CT_RefDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
90643
 
 
90644
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90645
class CT_RefDeclarator : public CT_Declarator {
 
90646
#line 90647 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90647
  friend class ::WinIfExists;
76875
90648
  friend class ::WinImportHandler;
76876
90649
  friend class ::WinMacros;
76877
90650
  friend class ::CMatchSyntax;
76890
90663
  friend class ::CCExprResolve;
76891
90664
  friend class ::CExprResolve;
76892
90665
 
 
90666
#line 1571 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90667
 
76893
90668
  CTree *sons[2]; // ref, declarator
76894
90669
 
76895
90670
public:
76904
90679
  }
76905
90680
};
76906
90681
 
 
90682
 
 
90683
#line 90684 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76907
90684
} // closed Puma
76908
90685
class WinIfExists;
76909
90686
class WinImportHandler;
76924
90701
class CCExprResolve;
76925
90702
class CExprResolve;
76926
90703
namespace Puma {
76927
 
class CT_PtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
90704
 
 
90705
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90706
class CT_PtrDeclarator : public CT_Declarator {
 
90707
#line 90708 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90708
  friend class ::WinIfExists;
76928
90709
  friend class ::WinImportHandler;
76929
90710
  friend class ::WinMacros;
76930
90711
  friend class ::CMatchSyntax;
76943
90724
  friend class ::CCExprResolve;
76944
90725
  friend class ::CExprResolve;
76945
90726
 
 
90727
#line 1586 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90728
 
76946
90729
  CTree *sons[3]; // ptr, cv_quals, declarator
76947
90730
 
76948
90731
public:
76960
90743
  }
76961
90744
};
76962
90745
 
 
90746
 
 
90747
#line 90748 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
76963
90748
} // closed Puma
76964
90749
class WinIfExists;
76965
90750
class WinImportHandler;
76980
90765
class CCExprResolve;
76981
90766
class CExprResolve;
76982
90767
namespace Puma {
76983
 
class CT_MembPtrDeclarator : public CT_Declarator {  friend class ::WinIfExists;
 
90768
 
 
90769
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90770
class CT_MembPtrDeclarator : public CT_Declarator {
 
90771
#line 90772 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90772
  friend class ::WinIfExists;
76984
90773
  friend class ::WinImportHandler;
76985
90774
  friend class ::WinMacros;
76986
90775
  friend class ::CMatchSyntax;
76999
90788
  friend class ::CCExprResolve;
77000
90789
  friend class ::CExprResolve;
77001
90790
 
 
90791
#line 1604 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90792
 
77002
90793
  CTree *sons[5]; // class, colon, ptr, cv_quals, declarator
77003
90794
 
77004
90795
public:
77017
90808
  }
77018
90809
};
77019
90810
 
 
90811
 
 
90812
#line 90813 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77020
90813
} // closed Puma
77021
90814
class WinIfExists;
77022
90815
class WinImportHandler;
77037
90830
class CCExprResolve;
77038
90831
class CExprResolve;
77039
90832
namespace Puma {
77040
 
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {  friend class ::WinIfExists;
 
90833
 
 
90834
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90835
class CT_BitFieldDeclarator : public CT_Declarator, public CSemObject {
 
90836
#line 90837 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90837
  friend class ::WinIfExists;
77041
90838
  friend class ::WinImportHandler;
77042
90839
  friend class ::WinMacros;
77043
90840
  friend class ::CMatchSyntax;
77056
90853
  friend class ::CCExprResolve;
77057
90854
  friend class ::CExprResolve;
77058
90855
 
 
90856
#line 1623 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90857
 
77059
90858
  CTree *sons[3]; // declarator, colon, expr
77060
90859
 
77061
90860
public:
77081
90880
/*                                                                           */
77082
90881
/*****************************************************************************/
77083
90882
 
 
90883
 
 
90884
#line 90885 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77084
90885
} // closed Puma
77085
90886
class WinIfExists;
77086
90887
class WinImportHandler;
77101
90902
class CCExprResolve;
77102
90903
class CExprResolve;
77103
90904
namespace Puma {
77104
 
class CT_Statement : public CTree {  friend class ::WinIfExists;
 
90905
 
 
90906
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90907
class CT_Statement : public CTree {
 
90908
#line 90909 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90909
  friend class ::WinIfExists;
77105
90910
  friend class ::WinImportHandler;
77106
90911
  friend class ::WinMacros;
77107
90912
  friend class ::CMatchSyntax;
77119
90924
  friend class ::PragmaOnce;
77120
90925
  friend class ::CCExprResolve;
77121
90926
  friend class ::CExprResolve;
 
90927
 
 
90928
#line 1649 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
77122
90929
 
77123
90930
protected:
77124
90931
  CT_Statement () {}
77125
90932
};
77126
90933
 
 
90934
 
 
90935
#line 90936 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77127
90936
} // closed Puma
77128
90937
class WinIfExists;
77129
90938
class WinImportHandler;
77144
90953
class CCExprResolve;
77145
90954
class CExprResolve;
77146
90955
namespace Puma {
77147
 
class CT_LabelStmt : public CT_Statement {  friend class ::WinIfExists;
 
90956
 
 
90957
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90958
class CT_LabelStmt : public CT_Statement {
 
90959
#line 90960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
90960
  friend class ::WinIfExists;
77148
90961
  friend class ::WinImportHandler;
77149
90962
  friend class ::WinMacros;
77150
90963
  friend class ::CMatchSyntax;
77163
90976
  friend class ::CCExprResolve;
77164
90977
  friend class ::CExprResolve;
77165
90978
 
 
90979
#line 1654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
90980
 
77166
90981
  CTree *sons[3]; // id, colon, stmt
77167
90982
 
77168
90983
public:
77180
90995
  }
77181
90996
};
77182
90997
 
 
90998
 
 
90999
#line 91000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77183
91000
} // closed Puma
77184
91001
class WinIfExists;
77185
91002
class WinImportHandler;
77200
91017
class CCExprResolve;
77201
91018
class CExprResolve;
77202
91019
namespace Puma {
77203
 
class CT_DefaultStmt : public CT_Statement {  friend class ::WinIfExists;
 
91020
 
 
91021
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91022
class CT_DefaultStmt : public CT_Statement {
 
91023
#line 91024 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91024
  friend class ::WinIfExists;
77204
91025
  friend class ::WinImportHandler;
77205
91026
  friend class ::WinMacros;
77206
91027
  friend class ::CMatchSyntax;
77219
91040
  friend class ::CCExprResolve;
77220
91041
  friend class ::CExprResolve;
77221
91042
 
 
91043
#line 1672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91044
 
77222
91045
  CTree *sons[3]; // keyword, colon, stmt
77223
91046
 
77224
91047
public:
77235
91058
  }
77236
91059
};
77237
91060
 
 
91061
 
 
91062
#line 91063 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77238
91063
} // closed Puma
77239
91064
class WinIfExists;
77240
91065
class WinImportHandler;
77255
91080
class CCExprResolve;
77256
91081
class CExprResolve;
77257
91082
namespace Puma {
77258
 
class CT_TryStmt : public CT_Statement {  friend class ::WinIfExists;
 
91083
 
 
91084
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91085
class CT_TryStmt : public CT_Statement {
 
91086
#line 91087 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91087
  friend class ::WinIfExists;
77259
91088
  friend class ::WinImportHandler;
77260
91089
  friend class ::WinMacros;
77261
91090
  friend class ::CMatchSyntax;
77274
91103
  friend class ::CCExprResolve;
77275
91104
  friend class ::CExprResolve;
77276
91105
 
 
91106
#line 1689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91107
 
77277
91108
  CTree *sons[3]; // try, stmt, handlers
77278
91109
 
77279
91110
public:
77291
91122
  }
77292
91123
};
77293
91124
 
 
91125
 
 
91126
#line 91127 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77294
91127
} // closed Puma
77295
91128
class WinIfExists;
77296
91129
class WinImportHandler;
77311
91144
class CCExprResolve;
77312
91145
class CExprResolve;
77313
91146
namespace Puma {
77314
 
class CT_CaseStmt : public CT_Statement {  friend class ::WinIfExists;
 
91147
 
 
91148
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91149
class CT_CaseStmt : public CT_Statement {
 
91150
#line 91151 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91151
  friend class ::WinIfExists;
77315
91152
  friend class ::WinImportHandler;
77316
91153
  friend class ::WinMacros;
77317
91154
  friend class ::CMatchSyntax;
77330
91167
  friend class ::CCExprResolve;
77331
91168
  friend class ::CExprResolve;
77332
91169
 
 
91170
#line 1707 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91171
 
77333
91172
  CTree *sons[4]; // keyword, expr, colon, stmt
77334
91173
 
77335
91174
public:
77347
91186
  }
77348
91187
};
77349
91188
 
 
91189
 
 
91190
#line 91191 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77350
91191
} // closed Puma
77351
91192
class WinIfExists;
77352
91193
class WinImportHandler;
77367
91208
class CCExprResolve;
77368
91209
class CExprResolve;
77369
91210
namespace Puma {
77370
 
class CT_ExprStmt : public CT_Statement {  friend class ::WinIfExists;
 
91211
 
 
91212
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91213
class CT_ExprStmt : public CT_Statement {
 
91214
#line 91215 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91215
  friend class ::WinIfExists;
77371
91216
  friend class ::WinImportHandler;
77372
91217
  friend class ::WinMacros;
77373
91218
  friend class ::CMatchSyntax;
77386
91231
  friend class ::CCExprResolve;
77387
91232
  friend class ::CExprResolve;
77388
91233
 
 
91234
#line 1725 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91235
 
77389
91236
  CTree *sons[2]; // expr, semi_colon
77390
91237
 
77391
91238
public:
77400
91247
  }
77401
91248
};
77402
91249
 
 
91250
 
 
91251
#line 91252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77403
91252
} // closed Puma
77404
91253
class WinIfExists;
77405
91254
class WinImportHandler;
77420
91269
class CCExprResolve;
77421
91270
class CExprResolve;
77422
91271
namespace Puma {
77423
 
class CT_DeclStmt : public CT_Statement {  friend class ::WinIfExists;
 
91272
 
 
91273
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91274
class CT_DeclStmt : public CT_Statement {
 
91275
#line 91276 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91276
  friend class ::WinIfExists;
77424
91277
  friend class ::WinImportHandler;
77425
91278
  friend class ::WinMacros;
77426
91279
  friend class ::CMatchSyntax;
77439
91292
  friend class ::CCExprResolve;
77440
91293
  friend class ::CExprResolve;
77441
91294
 
 
91295
#line 1740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91296
 
77442
91297
  CTree *_decl;
77443
91298
 
77444
91299
public:
77451
91306
   { if (old_son == _decl) _decl = new_son; }
77452
91307
};
77453
91308
 
 
91309
 
 
91310
#line 91311 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77454
91311
} // closed Puma
77455
91312
class WinIfExists;
77456
91313
class WinImportHandler;
77471
91328
class CCExprResolve;
77472
91329
class CExprResolve;
77473
91330
namespace Puma {
77474
 
class CT_SwitchStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
91331
 
 
91332
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91333
class CT_SwitchStmt : public CT_Statement, public CSemScope {
 
91334
#line 91335 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91335
  friend class ::WinIfExists;
77475
91336
  friend class ::WinImportHandler;
77476
91337
  friend class ::WinMacros;
77477
91338
  friend class ::CMatchSyntax;
77490
91351
  friend class ::CCExprResolve;
77491
91352
  friend class ::CExprResolve;
77492
91353
 
 
91354
#line 1753 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91355
 
77493
91356
  CTree *sons[5]; // keyword, open, cond, close, stmt
77494
91357
 
77495
91358
public:
77507
91370
  }
77508
91371
};
77509
91372
 
 
91373
 
 
91374
#line 91375 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77510
91375
} // closed Puma
77511
91376
class WinIfExists;
77512
91377
class WinImportHandler;
77527
91392
class CCExprResolve;
77528
91393
class CExprResolve;
77529
91394
namespace Puma {
77530
 
class CT_IfStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
91395
 
 
91396
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91397
class CT_IfStmt : public CT_Statement, public CSemScope {
 
91398
#line 91399 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91399
  friend class ::WinIfExists;
77531
91400
  friend class ::WinImportHandler;
77532
91401
  friend class ::WinMacros;
77533
91402
  friend class ::CMatchSyntax;
77546
91415
  friend class ::CCExprResolve;
77547
91416
  friend class ::CExprResolve;
77548
91417
 
 
91418
#line 1771 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91419
 
77549
91420
  CTree *sons[5]; // keyword, open, cond, close, stmt
77550
91421
 
77551
91422
public:
77563
91434
  }
77564
91435
};
77565
91436
 
 
91437
 
 
91438
#line 91439 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77566
91439
} // closed Puma
77567
91440
class WinIfExists;
77568
91441
class WinImportHandler;
77583
91456
class CCExprResolve;
77584
91457
class CExprResolve;
77585
91458
namespace Puma {
77586
 
class CT_IfElseStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
91459
 
 
91460
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91461
class CT_IfElseStmt : public CT_Statement, public CSemScope {
 
91462
#line 91463 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91463
  friend class ::WinIfExists;
77587
91464
  friend class ::WinImportHandler;
77588
91465
  friend class ::WinMacros;
77589
91466
  friend class ::CMatchSyntax;
77602
91479
  friend class ::CCExprResolve;
77603
91480
  friend class ::CExprResolve;
77604
91481
 
 
91482
#line 1789 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91483
 
77605
91484
  CTree *sons[7]; // if, open, cond, close, if_stmt, else, else_stmt
77606
91485
 
77607
91486
public:
77622
91501
  }
77623
91502
};
77624
91503
 
 
91504
 
 
91505
#line 91506 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77625
91506
} // closed Puma
77626
91507
class WinIfExists;
77627
91508
class WinImportHandler;
77642
91523
class CCExprResolve;
77643
91524
class CExprResolve;
77644
91525
namespace Puma {
77645
 
class CT_BreakStmt : public CT_Statement {  friend class ::WinIfExists;
 
91526
 
 
91527
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91528
class CT_BreakStmt : public CT_Statement {
 
91529
#line 91530 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91530
  friend class ::WinIfExists;
77646
91531
  friend class ::WinImportHandler;
77647
91532
  friend class ::WinMacros;
77648
91533
  friend class ::CMatchSyntax;
77661
91546
  friend class ::CCExprResolve;
77662
91547
  friend class ::CExprResolve;
77663
91548
 
 
91549
#line 1810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91550
 
77664
91551
  CTree *sons[2]; // key, semi_colon
77665
91552
 
77666
91553
public:
77674
91561
  }
77675
91562
};
77676
91563
 
 
91564
 
 
91565
#line 91566 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77677
91566
} // closed Puma
77678
91567
class WinIfExists;
77679
91568
class WinImportHandler;
77694
91583
class CCExprResolve;
77695
91584
class CExprResolve;
77696
91585
namespace Puma {
77697
 
class CT_ContinueStmt : public CT_Statement {  friend class ::WinIfExists;
 
91586
 
 
91587
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91588
class CT_ContinueStmt : public CT_Statement {
 
91589
#line 91590 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91590
  friend class ::WinIfExists;
77698
91591
  friend class ::WinImportHandler;
77699
91592
  friend class ::WinMacros;
77700
91593
  friend class ::CMatchSyntax;
77713
91606
  friend class ::CCExprResolve;
77714
91607
  friend class ::CExprResolve;
77715
91608
 
 
91609
#line 1824 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91610
 
77716
91611
  CTree *sons[2]; // key, semi_colon
77717
91612
 
77718
91613
public:
77726
91621
  }
77727
91622
};
77728
91623
 
 
91624
 
 
91625
#line 91626 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77729
91626
} // closed Puma
77730
91627
class WinIfExists;
77731
91628
class WinImportHandler;
77746
91643
class CCExprResolve;
77747
91644
class CExprResolve;
77748
91645
namespace Puma {
77749
 
class CT_GotoStmt : public CT_Statement {  friend class ::WinIfExists;
 
91646
 
 
91647
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91648
class CT_GotoStmt : public CT_Statement {
 
91649
#line 91650 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91650
  friend class ::WinIfExists;
77750
91651
  friend class ::WinImportHandler;
77751
91652
  friend class ::WinMacros;
77752
91653
  friend class ::CMatchSyntax;
77765
91666
  friend class ::CCExprResolve;
77766
91667
  friend class ::CExprResolve;
77767
91668
 
 
91669
#line 1838 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91670
 
77768
91671
  CTree *sons[3]; // key, label, semi_colon
77769
91672
 
77770
91673
public:
77781
91684
  }
77782
91685
};
77783
91686
 
 
91687
 
 
91688
#line 91689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77784
91689
} // closed Puma
77785
91690
class WinIfExists;
77786
91691
class WinImportHandler;
77801
91706
class CCExprResolve;
77802
91707
class CExprResolve;
77803
91708
namespace Puma {
77804
 
class CT_ReturnStmt : public CT_Statement {  friend class ::WinIfExists;
 
91709
 
 
91710
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91711
class CT_ReturnStmt : public CT_Statement {
 
91712
#line 91713 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91713
  friend class ::WinIfExists;
77805
91714
  friend class ::WinImportHandler;
77806
91715
  friend class ::WinMacros;
77807
91716
  friend class ::CMatchSyntax;
77820
91729
  friend class ::CCExprResolve;
77821
91730
  friend class ::CExprResolve;
77822
91731
 
 
91732
#line 1855 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91733
 
77823
91734
  CTree *sons[3]; // key, expr, semi_colon
77824
91735
 
77825
91736
public:
77836
91747
  }
77837
91748
};
77838
91749
 
 
91750
 
 
91751
#line 91752 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77839
91752
} // closed Puma
77840
91753
class WinIfExists;
77841
91754
class WinImportHandler;
77856
91769
class CCExprResolve;
77857
91770
class CExprResolve;
77858
91771
namespace Puma {
77859
 
class CT_WhileStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
91772
 
 
91773
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91774
class CT_WhileStmt : public CT_Statement, public CSemScope {
 
91775
#line 91776 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91776
  friend class ::WinIfExists;
77860
91777
  friend class ::WinImportHandler;
77861
91778
  friend class ::WinMacros;
77862
91779
  friend class ::CMatchSyntax;
77875
91792
  friend class ::CCExprResolve;
77876
91793
  friend class ::CExprResolve;
77877
91794
 
 
91795
#line 1872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91796
 
77878
91797
  CTree *sons[5]; // key, open, cond, close, stmt
77879
91798
 
77880
91799
public:
77892
91811
  }
77893
91812
};
77894
91813
 
 
91814
 
 
91815
#line 91816 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77895
91816
} // closed Puma
77896
91817
class WinIfExists;
77897
91818
class WinImportHandler;
77912
91833
class CCExprResolve;
77913
91834
class CExprResolve;
77914
91835
namespace Puma {
77915
 
class CT_DoStmt : public CT_Statement {  friend class ::WinIfExists;
 
91836
 
 
91837
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91838
class CT_DoStmt : public CT_Statement {
 
91839
#line 91840 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91840
  friend class ::WinIfExists;
77916
91841
  friend class ::WinImportHandler;
77917
91842
  friend class ::WinMacros;
77918
91843
  friend class ::CMatchSyntax;
77931
91856
  friend class ::CCExprResolve;
77932
91857
  friend class ::CExprResolve;
77933
91858
 
 
91859
#line 1890 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91860
 
77934
91861
  CTree *sons[7]; // do, stmt, while, open, expr, close, semi_colon
77935
91862
 
77936
91863
public:
77950
91877
  }
77951
91878
};
77952
91879
 
 
91880
 
 
91881
#line 91882 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
77953
91882
} // closed Puma
77954
91883
class WinIfExists;
77955
91884
class WinImportHandler;
77970
91899
class CCExprResolve;
77971
91900
class CExprResolve;
77972
91901
namespace Puma {
77973
 
class CT_ForStmt : public CT_Statement, public CSemScope {  friend class ::WinIfExists;
 
91902
 
 
91903
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91904
class CT_ForStmt : public CT_Statement, public CSemScope {
 
91905
#line 91906 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91906
  friend class ::WinIfExists;
77974
91907
  friend class ::WinImportHandler;
77975
91908
  friend class ::WinMacros;
77976
91909
  friend class ::CMatchSyntax;
77989
91922
  friend class ::CCExprResolve;
77990
91923
  friend class ::CExprResolve;
77991
91924
 
 
91925
#line 1910 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91926
 
77992
91927
  CTree *sons[8]; // key, open, init, cond, semi_colon, expr, close, stmt
77993
91928
 
77994
91929
public:
78010
91945
  }
78011
91946
};
78012
91947
 
 
91948
 
 
91949
#line 91950 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78013
91950
} // closed Puma
78014
91951
class WinIfExists;
78015
91952
class WinImportHandler;
78030
91967
class CCExprResolve;
78031
91968
class CExprResolve;
78032
91969
namespace Puma {
78033
 
class CT_Condition : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
91970
 
 
91971
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91972
class CT_Condition : public CT_Decl, public CSemObject {
 
91973
#line 91974 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
91974
  friend class ::WinIfExists;
78034
91975
  friend class ::WinImportHandler;
78035
91976
  friend class ::WinMacros;
78036
91977
  friend class ::CMatchSyntax;
78049
91990
  friend class ::CCExprResolve;
78050
91991
  friend class ::CExprResolve;
78051
91992
 
 
91993
#line 1932 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
91994
 
78052
91995
  CTree *sons[3]; // declspecs, declarator, init
78053
91996
 
78054
91997
public:
78075
92018
/*                                                                           */
78076
92019
/*****************************************************************************/
78077
92020
 
 
92021
 
 
92022
#line 92023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78078
92023
} // closed Puma
78079
92024
class WinIfExists;
78080
92025
class WinImportHandler;
78095
92040
class CCExprResolve;
78096
92041
class CExprResolve;
78097
92042
namespace Puma {
78098
 
class CT_ClassDef : public CT_Decl, public CSemObject {  friend class ::WinIfExists;
 
92043
 
 
92044
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92045
class CT_ClassDef : public CT_Decl, public CSemObject {
 
92046
#line 92047 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92047
  friend class ::WinIfExists;
78099
92048
  friend class ::WinImportHandler;
78100
92049
  friend class ::WinMacros;
78101
92050
  friend class ::CMatchSyntax;
78114
92063
  friend class ::CCExprResolve;
78115
92064
  friend class ::CExprResolve;
78116
92065
 
 
92066
#line 1959 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92067
 
78117
92068
   
 
92069
#line 92070 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92070
 
78118
92071
  struct __ac_wrapper_sons {
78119
92072
    typedef ::Puma::CTree * E; typedef E A[4]; A _data;
78120
92073
    operator A& () { return _data; }
78127
92080
    operator const void* () const { return _data; }
78128
92081
    template <typename I> E& operator [] (I i) { return _data[i]; } // for VC++ 2003
78129
92082
    template <typename I> const E& operator [] (I i) const { return _data[i]; } // for VC++ 2003
78130
 
  } sons; // key, name, bases, members
 
92083
  } sons
 
92084
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92085
 
 
92086
#line 1960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92087
; // key, name, bases, members
78131
92088
  CTree *obj_decl;
78132
92089
 
78133
92090
public:
78134
92091
  
 
92092
#line 92093 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92093
 
78135
92094
 
78136
92095
struct TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 {
78137
92096
  typedef void Result;
78167
92126
 
78168
92127
};
78169
92128
 
78170
 
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) {
 
92129
 
 
92130
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92131
CT_ClassDef (CTree * arg0, CTree * arg1, CTree * arg2 = (CTree*)0) 
 
92132
#line 92133 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92133
{
78171
92134
  TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0 tjp;
78172
92135
  tjp._that =  (TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0::That*)this;
78173
92136
this->__exec_old_C1(arg0, arg1, arg2);
78174
92137
  AC::invoke_ExtACTree_ExtACTree_a0_after<TJP__ZN4Puma11CT_ClassDefC1EPN4PumaE5CTreePN4PumaE5CTreePN4PumaE5CTree_0> (&tjp);
78175
92138
 
78176
92139
}
78177
 
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b){
 
92140
inline void __exec_old_C1(::Puma::CTree * k,::Puma::CTree * n,::Puma::CTree * b)
 
92141
#line 1964 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92142
{
78178
92143
    sons[0] = k; sons[1] = n; sons[2] = b; sons[3] = 0; obj_decl = 0; 
78179
92144
  }
78180
92145
  static const char *NodeId ();
78194
92159
    CTree::ReplaceSon (&(sons[0]), 4, old_son, new_son);
78195
92160
  }
78196
92161
   private:
 
92162
 
 
92163
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACTree.ah"
78197
92164
 CTree * _intro_members ;
78198
92165
public :
78199
92166
CTree * IntroMembers ( ) const { return _intro_members ; }
78200
92167
void IntroMembers ( CTree * members ) { _intro_members = members ; }
 
92168
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92169
 
 
92170
#line 92171 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92171
 
78201
92172
struct TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 {
78202
92173
  typedef void Result;
78203
92174
  typedef ::Puma::CT_ClassDef That;
78225
92196
};
78226
92197
 
78227
92198
 
 
92199
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92200
 
 
92201
#line 92202 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92202
 
78228
92203
public:
78229
92204
inline CT_ClassDef (const Puma::CT_ClassDef & arg0) : Puma::CT_Decl (arg0), Puma::CSemObject (arg0), sons (arg0.sons), obj_decl (arg0.obj_decl), _intro_members (arg0._intro_members) {
78230
92205
  TJP__ZN4Puma11CT_ClassDefC1ERKN4PumaE11CT_ClassDef_0 tjp;
78233
92208
 
78234
92209
}
78235
92210
 
 
92211
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92212
 
 
92213
#line 92214 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92214
 
78236
92215
struct TJP__ZN4Puma11CT_ClassDefD1Ev_0 {
78237
92216
  typedef void Result;
78238
92217
  typedef ::Puma::CT_ClassDef That;
78256
92235
};
78257
92236
 
78258
92237
 
 
92238
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92239
 
 
92240
#line 92241 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92241
 
78259
92242
public:
78260
92243
inline ~CT_ClassDef () {
78261
92244
  TJP__ZN4Puma11CT_ClassDefD1Ev_0 tjp;
78263
92246
  AC::invoke_ExtACTree_ExtACTree_a1_before<TJP__ZN4Puma11CT_ClassDefD1Ev_0> (&tjp);
78264
92247
 
78265
92248
}
 
92249
 
 
92250
#line 1983 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
78266
92251
};
78267
92252
      
 
92253
 
 
92254
#line 92255 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78268
92255
} // closed Puma
78269
92256
class WinIfExists;
78270
92257
class WinImportHandler;
78285
92272
class CCExprResolve;
78286
92273
class CExprResolve;
78287
92274
namespace Puma {
78288
 
class CT_UnionDef : public CT_ClassDef {  friend class ::WinIfExists;
 
92275
 
 
92276
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92277
class CT_UnionDef : public CT_ClassDef {
 
92278
#line 92279 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92279
  friend class ::WinIfExists;
78289
92280
  friend class ::WinImportHandler;
78290
92281
  friend class ::WinMacros;
78291
92282
  friend class ::CMatchSyntax;
78304
92295
  friend class ::CCExprResolve;
78305
92296
  friend class ::CExprResolve;
78306
92297
 
 
92298
#line 1985 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92299
 
78307
92300
public:
78308
92301
  CT_UnionDef (CTree *k, CTree *n, CTree *b = 0) : CT_ClassDef (k, n, b) {}
78309
92302
  static const char *NodeId ();
78310
92303
  const char *NodeName () const { return NodeId (); }
78311
92304
};
78312
92305
      
 
92306
 
 
92307
#line 92308 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78313
92308
} // closed Puma
78314
92309
class WinIfExists;
78315
92310
class WinImportHandler;
78330
92325
class CCExprResolve;
78331
92326
class CExprResolve;
78332
92327
namespace Puma {
78333
 
class CT_MembList : public CT_DeclList, public CSemScope {  friend class ::WinIfExists;
 
92328
 
 
92329
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92330
class CT_MembList : public CT_DeclList, public CSemScope {
 
92331
#line 92332 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92332
  friend class ::WinIfExists;
78334
92333
  friend class ::WinImportHandler;
78335
92334
  friend class ::WinMacros;
78336
92335
  friend class ::CMatchSyntax;
78349
92348
  friend class ::CCExprResolve;
78350
92349
  friend class ::CExprResolve;
78351
92350
 
 
92351
#line 1992 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92352
 
78352
92353
public:
78353
92354
  CT_MembList (int size = 10, int incr = 10) : 
78354
92355
    CT_DeclList (size, incr) {}
78356
92357
  const char *NodeName () const { return NodeId (); }
78357
92358
};
78358
92359
 
 
92360
 
 
92361
#line 92362 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78359
92362
} // closed Puma
78360
92363
class WinIfExists;
78361
92364
class WinImportHandler;
78376
92379
class CCExprResolve;
78377
92380
class CExprResolve;
78378
92381
namespace Puma {
78379
 
class CT_MembInitList : public CT_List, public CSemScope {  friend class ::WinIfExists;
 
92382
 
 
92383
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92384
class CT_MembInitList : public CT_List, public CSemScope {
 
92385
#line 92386 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92386
  friend class ::WinIfExists;
78380
92387
  friend class ::WinImportHandler;
78381
92388
  friend class ::WinMacros;
78382
92389
  friend class ::CMatchSyntax;
78395
92402
  friend class ::CCExprResolve;
78396
92403
  friend class ::CExprResolve;
78397
92404
 
 
92405
#line 2000 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92406
 
78398
92407
public:
78399
92408
  CT_MembInitList (int size = 2) : 
78400
92409
    CT_List (size, 2, CT_List::OPEN) {}
78402
92411
  const char *NodeName () const { return NodeId (); }
78403
92412
};
78404
92413
 
 
92414
 
 
92415
#line 92416 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78405
92416
} // closed Puma
78406
92417
class WinIfExists;
78407
92418
class WinImportHandler;
78422
92433
class CCExprResolve;
78423
92434
class CExprResolve;
78424
92435
namespace Puma {
78425
 
class CT_MembInit : public CT_Expression, public CSemObject {  friend class ::WinIfExists;
 
92436
 
 
92437
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92438
class CT_MembInit : public CT_Expression, public CSemObject {
 
92439
#line 92440 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92440
  friend class ::WinIfExists;
78426
92441
  friend class ::WinImportHandler;
78427
92442
  friend class ::WinMacros;
78428
92443
  friend class ::CMatchSyntax;
78441
92456
  friend class ::CCExprResolve;
78442
92457
  friend class ::CExprResolve;
78443
92458
 
 
92459
#line 2008 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92460
 
78444
92461
  CTree *sons[2]; // name, init
78445
92462
 
78446
92463
public:
78457
92474
  CSemObject *SemObject () const { return (CSemObject*)this; }
78458
92475
   private:
78459
92476
  typedef CT_MembInit CCExprResolveExpr;
 
92477
 
 
92478
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CCExprResolveH.ah"
78460
92479
 public :
78461
92480
virtual CTypeInfo * resolve ( CCSemExpr & sem_expr , CTree * base ) ;  private:
78462
92481
  typedef CT_MembInit CExprResolveExpr;
 
92482
 
 
92483
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CExprResolveH.ah"
78463
92484
 public :
78464
 
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;};
78465
 
 
 
92485
virtual CTypeInfo * resolve ( CSemExpr & sem_expr , CTree * base ) ;
 
92486
#line 2023 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92487
};
 
92488
 
 
92489
 
 
92490
#line 92491 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78466
92491
} // closed Puma
78467
92492
class WinIfExists;
78468
92493
class WinImportHandler;
78483
92508
class CCExprResolve;
78484
92509
class CExprResolve;
78485
92510
namespace Puma {
78486
 
class CT_BaseSpecList : public CT_List {  friend class ::WinIfExists;
 
92511
 
 
92512
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92513
class CT_BaseSpecList : public CT_List {
 
92514
#line 92515 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92515
  friend class ::WinIfExists;
78487
92516
  friend class ::WinImportHandler;
78488
92517
  friend class ::WinMacros;
78489
92518
  friend class ::CMatchSyntax;
78502
92531
  friend class ::CCExprResolve;
78503
92532
  friend class ::CExprResolve;
78504
92533
 
 
92534
#line 2025 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92535
 
78505
92536
public:
78506
92537
  CT_BaseSpecList (int size = 2) : 
78507
92538
    CT_List (size, 2, CT_List::OPEN|CT_List::SEPARATORS) {}
78509
92540
  const char *NodeName () const { return NodeId (); }
78510
92541
};
78511
92542
 
 
92543
 
 
92544
#line 92545 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78512
92545
} // closed Puma
78513
92546
class WinIfExists;
78514
92547
class WinImportHandler;
78529
92562
class CCExprResolve;
78530
92563
class CExprResolve;
78531
92564
namespace Puma {
78532
 
class CT_AccessSpec : public CTree {  friend class ::WinIfExists;
 
92565
 
 
92566
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92567
class CT_AccessSpec : public CTree {
 
92568
#line 92569 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92569
  friend class ::WinIfExists;
78533
92570
  friend class ::WinImportHandler;
78534
92571
  friend class ::WinMacros;
78535
92572
  friend class ::CMatchSyntax;
78548
92585
  friend class ::CCExprResolve;
78549
92586
  friend class ::CExprResolve;
78550
92587
 
 
92588
#line 2033 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92589
 
78551
92590
  CTree *sons[2]; // access, colon
78552
92591
 
78553
92592
public:
78562
92601
  }
78563
92602
};
78564
92603
 
 
92604
 
 
92605
#line 92606 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78565
92606
} // closed Puma
78566
92607
class WinIfExists;
78567
92608
class WinImportHandler;
78582
92623
class CCExprResolve;
78583
92624
class CExprResolve;
78584
92625
namespace Puma {
78585
 
class CT_BaseSpec : public CTree {  friend class ::WinIfExists;
 
92626
 
 
92627
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92628
class CT_BaseSpec : public CTree {
 
92629
#line 92630 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92630
  friend class ::WinIfExists;
78586
92631
  friend class ::WinImportHandler;
78587
92632
  friend class ::WinMacros;
78588
92633
  friend class ::CMatchSyntax;
78601
92646
  friend class ::CCExprResolve;
78602
92647
  friend class ::CExprResolve;
78603
92648
 
 
92649
#line 2048 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92650
 
78604
92651
  CTree *sons[3]; // virtual, access, name
78605
92652
 
78606
92653
public:
78620
92667
  }
78621
92668
};
78622
92669
 
 
92670
 
 
92671
#line 92672 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78623
92672
} // closed Puma
78624
92673
class WinIfExists;
78625
92674
class WinImportHandler;
78640
92689
class CCExprResolve;
78641
92690
class CExprResolve;
78642
92691
namespace Puma {
78643
 
class CT_AccessDecl : public CT_Decl {  friend class ::WinIfExists;
 
92692
 
 
92693
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92694
class CT_AccessDecl : public CT_Decl {
 
92695
#line 92696 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92696
  friend class ::WinIfExists;
78644
92697
  friend class ::WinImportHandler;
78645
92698
  friend class ::WinMacros;
78646
92699
  friend class ::CMatchSyntax;
78659
92712
  friend class ::CCExprResolve;
78660
92713
  friend class ::CExprResolve;
78661
92714
 
 
92715
#line 2068 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92716
 
78662
92717
  CTree *sons[2]; // name, semi_colon
78663
92718
 
78664
92719
public:
78673
92728
  }
78674
92729
};
78675
92730
 
 
92731
 
 
92732
#line 92733 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78676
92733
} // closed Puma
78677
92734
class WinIfExists;
78678
92735
class WinImportHandler;
78693
92750
class CCExprResolve;
78694
92751
class CExprResolve;
78695
92752
namespace Puma {
78696
 
class CT_UsingDecl : public CT_AccessDecl {  friend class ::WinIfExists;
 
92753
 
 
92754
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92755
class CT_UsingDecl : public CT_AccessDecl {
 
92756
#line 92757 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92757
  friend class ::WinIfExists;
78697
92758
  friend class ::WinImportHandler;
78698
92759
  friend class ::WinMacros;
78699
92760
  friend class ::CMatchSyntax;
78712
92773
  friend class ::CCExprResolve;
78713
92774
  friend class ::CExprResolve;
78714
92775
 
 
92776
#line 2083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92777
 
78715
92778
  CTree *sons[2]; // using, typename
78716
92779
 
78717
92780
public:
78742
92805
/*                                                                           */
78743
92806
/*****************************************************************************/
78744
92807
 
 
92808
 
 
92809
#line 92810 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78745
92810
} // closed Puma
78746
92811
class WinIfExists;
78747
92812
class WinImportHandler;
78762
92827
class CCExprResolve;
78763
92828
class CExprResolve;
78764
92829
namespace Puma {
78765
 
class CT_Any : public CTree {  friend class ::WinIfExists;
 
92830
 
 
92831
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92832
class CT_Any : public CTree {
 
92833
#line 92834 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92834
  friend class ::WinIfExists;
78766
92835
  friend class ::WinImportHandler;
78767
92836
  friend class ::WinMacros;
78768
92837
  friend class ::CMatchSyntax;
78781
92850
  friend class ::CCExprResolve;
78782
92851
  friend class ::CExprResolve;
78783
92852
 
 
92853
#line 2114 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92854
 
78784
92855
  CTree *sons[2]; // keyword, extension
78785
92856
 
78786
92857
public:
78796
92867
  CT_AnyExtension *Extension () const { return (CT_AnyExtension*)sons[1]; }
78797
92868
};
78798
92869
 
 
92870
 
 
92871
#line 92872 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78799
92872
} // closed Puma
78800
92873
class WinIfExists;
78801
92874
class WinImportHandler;
78816
92889
class CCExprResolve;
78817
92890
class CExprResolve;
78818
92891
namespace Puma {
78819
 
class CT_AnyList : public CT_Any {  friend class ::WinIfExists;
 
92892
 
 
92893
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92894
class CT_AnyList : public CT_Any {
 
92895
#line 92896 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92896
  friend class ::WinIfExists;
78820
92897
  friend class ::WinImportHandler;
78821
92898
  friend class ::WinMacros;
78822
92899
  friend class ::CMatchSyntax;
78835
92912
  friend class ::CCExprResolve;
78836
92913
  friend class ::CExprResolve;
78837
92914
 
 
92915
#line 2130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92916
 
78838
92917
public:
78839
92918
  CT_AnyList (CTree *k, CTree *e = (CTree*)0) : CT_Any (k, e) {}
78840
92919
  static const char *NodeId ();
78841
92920
  const char *NodeName () const { return NodeId (); }
78842
92921
};
78843
92922
 
 
92923
 
 
92924
#line 92925 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78844
92925
} // closed Puma
78845
92926
class WinIfExists;
78846
92927
class WinImportHandler;
78861
92942
class CCExprResolve;
78862
92943
class CExprResolve;
78863
92944
namespace Puma {
78864
 
class CT_AnyExtension : public CTree, public CSemValue {  friend class ::WinIfExists;
 
92945
 
 
92946
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92947
class CT_AnyExtension : public CTree, public CSemValue {
 
92948
#line 92949 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
92949
  friend class ::WinIfExists;
78865
92950
  friend class ::WinImportHandler;
78866
92951
  friend class ::WinMacros;
78867
92952
  friend class ::CMatchSyntax;
78880
92965
  friend class ::CCExprResolve;
78881
92966
  friend class ::CExprResolve;
78882
92967
 
 
92968
#line 2137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
92969
 
78883
92970
  CTree *sons[5]; // open, string, comma, cond, close
78884
92971
 
78885
92972
public:
78902
92989
  CSemValue *SemValue () const { return (CSemValue*)this; }
78903
92990
};
78904
92991
 
 
92992
 
 
92993
#line 92994 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78905
92994
} // closed Puma
78906
92995
class WinIfExists;
78907
92996
class WinImportHandler;
78922
93011
class CCExprResolve;
78923
93012
class CExprResolve;
78924
93013
namespace Puma {
78925
 
class CT_AnyCondition : public CTree {  friend class ::WinIfExists;
 
93014
 
 
93015
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
93016
class CT_AnyCondition : public CTree {
 
93017
#line 93018 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93018
  friend class ::WinIfExists;
78926
93019
  friend class ::WinImportHandler;
78927
93020
  friend class ::WinMacros;
78928
93021
  friend class ::CMatchSyntax;
78941
93034
  friend class ::CCExprResolve;
78942
93035
  friend class ::CExprResolve;
78943
93036
 
 
93037
#line 2160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
93038
 
78944
93039
  CTree *sons[3]; // arg1, arg2, arg3
78945
93040
 
78946
93041
public:
78960
93055
} // namespace Puma
78961
93056
 
78962
93057
#endif /* __CTree_h__ */
78963
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CTree_h__
 
93058
 
 
93059
#line 93060 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93060
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CTree_h__
 
93061
 
 
93062
#line 2179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTree.h"
 
93063
 
 
93064
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
78964
93065
namespace Puma {
78965
93066
  class CSyntax;
78966
93067
}
78967
93068
 
78968
93069
namespace Puma {
78969
93070
 
 
93071
 
 
93072
#line 93073 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
78970
93073
} // closed Puma
78971
93074
class WinIfExists;
78972
93075
class WinImportHandler;
78987
93090
class CCExprResolve;
78988
93091
class CExprResolve;
78989
93092
namespace Puma {
78990
 
class CSemantic : public Semantic {  friend class ::WinIfExists;
 
93093
 
 
93094
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93095
class CSemantic : public Semantic {
 
93096
#line 93097 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93097
  friend class ::WinIfExists;
78991
93098
  friend class ::WinImportHandler;
78992
93099
  friend class ::WinMacros;
78993
93100
  friend class ::CMatchSyntax;
79006
93113
  friend class ::CCExprResolve;
79007
93114
  friend class ::CExprResolve;
79008
93115
 
 
93116
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93117
 
79009
93118
  CSyntax &_syntax;
79010
93119
  CBuilder &_builder;
79011
93120
 
79019
93128
  bool is_type_name;
79020
93129
  
79021
93130
  
 
93131
#line 93132 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93132
 
79022
93133
 
79023
93134
struct TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0 {
79024
93135
  typedef void Result;
79042
93153
 
79043
93154
};
79044
93155
 
79045
 
void declareImplicitFcts () {
 
93156
 
 
93157
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93158
void declareImplicitFcts () 
 
93159
#line 93160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93160
{
79046
93161
  TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0 tjp;
79047
93162
  tjp._that =  (TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0::That*)this;
79048
93163
this->__exec_old_declareImplicitFcts();
79049
93164
  AC::invoke_ExtGnu_ExtGnu_a13_after<TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0> (&tjp);
79050
93165
 
79051
93166
}
79052
 
inline void __exec_old_declareImplicitFcts(){} // builtin functions
 
93167
inline void __exec_old_declareImplicitFcts()
 
93168
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93169
{} // builtin functions
79053
93170
 
79054
93171
public:
79055
 
  public: inline void __exec_old_C1(::Puma::CSyntax & ,::Puma::CBuilder & );
 
93172
  
 
93173
#line 93174 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93174
public: inline void __exec_old_C1(::Puma::CSyntax & ,::Puma::CBuilder & );
 
93175
 
 
93176
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79056
93177
CSemantic (CSyntax &, CBuilder &);
79057
93178
 
79058
93179
  virtual void init (CClassDatabase &, Unit &);
79083
93204
 
79084
93205
  // add scope information to tree nodes
79085
93206
  virtual CTree *trans_unit ();
79086
 
  public: inline ::Puma::CTree * __exec_old_class_spec();
 
93207
  
 
93208
#line 93209 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93209
public: inline ::Puma::CTree * __exec_old_class_spec();
 
93210
 
 
93211
#line 80 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79087
93212
virtual CTree *class_spec ();
79088
93213
  virtual CTree *cmpd_stmt ();
79089
93214
  virtual CTree *select_stmt ();
79091
93216
 
79092
93217
  // introduce names... add new entries to the class database
79093
93218
  virtual CTree *introduce_label ();
79094
 
  public: inline ::Puma::CTree * __exec_old_introduce_object();
 
93219
  
 
93220
#line 93221 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93221
public: inline ::Puma::CTree * __exec_old_introduce_object();
 
93222
 
 
93223
#line 87 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79095
93224
virtual CTree *introduce_object ();
79096
93225
  virtual CTree *introduce_named_type ();
79097
93226
  virtual CTree *introduce_enum ();
79098
93227
  virtual CTree *introduce_enumerator ();
79099
 
  public: inline ::Puma::CTree * __exec_old_introduce_function();
 
93228
  
 
93229
#line 93230 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93230
public: inline ::Puma::CTree * __exec_old_introduce_function();
 
93231
 
 
93232
#line 91 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79100
93233
virtual CTree *introduce_function ();
79101
93234
  virtual CTree *introduce_parameter ();
79102
 
  public: inline ::Puma::CTree * __exec_old_introduce_class();
 
93235
  
 
93236
#line 93237 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93237
public: inline ::Puma::CTree * __exec_old_introduce_class();
 
93238
 
 
93239
#line 93 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79103
93240
virtual CTree *introduce_class ();
79104
 
  public: inline ::Puma::CTree * __exec_old_introduce_member();
 
93241
  
 
93242
#line 93243 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93243
public: inline ::Puma::CTree * __exec_old_introduce_member();
 
93244
 
 
93245
#line 94 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79105
93246
virtual CTree *introduce_member ();
79106
93247
  virtual CTree *introduce_tag ();
79107
93248
 
79138
93279
  void createParameter (CFunctionInfo *, CTypeInfo *);
79139
93280
  CFunctionInfo *createFunction (const char *, CStructure *, CTypeInfo *);
79140
93281
   private:
 
93282
 
 
93283
#line 74 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
79141
93284
 public :
79142
93285
virtual CTree * wc_extension ( ) {
79143
93286
CT_AnyExtension * ext = ( CT_AnyExtension * ) builder ( ) . wc_extension ( ) ;
79150
93293
return ext ;
79151
93294
}  private:
79152
93295
  typedef CSemantic ExtGnuTypeofSemantic;
 
93296
 
 
93297
#line 501 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
79153
93298
 public :
79154
93299
virtual CTree * gnu_typeof ( ) ;  private:
79155
93300
  typedef CSemantic ExtGnuBuiltinsSemantic;
 
93301
 
 
93302
#line 553 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
79156
93303
 public :
79157
93304
void define_gnu_builtins ( ) ;  private:
79158
93305
  typedef CSemantic ACSemantic;
 
93306
 
 
93307
#line 82 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
79159
93308
 public :
79160
93309
ACIntroducer * _introducer ;
79161
93310
private :
79187
93336
void leave_pointcut_decl ( ) { _in_pointcut_decl = false ; }
79188
93337
void enter_pointcut_expr ( ) ;
79189
93338
void leave_pointcut_expr ( ) ;
 
93339
#line 129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93340
 
 
93341
#line 93342 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93342
 
79190
93343
struct TJP__ZN4Puma9CSemanticC1ERKN4PumaE9CSemantic_0 {
79191
93344
  typedef void Result;
79192
93345
  typedef ::Puma::CSemantic That;
79214
93367
};
79215
93368
 
79216
93369
 
 
93370
#line 129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93371
 
 
93372
#line 93373 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93373
 
79217
93374
public:
79218
93375
inline CSemantic (const Puma::CSemantic & arg0) : Puma::Semantic (arg0), _syntax (arg0._syntax), _builder (arg0._builder), in_arg_decl (arg0.in_arg_decl), _in_arg_decl_seq (arg0._in_arg_decl_seq), is_type_name (arg0.is_type_name), _introducer (arg0._introducer), _in_advice_decl (arg0._in_advice_decl), _in_pointcut_decl (arg0._in_pointcut_decl), _at_end_of_advice_decl (arg0._at_end_of_advice_decl), _saved_scope (arg0._saved_scope) {
79219
93376
  TJP__ZN4Puma9CSemanticC1ERKN4PumaE9CSemantic_0 tjp;
79221
93378
  AC::invoke_ExtAC_ExtAC_a1_after<TJP__ZN4Puma9CSemanticC1ERKN4PumaE9CSemantic_0> (&tjp);
79222
93379
 
79223
93380
}
 
93381
 
 
93382
#line 129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79224
93383
};
79225
93384
 
79226
93385
 
 
93386
#line 93387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93387
 
79227
93388
 
79228
93389
struct TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0 {
79229
93390
  typedef void Result;
79255
93416
 
79256
93417
};
79257
93418
 
 
93419
 
 
93420
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79258
93421
inline CSemantic::CSemantic (CSyntax & arg0, CBuilder & arg1) : 
79259
93422
  _syntax (arg0), _builder (arg1),
79260
93423
  in_arg_decl (false),
79261
93424
  _in_arg_decl_seq (false),
79262
93425
  is_type_name (false)
79263
 
 {
 
93426
 
 
93427
#line 93428 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93428
{
79264
93429
  TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0 tjp;
79265
93430
  tjp._that =  (TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0::That*)this;
79266
93431
this->__exec_old_C1(arg0, arg1);
79267
93432
  AC::invoke_ExtAC_ExtAC_a1_after<TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0> (&tjp);
79268
93433
 
79269
93434
}
79270
 
inline void Puma::CSemantic::__exec_old_C1(::Puma::CSyntax & s,::Puma::CBuilder & b){}
 
93435
inline void Puma::CSemantic::__exec_old_C1(::Puma::CSyntax & s,::Puma::CBuilder & b)
 
93436
#line 136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93437
{}
79271
93438
 
79272
93439
inline CBuilder &CSemantic::builder () const 
79273
93440
 { return _builder; }
79295
93462
} // namespace Puma
79296
93463
 
79297
93464
#endif /* __CSemantic_h__ */
79298
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
93465
 
 
93466
#line 93467 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93467
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
93468
 
 
93469
#line 163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93470
 
 
93471
#line 29 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79299
93472
#include <bitset>
79300
93473
using std::bitset;
79301
93474
 
79302
93475
namespace Puma {
79303
93476
 
79304
93477
 
 
93478
 
 
93479
#line 93480 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
79305
93480
} // closed Puma
79306
93481
class WinIfExists;
79307
93482
class WinImportHandler;
79322
93497
class CCExprResolve;
79323
93498
class CExprResolve;
79324
93499
namespace Puma {
79325
 
class CSyntax : public Syntax {  friend class ::WinIfExists;
 
93500
 
 
93501
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
 
93502
class CSyntax : public Syntax {
 
93503
#line 93504 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93504
  friend class ::WinIfExists;
79326
93505
  friend class ::WinImportHandler;
79327
93506
  friend class ::WinMacros;
79328
93507
  friend class ::CMatchSyntax;
79341
93520
  friend class ::CCExprResolve;
79342
93521
  friend class ::CExprResolve;
79343
93522
 
 
93523
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
 
93524
 
79344
93525
public:
79345
93526
  CSyntax (CBuilder &, CSemantic &);
79346
 
  public: inline void __exec_old_configure(::Puma::Config & );
 
93527
  
 
93528
#line 93529 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93529
public: inline void __exec_old_configure(::Puma::Config & );
 
93530
 
 
93531
#line 38 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79347
93532
virtual void configure (Config &);
79348
93533
  
79349
93534
  typedef bitset<TOK_NO> tokenset;
79387
93572
  tokenset _direct_declarator1_1;
79388
93573
 
79389
93574
  // tokenset initialization
79390
 
  public: inline void __exec_old_init_prim_types();
 
93575
  
 
93576
#line 93577 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93577
public: inline void __exec_old_init_prim_types();
79391
93578
protected:
 
93579
 
 
93580
#line 81 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79392
93581
virtual void init_prim_types ();
79393
93582
  
79394
93583
  // FIRST and FOLLOW initialization
79396
93585
  virtual void init_type_name ();
79397
93586
  virtual void init_class_spec ();
79398
93587
  virtual void init_class_head ();
79399
 
  public: inline void __exec_old_init_class_key();
 
93588
  
 
93589
#line 93590 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93590
public: inline void __exec_old_init_class_key();
79400
93591
protected:
 
93592
 
 
93593
#line 88 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79401
93594
virtual void init_class_key ();
79402
 
  public: inline void __exec_old_init_cv_qual();
 
93595
  
 
93596
#line 93597 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93597
public: inline void __exec_old_init_cv_qual();
79403
93598
protected:
 
93599
 
 
93600
#line 89 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79404
93601
virtual void init_cv_qual ();
79405
93602
  virtual void init_cv_qual_seq ();
79406
93603
  virtual void init_enum_spec ();
79407
93604
  virtual void init_elaborated_type_spec ();
79408
 
  public: inline void __exec_old_init_simple_type_spec();
 
93605
  
 
93606
#line 93607 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93607
public: inline void __exec_old_init_simple_type_spec();
79409
93608
protected:
 
93609
 
 
93610
#line 93 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79410
93611
virtual void init_simple_type_spec ();
79411
93612
  virtual void init_type_spec ();
79412
93613
  virtual void init_decl_spec ();
79413
 
  public: inline void __exec_old_init_misc_spec();
 
93614
  
 
93615
#line 93616 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93616
public: inline void __exec_old_init_misc_spec();
79414
93617
protected:
 
93618
 
 
93619
#line 96 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79415
93620
virtual void init_misc_spec ();
79416
93621
  virtual void init_storage_class_spec ();
79417
93622
  virtual void init_fct_spec ();
79444
93649
  virtual bool str_literal ();
79445
93650
  
79446
93651
  // A.3 Basic concepts 
79447
 
  public: inline ::Puma::CTree * __exec_old_trans_unit();
 
93652
  
 
93653
#line 93654 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93654
public: inline ::Puma::CTree * __exec_old_trans_unit();
 
93655
 
 
93656
#line 128 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79448
93657
virtual CTree *trans_unit ();
79449
93658
 
79450
93659
  // A.4 Expression
79451
 
  public: inline ::Puma::CTree * __exec_old_rule_prim_expr();
 
93660
  
 
93661
#line 93662 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93662
public: inline ::Puma::CTree * __exec_old_rule_prim_expr();
 
93663
 
 
93664
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79452
93665
CTree * rule_prim_expr ();
79453
93666
  virtual bool prim_expr ();
79454
93667
  CTree * rule_id_expr ();
79458
93671
  virtual CTree *postfix_expr ();
79459
93672
  CTree * rule_postfix_expr1 ();
79460
93673
  virtual bool postfix_expr1 ();
79461
 
  public: inline ::Puma::CTree * __exec_old_expr_list();
 
93674
  
 
93675
#line 93676 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93676
public: inline ::Puma::CTree * __exec_old_expr_list();
 
93677
 
 
93678
#line 140 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79462
93679
virtual CTree *expr_list ();
79463
93680
  virtual CTree *unary_expr ();
79464
93681
  virtual CTree *unary_expr1 ();
79481
93698
  virtual CTree *const_expr ();
79482
93699
 
79483
93700
  // A.5 Statements
79484
 
  public: inline ::Puma::CTree * __exec_old_stmt();
 
93701
  
 
93702
#line 93703 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93703
public: inline ::Puma::CTree * __exec_old_stmt();
 
93704
 
 
93705
#line 162 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79485
93706
virtual CTree *stmt ();
79486
93707
  virtual CTree *label_stmt ();
79487
93708
  virtual CTree *expr_stmt ();
79488
93709
  virtual CTree *cmpd_stmt ();
79489
 
  public: inline ::Puma::CTree * __exec_old_stmt_seq();
 
93710
  
 
93711
#line 93712 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93712
public: inline ::Puma::CTree * __exec_old_stmt_seq();
 
93713
 
 
93714
#line 166 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79490
93715
virtual CTree *stmt_seq ();
79491
93716
  virtual CTree *select_stmt ();
79492
93717
  virtual CTree *sub_stmt ();
79498
93723
  // A.6 Declarations
79499
93724
  virtual CTree *decl_seq ();
79500
93725
  virtual CTree *decl ();
79501
 
  public: inline ::Puma::CTree * __exec_old_block_decl();
 
93726
  
 
93727
#line 93728 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93728
public: inline ::Puma::CTree * __exec_old_block_decl();
 
93729
 
 
93730
#line 177 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79502
93731
virtual CTree *block_decl ();
79503
 
  public: inline ::Puma::CTree * __exec_old_simple_decl();
 
93732
  
 
93733
#line 93734 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93734
public: inline ::Puma::CTree * __exec_old_simple_decl();
 
93735
 
 
93736
#line 178 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79504
93737
virtual CTree *simple_decl ();
79505
 
  public: inline ::Puma::CTree * __exec_old_rule_decl_spec();
 
93738
  
 
93739
#line 93740 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93740
public: inline ::Puma::CTree * __exec_old_rule_decl_spec();
 
93741
 
 
93742
#line 179 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79506
93743
CTree * rule_decl_spec ();
79507
93744
  virtual bool decl_spec ();
79508
 
  public: inline ::Puma::CTree * __exec_old_decl_spec_seq();
 
93745
  
 
93746
#line 93747 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93747
public: inline ::Puma::CTree * __exec_old_decl_spec_seq();
 
93748
 
 
93749
#line 181 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79509
93750
virtual CTree *decl_spec_seq ();
79510
93751
  virtual CTree *decl_spec_seq1 ();
79511
93752
  CTree * rule_misc_spec ();
79516
93757
  virtual bool fct_spec ();
79517
93758
  CTree * rule_type_spec ();
79518
93759
  virtual bool type_spec ();
79519
 
  public: inline ::Puma::CTree * __exec_old_rule_simple_type_spec();
 
93760
  
 
93761
#line 93762 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93762
public: inline ::Puma::CTree * __exec_old_rule_simple_type_spec();
 
93763
 
 
93764
#line 191 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79520
93765
CTree * rule_simple_type_spec ();
79521
93766
  virtual bool simple_type_spec ();
79522
93767
  CTree * rule_type_name ();
79530
93775
  virtual CTree *enumerator ();
79531
93776
 
79532
93777
  // A.7 Declarators
79533
 
  public: inline ::Puma::CTree * __exec_old_init_declarator_list();
 
93778
  
 
93779
#line 93780 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93780
public: inline ::Puma::CTree * __exec_old_init_declarator_list();
 
93781
 
 
93782
#line 204 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79534
93783
virtual CTree *init_declarator_list ();
79535
 
  public: inline ::Puma::CTree * __exec_old_init_declarator();
 
93784
  
 
93785
#line 93786 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93786
public: inline ::Puma::CTree * __exec_old_init_declarator();
 
93787
 
 
93788
#line 205 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79536
93789
virtual CTree *init_declarator ();
79537
 
  public: inline ::Puma::CTree * __exec_old_declarator();
 
93790
  
 
93791
#line 93792 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93792
public: inline ::Puma::CTree * __exec_old_declarator();
 
93793
 
 
93794
#line 206 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79538
93795
virtual CTree *declarator ();
79539
 
  public: inline ::Puma::CTree * __exec_old_direct_declarator();
 
93796
  
 
93797
#line 93798 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93798
public: inline ::Puma::CTree * __exec_old_direct_declarator();
 
93799
 
 
93800
#line 207 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79540
93801
virtual CTree *direct_declarator ();
79541
93802
  CTree *rule_direct_declarator1 ();
79542
93803
  virtual bool direct_declarator1 ();
79552
93813
  virtual CTree *type_spec_seq ();
79553
93814
  virtual CTree *type_spec_seq1 ();
79554
93815
  virtual CTree *abst_declarator ();
79555
 
  public: inline ::Puma::CTree * __exec_old_direct_abst_declarator();
 
93816
  
 
93817
#line 93818 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93818
public: inline ::Puma::CTree * __exec_old_direct_abst_declarator();
 
93819
 
 
93820
#line 222 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79556
93821
virtual CTree *direct_abst_declarator ();
79557
93822
  virtual CTree *direct_abst_declarator1 ();
79558
93823
  virtual CTree *param_decl_clause ();
79561
93826
  virtual CTree *param_decl1 ();
79562
93827
  virtual CTree *param_decl2 ();
79563
93828
  virtual CTree *fct_def ();
79564
 
  public: inline ::Puma::CTree * __exec_old_arg_decl_seq();
 
93829
  
 
93830
#line 93831 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93831
public: inline ::Puma::CTree * __exec_old_arg_decl_seq();
 
93832
 
 
93833
#line 230 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79565
93834
virtual CTree *arg_decl_seq ();
79566
 
  public: inline ::Puma::CTree * __exec_old_fct_body();
 
93835
  
 
93836
#line 93837 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93837
public: inline ::Puma::CTree * __exec_old_fct_body();
 
93838
 
 
93839
#line 231 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79567
93840
virtual CTree *fct_body ();
79568
 
  public: inline ::Puma::CTree * __exec_old_init();
 
93841
  
 
93842
#line 93843 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93843
public: inline ::Puma::CTree * __exec_old_init();
 
93844
 
 
93845
#line 232 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79569
93846
virtual CTree *init ();
79570
93847
  virtual CTree *init_clause ();
79571
93848
  virtual CTree *init_list ();
79580
93857
  virtual bool class_head ();
79581
93858
  CTree * rule_class_key ();
79582
93859
  virtual bool class_key ();
79583
 
  public: inline ::Puma::CTree * __exec_old_member_spec();
 
93860
  
 
93861
#line 93862 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93862
public: inline ::Puma::CTree * __exec_old_member_spec();
 
93863
 
 
93864
#line 246 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79584
93865
virtual CTree *member_spec ();
79585
 
  public: inline ::Puma::CTree * __exec_old_member_decl();
 
93866
  
 
93867
#line 93868 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93868
public: inline ::Puma::CTree * __exec_old_member_decl();
 
93869
 
 
93870
#line 247 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
79586
93871
virtual CTree *member_decl ();
79587
93872
  virtual CTree *member_declarator_list ();
79588
93873
  virtual CTree *member_declarator ();
79593
93878
  virtual void handle_directive ();
79594
93879
   private:
79595
93880
  typedef CSyntax CMatchCSyntax;
 
93881
 
 
93882
#line 347 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
79596
93883
 public :
79597
93884
virtual CTree * wildcards ( ) ;
79598
93885
virtual CTree * wc_extension ( ) ;
79603
93890
virtual CTree * wc_match_list ( ) ;
79604
93891
virtual CTree * wc_element ( ) ;  private:
79605
93892
  typedef CSyntax ExtGnuAsmSyntax;
 
93893
 
 
93894
#line 300 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
79606
93895
 public :
79607
93896
CTree * gnu_asm_def ( ) ;
79608
93897
CTree * gnu_asm_operands ( ) ;
79609
93898
CTree * gnu_asm_operand ( ) ;
79610
93899
CTree * gnu_asm_clobbers ( ) ;  private:
79611
93900
  typedef CSyntax ExtGnuTypeofSyntax;
 
93901
 
 
93902
#line 470 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
79612
93903
 public :
79613
93904
CTree * gnu_typeof ( ) ;  private:
79614
93905
  typedef CSyntax ExtACSyntax;
 
93906
 
 
93907
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACSyntaxH.ah"
79615
93908
 protected :
79616
93909
void skip_pointcut_expr ( ) ;
79617
93910
virtual CTree * order_decl ( ) ;
79627
93920
virtual CTree * advice_member_decl ( ) ;
79628
93921
virtual CTree * intro ( ) ;  private:
79629
93922
  typedef CSyntax WinAsmSyntax;
 
93923
 
 
93924
#line 69 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinAsm.ah"
79630
93925
 public :
79631
93926
virtual bool asm_block ( ) ;
79632
93927
CTree * rule_asm_block ( ) ;  private:
79633
93928
  typedef CSyntax WinDeclSpecsSyntax;
 
93929
 
 
93930
#line 104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinDeclSpecs.ah"
79634
93931
 public :
79635
93932
 
79636
 
virtual CTree * win_decl_spec ( ) ;};
 
93933
virtual CTree * win_decl_spec ( ) ;
 
93934
#line 255 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
 
93935
};
79637
93936
 
79638
93937
inline CSyntax::CSyntax (CBuilder &b, CSemantic &s) : Syntax (b, s) {}
79639
93938
 
79649
93948
} // namespace Puma
79650
93949
 
79651
93950
#endif /* __CSyntax_h__ */
79652
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSyntax_h__
 
93951
 
 
93952
#line 93953 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
93953
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSyntax_h__
 
93954
 
 
93955
#line 270 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSyntax.h"
 
93956
 
 
93957
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
93958
 
 
93959
#line 93960 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
79653
93960
 
79654
93961
#ifndef __ac_fwd_ExtGnu__
79655
93962
#define __ac_fwd_ExtGnu__
79690
93997
}
79691
93998
#endif
79692
93999
 
79693
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
79694
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
94000
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
94001
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
79695
94002
#endif
79696
94003
 
79697
94004
#ifndef __ac_fwd_ExtAC__
79723
94030
}
79724
94031
#endif
79725
94032
 
79726
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
79727
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
 
94033
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
 
94034
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
79728
94035
#endif
79729
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemantic_h__
79730
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
94036
 
 
94037
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94038
 
 
94039
#line 94040 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94040
 
 
94041
#line 6 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94042
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
94043
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
94044
 
 
94045
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79731
94046
// This file is part of PUMA.
79732
94047
// Copyright (C) 1999-2003  The PUMA developer team.
79733
94048
//                                                                
79761
94076
 
79762
94077
namespace Puma {
79763
94078
 
 
94079
 
 
94080
#line 94081 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
79764
94081
} // closed Puma
79765
94082
class WinIfExists;
79766
94083
class WinImportHandler;
79781
94098
class CCExprResolve;
79782
94099
class CExprResolve;
79783
94100
namespace Puma {
79784
 
class CSemantic : public Semantic {  friend class ::WinIfExists;
 
94101
 
 
94102
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94103
class CSemantic : public Semantic {
 
94104
#line 94105 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94105
  friend class ::WinIfExists;
79785
94106
  friend class ::WinImportHandler;
79786
94107
  friend class ::WinMacros;
79787
94108
  friend class ::CMatchSyntax;
79800
94121
  friend class ::CCExprResolve;
79801
94122
  friend class ::CExprResolve;
79802
94123
 
 
94124
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94125
 
79803
94126
  CSyntax &_syntax;
79804
94127
  CBuilder &_builder;
79805
94128
 
79813
94136
  bool is_type_name;
79814
94137
  
79815
94138
  
 
94139
#line 94140 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94140
 
79816
94141
 
79817
94142
struct TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0 {
79818
94143
  typedef void Result;
79836
94161
 
79837
94162
};
79838
94163
 
79839
 
void declareImplicitFcts () {
 
94164
 
 
94165
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94166
void declareImplicitFcts () 
 
94167
#line 94168 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94168
{
79840
94169
  TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0 tjp;
79841
94170
  tjp._that =  (TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0::That*)this;
79842
94171
this->__exec_old_declareImplicitFcts();
79843
94172
  AC::invoke_ExtGnu_ExtGnu_a13_after<TJP__ZN4Puma9CSemantic19declareImplicitFctsEv_0> (&tjp);
79844
94173
 
79845
94174
}
79846
 
inline void __exec_old_declareImplicitFcts(){} // builtin functions
 
94175
inline void __exec_old_declareImplicitFcts()
 
94176
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94177
{} // builtin functions
79847
94178
 
79848
94179
public:
79849
 
  public: inline void __exec_old_C1(::Puma::CSyntax & ,::Puma::CBuilder & );
 
94180
  
 
94181
#line 94182 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94182
public: inline void __exec_old_C1(::Puma::CSyntax & ,::Puma::CBuilder & );
 
94183
 
 
94184
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79850
94185
CSemantic (CSyntax &, CBuilder &);
79851
94186
 
79852
94187
  virtual void init (CClassDatabase &, Unit &);
79877
94212
 
79878
94213
  // add scope information to tree nodes
79879
94214
  virtual CTree *trans_unit ();
79880
 
  public: inline ::Puma::CTree * __exec_old_class_spec();
 
94215
  
 
94216
#line 94217 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94217
public: inline ::Puma::CTree * __exec_old_class_spec();
 
94218
 
 
94219
#line 80 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79881
94220
virtual CTree *class_spec ();
79882
94221
  virtual CTree *cmpd_stmt ();
79883
94222
  virtual CTree *select_stmt ();
79885
94224
 
79886
94225
  // introduce names... add new entries to the class database
79887
94226
  virtual CTree *introduce_label ();
79888
 
  public: inline ::Puma::CTree * __exec_old_introduce_object();
 
94227
  
 
94228
#line 94229 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94229
public: inline ::Puma::CTree * __exec_old_introduce_object();
 
94230
 
 
94231
#line 87 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79889
94232
virtual CTree *introduce_object ();
79890
94233
  virtual CTree *introduce_named_type ();
79891
94234
  virtual CTree *introduce_enum ();
79892
94235
  virtual CTree *introduce_enumerator ();
79893
 
  public: inline ::Puma::CTree * __exec_old_introduce_function();
 
94236
  
 
94237
#line 94238 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94238
public: inline ::Puma::CTree * __exec_old_introduce_function();
 
94239
 
 
94240
#line 91 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79894
94241
virtual CTree *introduce_function ();
79895
94242
  virtual CTree *introduce_parameter ();
79896
 
  public: inline ::Puma::CTree * __exec_old_introduce_class();
 
94243
  
 
94244
#line 94245 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94245
public: inline ::Puma::CTree * __exec_old_introduce_class();
 
94246
 
 
94247
#line 93 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79897
94248
virtual CTree *introduce_class ();
79898
 
  public: inline ::Puma::CTree * __exec_old_introduce_member();
 
94249
  
 
94250
#line 94251 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94251
public: inline ::Puma::CTree * __exec_old_introduce_member();
 
94252
 
 
94253
#line 94 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
79899
94254
virtual CTree *introduce_member ();
79900
94255
  virtual CTree *introduce_tag ();
79901
94256
 
79932
94287
  void createParameter (CFunctionInfo *, CTypeInfo *);
79933
94288
  CFunctionInfo *createFunction (const char *, CStructure *, CTypeInfo *);
79934
94289
   private:
 
94290
 
 
94291
#line 74 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/CMatchSyntax.ah"
79935
94292
 public :
79936
94293
virtual CTree * wc_extension ( ) {
79937
94294
CT_AnyExtension * ext = ( CT_AnyExtension * ) builder ( ) . wc_extension ( ) ;
79944
94301
return ext ;
79945
94302
}  private:
79946
94303
  typedef CSemantic ExtGnuTypeofSemantic;
 
94304
 
 
94305
#line 501 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
79947
94306
 public :
79948
94307
virtual CTree * gnu_typeof ( ) ;  private:
79949
94308
  typedef CSemantic ExtGnuBuiltinsSemantic;
 
94309
 
 
94310
#line 553 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
79950
94311
 public :
79951
94312
void define_gnu_builtins ( ) ;  private:
79952
94313
  typedef CSemantic ACSemantic;
 
94314
 
 
94315
#line 82 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
79953
94316
 public :
79954
94317
ACIntroducer * _introducer ;
79955
94318
private :
79981
94344
void leave_pointcut_decl ( ) { _in_pointcut_decl = false ; }
79982
94345
void enter_pointcut_expr ( ) ;
79983
94346
void leave_pointcut_expr ( ) ;
 
94347
#line 129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94348
 
 
94349
#line 94350 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94350
 
79984
94351
struct TJP__ZN4Puma9CSemanticC1ERKN4PumaE9CSemantic_0 {
79985
94352
  typedef void Result;
79986
94353
  typedef ::Puma::CSemantic That;
80008
94375
};
80009
94376
 
80010
94377
 
 
94378
#line 129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94379
 
 
94380
#line 94381 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94381
 
80011
94382
public:
80012
94383
inline CSemantic (const Puma::CSemantic & arg0) : Puma::Semantic (arg0), _syntax (arg0._syntax), _builder (arg0._builder), in_arg_decl (arg0.in_arg_decl), _in_arg_decl_seq (arg0._in_arg_decl_seq), is_type_name (arg0.is_type_name), _introducer (arg0._introducer), _in_advice_decl (arg0._in_advice_decl), _in_pointcut_decl (arg0._in_pointcut_decl), _at_end_of_advice_decl (arg0._at_end_of_advice_decl), _saved_scope (arg0._saved_scope) {
80013
94384
  TJP__ZN4Puma9CSemanticC1ERKN4PumaE9CSemantic_0 tjp;
80015
94386
  AC::invoke_ExtAC_ExtAC_a1_after<TJP__ZN4Puma9CSemanticC1ERKN4PumaE9CSemantic_0> (&tjp);
80016
94387
 
80017
94388
}
 
94389
 
 
94390
#line 129 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
80018
94391
};
80019
94392
 
80020
94393
 
 
94394
#line 94395 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94395
 
80021
94396
 
80022
94397
struct TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0 {
80023
94398
  typedef void Result;
80049
94424
 
80050
94425
};
80051
94426
 
 
94427
 
 
94428
#line 131 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
80052
94429
inline CSemantic::CSemantic (CSyntax & arg0, CBuilder & arg1) : 
80053
94430
  _syntax (arg0), _builder (arg1),
80054
94431
  in_arg_decl (false),
80055
94432
  _in_arg_decl_seq (false),
80056
94433
  is_type_name (false)
80057
 
 {
 
94434
 
 
94435
#line 94436 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94436
{
80058
94437
  TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0 tjp;
80059
94438
  tjp._that =  (TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0::That*)this;
80060
94439
this->__exec_old_C1(arg0, arg1);
80061
94440
  AC::invoke_ExtAC_ExtAC_a1_after<TJP__ZN4Puma9CSemanticC1ERN4PumaE7CSyntaxRN4PumaE8CBuilder_0> (&tjp);
80062
94441
 
80063
94442
}
80064
 
inline void Puma::CSemantic::__exec_old_C1(::Puma::CSyntax & s,::Puma::CBuilder & b){}
 
94443
inline void Puma::CSemantic::__exec_old_C1(::Puma::CSyntax & s,::Puma::CBuilder & b)
 
94444
#line 136 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94445
{}
80065
94446
 
80066
94447
inline CBuilder &CSemantic::builder () const 
80067
94448
 { return _builder; }
80089
94470
} // namespace Puma
80090
94471
 
80091
94472
#endif /* __CSemantic_h__ */
80092
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
94473
 
 
94474
#line 94475 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94475
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemantic_h__
 
94476
 
 
94477
#line 163 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemantic.h"
 
94478
 
 
94479
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclarator.h"
80093
94480
// This file is part of PUMA.
80094
94481
// Copyright (C) 1999-2003  The PUMA developer team.
80095
94482
//                                                                
80111
94498
#ifndef __CSemDeclarator_h__
80112
94499
#define __CSemDeclarator_h__
80113
94500
 
 
94501
 
 
94502
#line 24 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclarator.h"
80114
94503
namespace Puma {
80115
94504
 
80116
94505
 
80119
94508
class CT_SimpleName;
80120
94509
class CT_DeclSpecSeq;
80121
94510
 
 
94511
 
 
94512
#line 94513 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
80122
94513
} // closed Puma
80123
94514
class WinIfExists;
80124
94515
class WinImportHandler;
80139
94530
class CCExprResolve;
80140
94531
class CExprResolve;
80141
94532
namespace Puma {
80142
 
class CSemDeclarator {  friend class ::WinIfExists;
 
94533
 
 
94534
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclarator.h"
 
94535
class CSemDeclarator {
 
94536
#line 94537 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94537
  friend class ::WinIfExists;
80143
94538
  friend class ::WinImportHandler;
80144
94539
  friend class ::WinMacros;
80145
94540
  friend class ::CMatchSyntax;
80158
94553
  friend class ::CCExprResolve;
80159
94554
  friend class ::CExprResolve;
80160
94555
 
 
94556
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclarator.h"
 
94557
 
80161
94558
  ErrorSink *_err;
80162
94559
  CTypeInfo *_type;
80163
94560
  CT_SimpleName *_name;
80178
94575
 
80179
94576
#endif /* __CSemDeclarator_h__ */
80180
94577
 
 
94578
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
94579
 
 
94580
#line 94581 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94581
 
80181
94582
#ifndef __ac_fwd_ExtGnu__
80182
94583
#define __ac_fwd_ExtGnu__
80183
94584
class ExtGnu;
80217
94618
}
80218
94619
#endif
80219
94620
 
80220
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
80221
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
94621
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
94622
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
80222
94623
#endif
80223
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
80224
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
94624
 
 
94625
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
94626
 
 
94627
#line 94628 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94628
 
 
94629
#line 4 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
94630
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
94631
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
94632
 
 
94633
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
80225
94634
// This file is part of PUMA.
80226
94635
// Copyright (C) 1999-2003  The PUMA developer team.
80227
94636
//                                                                
80251
94660
 
80252
94661
class ErrorSink;
80253
94662
 
 
94663
 
 
94664
#line 94665 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
80254
94665
} // closed Puma
80255
94666
class WinIfExists;
80256
94667
class WinImportHandler;
80271
94682
class CCExprResolve;
80272
94683
class CExprResolve;
80273
94684
namespace Puma {
80274
 
class CSemDeclSpecs {  friend class ::WinIfExists;
 
94685
 
 
94686
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
94687
class CSemDeclSpecs {
 
94688
#line 94689 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94689
  friend class ::WinIfExists;
80275
94690
  friend class ::WinImportHandler;
80276
94691
  friend class ::WinMacros;
80277
94692
  friend class ::CMatchSyntax;
80290
94705
  friend class ::CCExprResolve;
80291
94706
  friend class ::CExprResolve;
80292
94707
 
 
94708
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
94709
 
80293
94710
 
80294
94711
  // initialization context
80295
94712
  ErrorSink *_err;
80314
94731
 
80315
94732
  // analyses the syntax tree nodes of the decl-spec sequence. Return false
80316
94733
  // if an error was detected. 
80317
 
  public: inline bool __exec_old_analyze_seq();
 
94734
  
 
94735
#line 94736 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94736
public: inline bool __exec_old_analyze_seq();
80318
94737
private:
 
94738
 
 
94739
#line 55 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
80319
94740
bool analyze_seq ();
80320
94741
  
80321
94742
  // analyzes the current declaration specifier in the sequence and set some
80322
94743
  // attributes according to the result. Returns false if the specifier type
80323
94744
  // is unknown.
80324
 
  public: inline bool __exec_old_analyze(::Puma::CTree * spec);
 
94745
  
 
94746
#line 94747 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94747
public: inline bool __exec_old_analyze(::Puma::CTree * spec);
80325
94748
private:
 
94749
 
 
94750
#line 60 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
80326
94751
bool analyze (CTree *spec);
80327
94752
 
80328
94753
  // check functions (used after analyse_seq()
80329
94754
  bool check_prim_decl_specs (bool &have_type);
80330
 
  public: inline bool __exec_old_check_complex_decl_specs(bool & have_type);
 
94755
  
 
94756
#line 94757 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94757
public: inline bool __exec_old_check_complex_decl_specs(bool & have_type);
80331
94758
private:
 
94759
 
 
94760
#line 64 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
80332
94761
bool check_complex_decl_specs (bool &have_type);  
80333
94762
  bool check_storage_class ();
80334
 
  public: inline bool __exec_old_check_signed_unsigned();
 
94763
  
 
94764
#line 94765 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94765
public: inline bool __exec_old_check_signed_unsigned();
80335
94766
private:
 
94767
 
 
94768
#line 66 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
80336
94769
bool check_signed_unsigned ();
80337
94770
  bool check_long_short (); 
80338
 
  public: inline bool __exec_old_check_finally();
 
94771
  
 
94772
#line 94773 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94773
public: inline bool __exec_old_check_finally();
80339
94774
private:
 
94775
 
 
94776
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
80340
94777
bool check_finally ();
80341
94778
  
80342
94779
  // type creation code
80343
 
  public: inline ::Puma::CTypeInfo * __exec_old_create_type();
 
94780
  
 
94781
#line 94782 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94782
public: inline ::Puma::CTypeInfo * __exec_old_create_type();
80344
94783
private:
 
94784
 
 
94785
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
80345
94786
CTypeInfo *create_type ();
80346
94787
  CTypeInfo *create_qualifiers (CTypeInfo *type);
80347
94788
  
80357
94798
  bool defUnion () const;
80358
94799
  bool defEnum () const;
80359
94800
   private:
 
94801
 
 
94802
#line 151 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
80360
94803
 public :
80361
94804
int _typeofs ;
80362
 
CT_GnuTypeof * _typeof_node ;};
 
94805
CT_GnuTypeof * _typeof_node ;
 
94806
#line 85 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
94807
};
80363
94808
 
80364
94809
inline CSemDeclSpecs::~CSemDeclSpecs () 
80365
94810
 { if (_type) CTypeInfo::Destroy (_type); }
80383
94828
} // namespace Puma
80384
94829
 
80385
94830
#endif /* __c_sem_decl_specs_h__ */
80386
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
94831
 
 
94832
#line 94833 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94833
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CSemDeclSpecs_h__
 
94834
 
 
94835
#line 108 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CSemDeclSpecs.h"
 
94836
 
 
94837
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFileInfo.h"
80387
94838
// This file is part of PUMA.
80388
94839
// Copyright (C) 1999-2003  The PUMA developer team.
80389
94840
//                                                                
80408
94859
// source file info
80409
94860
// knows the token unit it is representing
80410
94861
 
 
94862
 
 
94863
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CNamespaceInfo.h"
80411
94864
// This file is part of PUMA.
80412
94865
// Copyright (C) 1999-2003  The PUMA developer team.
80413
94866
//                                                                
80432
94885
// namespace info 
80433
94886
// knows whether it is an alias or an original namespace
80434
94887
 
 
94888
 
 
94889
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CNamespaceInfo.h"
80435
94890
namespace Puma {
80436
94891
 
80437
94892
 
80442
94897
/** \class CNamespaceInfo CNamespaceInfo.h Puma/infos/CNamespaceInfo.h
80443
94898
 *  A CNamespaceInfo object represents a C++ 'namespace'. There are two
80444
94899
 *  kinds of namespaces, i.e. original namespaces and namespace aliases. */
 
94900
 
 
94901
#line 94902 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
80445
94902
} // closed Puma
80446
94903
class WinIfExists;
80447
94904
class WinImportHandler;
80462
94919
class CCExprResolve;
80463
94920
class CExprResolve;
80464
94921
namespace Puma {
80465
 
class CNamespaceInfo : public CStructure {  friend class ::WinIfExists;
 
94922
 
 
94923
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CNamespaceInfo.h"
 
94924
class CNamespaceInfo : public CStructure {
 
94925
#line 94926 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
94926
  friend class ::WinIfExists;
80466
94927
  friend class ::WinImportHandler;
80467
94928
  friend class ::WinMacros;
80468
94929
  friend class ::CMatchSyntax;
80481
94942
  friend class ::CCExprResolve;
80482
94943
  friend class ::CExprResolve;
80483
94944
 
 
94945
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CNamespaceInfo.h"
 
94946
 
80484
94947
  bool _isAlias;
80485
94948
  bool _aroundInstantiation;
80486
94949
  
80539
95002
} // namespace Puma
80540
95003
 
80541
95004
#endif /* __CNamespaceInfo_h__ */
 
95005
 
 
95006
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFileInfo.h"
80542
95007
namespace Puma {
80543
95008
 
80544
95009
 
80551
95016
/** \class CFileInfo CFileInfo.h Puma/infos/CFileInfo.h
80552
95017
 *  A CFileInfo object represents a C/C++ source file. A source 
80553
95018
 *  file also is a scope, i.e. the file scope. */
 
95019
 
 
95020
#line 95021 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
80554
95021
} // closed Puma
80555
95022
class WinIfExists;
80556
95023
class WinImportHandler;
80571
95038
class CCExprResolve;
80572
95039
class CExprResolve;
80573
95040
namespace Puma {
80574
 
class CFileInfo : public CNamespaceInfo {  friend class ::WinIfExists;
 
95041
 
 
95042
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFileInfo.h"
 
95043
class CFileInfo : public CNamespaceInfo {
 
95044
#line 95045 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95045
  friend class ::WinIfExists;
80575
95046
  friend class ::WinImportHandler;
80576
95047
  friend class ::WinMacros;
80577
95048
  friend class ::CMatchSyntax;
80590
95061
  friend class ::CCExprResolve;
80591
95062
  friend class ::CExprResolve;
80592
95063
 
 
95064
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CFileInfo.h"
 
95065
 
80593
95066
  Unit *_Primary;
80594
95067
  bool _haveCBuiltins;
80595
95068
  bool _haveCCBuiltins;
80651
95124
} // namespace Puma
80652
95125
 
80653
95126
#endif /* __CFileInfo_h__ */
 
95127
 
 
95128
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumInfo.h"
80654
95129
// This file is part of PUMA.
80655
95130
// Copyright (C) 1999-2003  The PUMA developer team.
80656
95131
//                                                                
80675
95150
// enumeration info 
80676
95151
// knows its enumerators (enumeration constants)
80677
95152
 
 
95153
 
 
95154
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumeratorInfo.h"
80678
95155
// This file is part of PUMA.
80679
95156
// Copyright (C) 1999-2003  The PUMA developer team.
80680
95157
//                                                                
80699
95176
// enumeration constant (enumerator) info
80700
95177
// knows its enumeration and its constant value
80701
95178
 
 
95179
 
 
95180
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumeratorInfo.h"
80702
95181
namespace Puma {
80703
95182
 
80704
95183
 
80712
95191
 
80713
95192
/** \class CEnumeratorInfo CEnumeratorInfo.h Puma/infos/CEnumeratorInfo.h
80714
95193
 *  A CEnumeratorInfo object represents an enumerator constant. */
 
95194
 
 
95195
#line 95196 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
80715
95196
} // closed Puma
80716
95197
class WinIfExists;
80717
95198
class WinImportHandler;
80732
95213
class CCExprResolve;
80733
95214
class CExprResolve;
80734
95215
namespace Puma {
80735
 
class CEnumeratorInfo : public CAttributeInfo {  friend class ::WinIfExists;
 
95216
 
 
95217
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumeratorInfo.h"
 
95218
class CEnumeratorInfo : public CAttributeInfo {
 
95219
#line 95220 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95220
  friend class ::WinIfExists;
80736
95221
  friend class ::WinImportHandler;
80737
95222
  friend class ::WinMacros;
80738
95223
  friend class ::CMatchSyntax;
80751
95236
  friend class ::CCExprResolve;
80752
95237
  friend class ::CExprResolve;
80753
95238
 
 
95239
#line 41 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumeratorInfo.h"
 
95240
 
80754
95241
  CEnumInfo *_Enum;
80755
95242
  long int _Value;
80756
95243
 
80809
95296
} // namespace Puma
80810
95297
 
80811
95298
#endif /* __CEnumeratorInfo_h__ */
 
95299
 
 
95300
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumInfo.h"
80812
95301
namespace Puma {
80813
95302
 
80814
95303
 
80818
95307
 
80819
95308
/** \class CEnumInfo CEnumInfo.h Puma/infos/CEnumInfo.h
80820
95309
 *  A CEnumInfo object represents a C++ 'enum'. */
 
95310
 
 
95311
#line 95312 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
80821
95312
} // closed Puma
80822
95313
class WinIfExists;
80823
95314
class WinImportHandler;
80838
95329
class CCExprResolve;
80839
95330
class CExprResolve;
80840
95331
namespace Puma {
80841
 
class CEnumInfo : public CScopeRequest {  friend class ::WinIfExists;
 
95332
 
 
95333
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumInfo.h"
 
95334
class CEnumInfo : public CScopeRequest {
 
95335
#line 95336 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95336
  friend class ::WinIfExists;
80842
95337
  friend class ::WinImportHandler;
80843
95338
  friend class ::WinMacros;
80844
95339
  friend class ::CMatchSyntax;
80857
95352
  friend class ::CCExprResolve;
80858
95353
  friend class ::CExprResolve;
80859
95354
 
 
95355
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CEnumInfo.h"
 
95356
 
80860
95357
  Array<CEnumeratorInfo*> _Enumerators;
80861
95358
 
80862
95359
public: 
80931
95428
} // namespace Puma
80932
95429
 
80933
95430
#endif /* __CEnumInfo_h__ */
 
95431
 
 
95432
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnionInfo.h"
80934
95433
// This file is part of PUMA.
80935
95434
// Copyright (C) 1999-2003  The PUMA developer team.
80936
95435
//                                                                
80954
95453
 
80955
95454
// union info
80956
95455
 
 
95456
 
 
95457
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnionInfo.h"
80957
95458
namespace Puma {
80958
95459
 
80959
95460
 
 
95461
 
 
95462
#line 95463 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
80960
95463
} // closed Puma
80961
95464
class WinIfExists;
80962
95465
class WinImportHandler;
80977
95480
class CCExprResolve;
80978
95481
class CExprResolve;
80979
95482
namespace Puma {
80980
 
class CUnionInfo : public CRecord {  friend class ::WinIfExists;
 
95483
 
 
95484
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnionInfo.h"
 
95485
class CUnionInfo : public CRecord {
 
95486
#line 95487 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95487
  friend class ::WinIfExists;
80981
95488
  friend class ::WinImportHandler;
80982
95489
  friend class ::WinMacros;
80983
95490
  friend class ::CMatchSyntax;
80996
95503
  friend class ::CCExprResolve;
80997
95504
  friend class ::CExprResolve;
80998
95505
 
 
95506
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CUnionInfo.h"
 
95507
 
80999
95508
protected:
81000
95509
  CUnionInfo (ObjectId);
81001
95510
 
81029
95538
} // namespace Puma
81030
95539
 
81031
95540
#endif /* __CUnionInfo_h__ */
 
95541
 
 
95542
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLabelInfo.h"
81032
95543
// This file is part of PUMA.
81033
95544
// Copyright (C) 1999-2003  The PUMA developer team.
81034
95545
//                                                                
81052
95563
 
81053
95564
// jump label info
81054
95565
 
 
95566
 
 
95567
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLabelInfo.h"
81055
95568
namespace Puma {
81056
95569
 
81057
95570
 
81061
95574
 
81062
95575
/** \class CLabelInfo CLabelInfo.h Puma/infos/CLabelInfo.h
81063
95576
 *  A CLabelInfo object represents a C/C++ jump label. */
 
95577
 
 
95578
#line 95579 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
81064
95579
} // closed Puma
81065
95580
class WinIfExists;
81066
95581
class WinImportHandler;
81081
95596
class CCExprResolve;
81082
95597
class CExprResolve;
81083
95598
namespace Puma {
81084
 
class CLabelInfo : public CScopeRequest {  friend class ::WinIfExists;
 
95599
 
 
95600
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLabelInfo.h"
 
95601
class CLabelInfo : public CScopeRequest {
 
95602
#line 95603 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95603
  friend class ::WinIfExists;
81085
95604
  friend class ::WinImportHandler;
81086
95605
  friend class ::WinMacros;
81087
95606
  friend class ::CMatchSyntax;
81100
95619
  friend class ::CCExprResolve;
81101
95620
  friend class ::CExprResolve;
81102
95621
 
 
95622
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLabelInfo.h"
 
95623
 
81103
95624
public: 
81104
95625
  /** Construct a new jump label info. */
81105
95626
  CLabelInfo ();
81116
95637
} // namespace Puma
81117
95638
 
81118
95639
#endif /* __CLabelInfo_h__ */
 
95640
 
 
95641
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLocalScope.h"
81119
95642
// This file is part of PUMA.
81120
95643
// Copyright (C) 1999-2003  The PUMA developer team.
81121
95644
//                                                                
81139
95662
 
81140
95663
// local (block) scope info
81141
95664
 
 
95665
 
 
95666
#line 26 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLocalScope.h"
81142
95667
namespace Puma {
81143
95668
 
81144
95669
 
81156
95681
 *    if (...) <local scope>;
81157
95682
 *    while (...) { <local scope> } 
81158
95683
 */
 
95684
 
 
95685
#line 95686 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
81159
95686
} // closed Puma
81160
95687
class WinIfExists;
81161
95688
class WinImportHandler;
81176
95703
class CCExprResolve;
81177
95704
class CExprResolve;
81178
95705
namespace Puma {
81179
 
class CLocalScope : public CStructure {  friend class ::WinIfExists;
 
95706
 
 
95707
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLocalScope.h"
 
95708
class CLocalScope : public CStructure {
 
95709
#line 95710 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95710
  friend class ::WinIfExists;
81180
95711
  friend class ::WinImportHandler;
81181
95712
  friend class ::WinMacros;
81182
95713
  friend class ::CMatchSyntax;
81195
95726
  friend class ::CCExprResolve;
81196
95727
  friend class ::CExprResolve;
81197
95728
 
 
95729
#line 43 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CLocalScope.h"
 
95730
 
81198
95731
public:
81199
95732
  /** Create a new local scope. */
81200
95733
  CLocalScope ();
81220
95753
} // namespace Puma
81221
95754
 
81222
95755
#endif /* __CLocalScope_h__ */
 
95756
 
 
95757
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypedefInfo.h"
81223
95758
// This file is part of PUMA.
81224
95759
// Copyright (C) 1999-2003  The PUMA developer team.
81225
95760
//                                                                
81243
95778
 
81244
95779
// typedef info
81245
95780
 
 
95781
 
 
95782
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypedefInfo.h"
81246
95783
namespace Puma {
81247
95784
 
81248
95785
 
 
95786
 
 
95787
#line 95788 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
81249
95788
} // closed Puma
81250
95789
class WinIfExists;
81251
95790
class WinImportHandler;
81266
95805
class CCExprResolve;
81267
95806
class CExprResolve;
81268
95807
namespace Puma {
81269
 
class CTypedefInfo : public CScopeRequest {  friend class ::WinIfExists;
 
95808
 
 
95809
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypedefInfo.h"
 
95810
class CTypedefInfo : public CScopeRequest {
 
95811
#line 95812 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95812
  friend class ::WinIfExists;
81270
95813
  friend class ::WinImportHandler;
81271
95814
  friend class ::WinMacros;
81272
95815
  friend class ::CMatchSyntax;
81285
95828
  friend class ::CCExprResolve;
81286
95829
  friend class ::CExprResolve;
81287
95830
 
 
95831
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CTypedefInfo.h"
 
95832
 
81288
95833
public: 
81289
95834
  CTypedefInfo ();
81290
95835
  ~CTypedefInfo ();
81307
95852
} // namespace Puma
81308
95853
 
81309
95854
#endif /* __CTypedefInfo_h__ */
 
95855
 
 
95856
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CMemberAliasInfo.h"
81310
95857
// This file is part of PUMA.
81311
95858
// Copyright (C) 1999-2003  The PUMA developer team.
81312
95859
//                                                                
81338
95885
// the denoted member is added to _Functions, 
81339
95886
// _Types and _Attributes of CStructure
81340
95887
 
 
95888
 
 
95889
#line 34 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CMemberAliasInfo.h"
81341
95890
namespace Puma {
81342
95891
 
81343
95892
 
81348
95897
/** \class CMemberAliasInfo CMemberAliasInfo.h Puma/infos/CMemberAliasInfo.h
81349
95898
 *  A CMemberAliasInfo object represents a class member inherited 
81350
95899
 *  from a base class. */
 
95900
 
 
95901
#line 95902 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
81351
95902
} // closed Puma
81352
95903
class WinIfExists;
81353
95904
class WinImportHandler;
81368
95919
class CCExprResolve;
81369
95920
class CExprResolve;
81370
95921
namespace Puma {
81371
 
class CMemberAliasInfo : public CScopeRequest {  friend class ::WinIfExists;
 
95922
 
 
95923
#line 44 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CMemberAliasInfo.h"
 
95924
class CMemberAliasInfo : public CScopeRequest {
 
95925
#line 95926 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95926
  friend class ::WinIfExists;
81372
95927
  friend class ::WinImportHandler;
81373
95928
  friend class ::WinMacros;
81374
95929
  friend class ::CMatchSyntax;
81387
95942
  friend class ::CCExprResolve;
81388
95943
  friend class ::CExprResolve;
81389
95944
 
 
95945
#line 44 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CMemberAliasInfo.h"
 
95946
 
81390
95947
  CObjectInfo *_Member;
81391
95948
 
81392
95949
public: 
81418
95975
 
81419
95976
#endif /* __CMemberAliasInfo_h__ */
81420
95977
 
 
95978
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
95979
 
 
95980
#line 95981 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
95981
 
81421
95982
#ifndef __ac_fwd_ExtAC__
81422
95983
#define __ac_fwd_ExtAC__
81423
95984
class ExtAC;
81447
96008
}
81448
96009
#endif
81449
96010
 
81450
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
81451
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
 
96011
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
 
96012
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
81452
96013
#endif
81453
 
#ifndef __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
81454
 
#define __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
96014
 
 
96015
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
96016
 
 
96017
#line 96018 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
96018
 
 
96019
#line 4 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
96020
#ifndef __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
96021
#define __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
96022
 
 
96023
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
81455
96024
// This file is part of PUMA.
81456
96025
// Copyright (C) 1999-2003  The PUMA developer team.
81457
96026
//                                                                
81498
96067
/** \class CClassDatabase CClassDatabase.h Puma/infos/CClassDatabase.h
81499
96068
 *  A CClassDatabase object is a database of all semantic objects
81500
96069
 *  (infos) of a project. */
 
96070
 
 
96071
#line 96072 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
81501
96072
} // closed Puma
81502
96073
class WinIfExists;
81503
96074
class WinImportHandler;
81518
96089
class CCExprResolve;
81519
96090
class CExprResolve;
81520
96091
namespace Puma {
81521
 
class CClassDatabase  :public ACClassDatabase {  friend class ::WinIfExists;
 
96092
 
 
96093
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
96094
class CClassDatabase  :public ACClassDatabase {
 
96095
#line 96096 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
96096
  friend class ::WinIfExists;
81522
96097
  friend class ::WinImportHandler;
81523
96098
  friend class ::WinMacros;
81524
96099
  friend class ::CMatchSyntax;
81537
96112
  friend class ::CCExprResolve;
81538
96113
  friend class ::CExprResolve;
81539
96114
 
 
96115
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
96116
 
81540
96117
  
81541
96118
  Array<CObjectInfo*> _Classes;   // index of classes
81542
96119
  Array<CObjectInfo*> _Unions;    // index of unions
81626
96203
   *  tree corresponding to the nesting of the semantic objects.
81627
96204
   *  \param out The output stream to dump to.
81628
96205
   *  \param depth The max. depth in the tree to be dumped. */
81629
 
  public: inline void __exec_old_Dump(::std::ostream & out,int depth) const;
 
96206
  
 
96207
#line 96208 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
96208
public: inline void __exec_old_Dump(::std::ostream & out,int depth) const;
 
96209
 
 
96210
#line 137 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
81630
96211
void Dump (ostream &out, int depth = 0) const;
81631
96212
 
81632
96213
  /** Get the project info delivered to the constructor of the database. */
81689
96270
} // namespace Puma
81690
96271
 
81691
96272
#endif /* __CClassDatabase_h__ */
81692
 
#endif // __ac_guard__tmp_AOP_LIN_AOP_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
96273
 
 
96274
#line 96275 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
96275
#endif // __ac_guard__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_inc_Puma_CClassDatabase_h__
 
96276
 
 
96277
#line 198 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CClassDatabase.h"
 
96278
 
 
96279
#line 45 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
81693
96280
#include <stdio.h>
 
96281
 
 
96282
#line 48 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
81694
96283
using namespace std;
81695
96284
 
81696
96285
namespace Puma {
82078
96667
 
82079
96668
 
82080
96669
 
 
96670
#line 96671 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
96671
 
82081
96672
 
82082
96673
struct TJP__ZN4Puma9CSemantic16introduce_objectEv_0 {
82083
96674
  typedef ::Puma::CTree * Result;
82103
96694
 
82104
96695
};
82105
96696
 
82106
 
CTree *CSemantic::introduce_object () {
 
96697
 
 
96698
#line 434 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
96699
CTree *CSemantic::introduce_object () 
 
96700
#line 96701 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
96701
{
82107
96702
  AC::ResultBuffer< ::Puma::CTree *  > result;
82108
96703
  TJP__ZN4Puma9CSemantic16introduce_objectEv_0 tjp;
82109
96704
  tjp._result = &(TJP__ZN4Puma9CSemantic16introduce_objectEv_0::Result&)result;
82113
96708
  return (::Puma::CTree * &)result;
82114
96709
 
82115
96710
}
82116
 
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_object(){
 
96711
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_object()
 
96712
#line 434 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
96713
{
82117
96714
  bool is_typedef, is_fct, is_attr;
82118
96715
  CObjectInfo *info, *prev;
82119
96716
  CT_InitDeclarator *id;
82403
97000
 
82404
97001
 
82405
97002
 
 
97003
#line 97004 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97004
 
82406
97005
 
82407
97006
struct TJP__ZN4Puma9CSemantic18introduce_functionEv_0 {
82408
97007
  typedef ::Puma::CTree * Result;
82431
97030
  }
82432
97031
};
82433
97032
 
82434
 
CTree *CSemantic::introduce_function () {
 
97033
 
 
97034
#line 723 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97035
CTree *CSemantic::introduce_function () 
 
97036
#line 97037 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97037
{
82435
97038
  AC::ResultBuffer< ::Puma::CTree *  > result;
82436
97039
  TJP__ZN4Puma9CSemantic18introduce_functionEv_0 tjp;
82437
97040
  tjp._result = &(TJP__ZN4Puma9CSemantic18introduce_functionEv_0::Result&)result;
82440
97043
  return (::Puma::CTree * &)result;
82441
97044
 
82442
97045
}
82443
 
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_function(){
 
97046
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_function()
 
97047
#line 723 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97048
{
82444
97049
  CFunctionInfo *info;
82445
97050
  CT_DeclSpecSeq *dss;
82446
97051
  CSemDeclSpecs *dsi;
82521
97126
 
82522
97127
 
82523
97128
 
 
97129
#line 97130 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97130
 
82524
97131
 
82525
97132
struct TJP__ZN4Puma9CSemantic15introduce_classEv_0 {
82526
97133
  typedef ::Puma::CTree * Result;
82546
97153
 
82547
97154
};
82548
97155
 
82549
 
CTree *CSemantic::introduce_class () {
 
97156
 
 
97157
#line 803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97158
CTree *CSemantic::introduce_class () 
 
97159
#line 97160 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97160
{
82550
97161
  AC::ResultBuffer< ::Puma::CTree *  > result;
82551
97162
  TJP__ZN4Puma9CSemantic15introduce_classEv_0 tjp;
82552
97163
  tjp._result = &(TJP__ZN4Puma9CSemantic15introduce_classEv_0::Result&)result;
82556
97167
  return (::Puma::CTree * &)result;
82557
97168
 
82558
97169
}
82559
 
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_class(){
 
97170
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_class()
 
97171
#line 803 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97172
{
82560
97173
  CObjectInfo *info, *oi;
82561
97174
  CStructure *scope;
82562
97175
  CT_ClassDef *cs;
82610
97223
 
82611
97224
 
82612
97225
 
 
97226
#line 97227 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97227
 
82613
97228
 
82614
97229
struct TJP__ZN4Puma9CSemantic16introduce_memberEv_0 {
82615
97230
  typedef ::Puma::CTree * Result;
82635
97250
 
82636
97251
};
82637
97252
 
82638
 
CTree *CSemantic::introduce_member () {
 
97253
 
 
97254
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97255
CTree *CSemantic::introduce_member () 
 
97256
#line 97257 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97257
{
82639
97258
  AC::ResultBuffer< ::Puma::CTree *  > result;
82640
97259
  TJP__ZN4Puma9CSemantic16introduce_memberEv_0 tjp;
82641
97260
  tjp._result = &(TJP__ZN4Puma9CSemantic16introduce_memberEv_0::Result&)result;
82645
97264
  return (::Puma::CTree * &)result;
82646
97265
 
82647
97266
}
82648
 
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_member(){
 
97267
inline ::Puma::CTree * Puma::CSemantic::__exec_old_introduce_member()
 
97268
#line 856 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97269
{
82649
97270
  CAttributeInfo *info;
82650
97271
  CSemDeclSpecs *dsi;
82651
97272
  CTree *d;
83051
97672
 
83052
97673
 
83053
97674
 
 
97675
#line 97676 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97676
 
83054
97677
 
83055
97678
struct TJP__ZN4Puma9CSemantic10class_specEv_0 {
83056
97679
  typedef ::Puma::CTree * Result;
83074
97697
 
83075
97698
};
83076
97699
 
83077
 
CTree *CSemantic::class_spec () {
 
97700
 
 
97701
#line 1261 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97702
CTree *CSemantic::class_spec () 
 
97703
#line 97704 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
97704
{
83078
97705
  AC::ResultBuffer< ::Puma::CTree *  > result;
83079
97706
  TJP__ZN4Puma9CSemantic10class_specEv_0 tjp;
83080
97707
  tjp._that =  (TJP__ZN4Puma9CSemantic10class_specEv_0::That*)this;
83083
97710
  return (::Puma::CTree * &)result;
83084
97711
 
83085
97712
}
83086
 
inline ::Puma::CTree * Puma::CSemantic::__exec_old_class_spec(){
 
97713
inline ::Puma::CTree * Puma::CSemantic::__exec_old_class_spec()
 
97714
#line 1261 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97715
{
83087
97716
  CT_ClassDef *result;
83088
97717
//  CStructure *scope;
83089
97718
  
83221
97850
 
83222
97851
 
83223
97852
} // namespace Puma
83224
 
void Puma::CSemantic ::leave_pointcut_expr () {
 
97853
 
 
97854
#line 647 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97855
void
 
97856
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97857
 Puma::CSemantic 
 
97858
#line 647 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97859
::leave_pointcut_expr () {
83225
97860
  syntax ().token_provider->set_state (_at_end_of_advice_decl);
83226
97861
  current_scope = _saved_scope;
83227
97862
  _saved_scope = 0;
83228
 
}void Puma::CSemantic ::enter_pointcut_expr () {
 
97863
}
 
97864
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97865
 
 
97866
#line 636 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97867
void
 
97868
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97869
 Puma::CSemantic 
 
97870
#line 636 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97871
::enter_pointcut_expr () {
83229
97872
  _at_end_of_advice_decl = syntax ().token_provider->get_state ();
83230
97873
  _saved_scope = current_scope;
83231
97874
  if (builder ().nodes () > 2) { // block intro decls have only 2 nodes!
83233
97876
    if (node->NodeName () == CT_FctDef::NodeId ())
83234
97877
      current_scope = ((CT_FctDef*)node)->Object ()->FunctionInfo ();
83235
97878
  }
83236
 
}void Puma::CSemantic ::check_intro (CT_ObjDecl *od) {
 
97879
}
 
97880
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97881
 
 
97882
#line 611 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97883
void
 
97884
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97885
 Puma::CSemantic 
 
97886
#line 611 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97887
::check_intro (CT_ObjDecl *od) {
83237
97888
  CT_DeclaratorList *dl = od->Declarators();
83238
97889
  bool baseclass = false;
83239
97890
  for (int i = 0; i < dl->Entries (); i++)
83256
97907
    else if (obj->Protection () == CProtection::PROT_NONE)
83257
97908
      SEM_ERROR (od, "baseclass introduction must be in aspect scope");
83258
97909
  }
83259
 
}CTree * Puma::CSemantic ::introduce_member_advice () {
 
97910
}
 
97911
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97912
 
 
97913
#line 504 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97914
CTree *
 
97915
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
97916
 Puma::CSemantic 
 
97917
#line 504 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
97918
::introduce_member_advice () {
83260
97919
  CT_AdviceDecl *ad = (CT_AdviceDecl*) builder ().advice_decl ();
83261
97920
  if (! ad)
83262
97921
    return ad;
83361
98020
  }
83362
98021
  
83363
98022
  return ad;
83364
 
}CTree * Puma::CSemantic ::introduce_class_slice_member () {
 
98023
}
 
98024
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98025
 
 
98026
#line 480 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98027
CTree *
 
98028
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98029
 Puma::CSemantic 
 
98030
#line 480 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98031
::introduce_class_slice_member () {
83365
98032
  CT_Intro *i = (CT_Intro*)builder ().class_slice_member_decl ();
83366
98033
  if (!i) return i;
83367
98034
  
83383
98050
      acsi->add_member (i);
83384
98051
  }
83385
98052
  return i;
83386
 
}CTree * Puma::CSemantic ::introduce_class_slice () {
 
98053
}
 
98054
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98055
 
 
98056
#line 387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98057
CTree *
 
98058
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98059
 Puma::CSemantic 
 
98060
#line 387 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98061
::introduce_class_slice () {
83387
98062
  // check if this is a slice member
83388
98063
  CTree *name = builder ().get_node (2);
83389
98064
  if (name->NodeName () == CT_QualName::NodeId () ||
83474
98149
    }
83475
98150
  }
83476
98151
  return csd;  
83477
 
}CTree * Puma::CSemantic ::introduce_pointcut () {
 
98152
}
 
98153
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98154
 
 
98155
#line 327 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98156
CTree *
 
98157
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98158
 Puma::CSemantic 
 
98159
#line 327 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98160
::introduce_pointcut () {
83478
98161
  CT_PointcutDecl *pcd = (CT_PointcutDecl*) builder ().pointcut_decl ();
83479
98162
  
83480
98163
  // handle pointcuts only if there is a valid ObjDecl node
83531
98214
    }
83532
98215
  }
83533
98216
  return pcd;
83534
 
}void Puma::CSemantic ::add_base_classes_post (CTree *cs) {
 
98217
}
 
98218
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98219
 
 
98220
#line 300 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98221
void
 
98222
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98223
 Puma::CSemantic 
 
98224
#line 300 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98225
::add_base_classes_post (CTree *cs) {
83535
98226
 
83536
98227
  if (cs && cs->token ()->type () == TOK_ASPECT && cs->SemObject () && 
83537
98228
      cs->SemObject ()->Object ()) {
83556
98247
      }
83557
98248
    }
83558
98249
  }
83559
 
}void Puma::CSemantic ::introduce_class_post (
 
98250
}
 
98251
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98252
 
 
98253
#line 287 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98254
void
 
98255
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98256
 Puma::CSemantic 
 
98257
#line 287 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98258
::introduce_class_post (
83560
98259
  CT_ClassDef *cd) {
83561
98260
   
83562
98261
  if (cd->token ()->type () == TOK_ASPECT) {
83567
98266
    if (! ci->Scope ()->ScopeInfo ()->GlobalScope ())
83568
98267
      SEM_ERROR (cd, "aspects must be in global scope");
83569
98268
  }
83570
 
}void Puma::CSemantic ::introduce_function_post (
 
98269
}
 
98270
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98271
 
 
98272
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98273
void
 
98274
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98275
 Puma::CSemantic 
 
98276
#line 252 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtAC.ah"
 
98277
::introduce_function_post (
83571
98278
  CObjectInfo *func, CTree *node) {
83572
98279
    
83573
98280
  // check for an advice definition
83600
98307
      SEM_ERROR (node, "invalid signature of aspectof");
83601
98308
    ai->aspect_of (aofunc);
83602
98309
  }
83603
 
}void Puma::CSemantic ::define_gnu_builtins () {
 
98310
}
 
98311
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98312
 
 
98313
#line 557 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
98314
void
 
98315
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98316
 Puma::CSemantic 
 
98317
#line 557 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
98318
::define_gnu_builtins () {
83604
98319
  // declare gnu-specific builtin functions
83605
98320
 
83606
98321
  CFunctionInfo *info;
83937
98652
  type = new CTypePointer (type);
83938
98653
  attr = createAttribute ("__PRETTY_FUNCTION__", current_scope, type, true);
83939
98654
 
83940
 
}CTree * Puma::CSemantic ::gnu_typeof () {
 
98655
}
 
98656
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98657
 
 
98658
#line 505 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
98659
CTree *
 
98660
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98661
 Puma::CSemantic 
 
98662
#line 505 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtGnu.ah"
 
98663
::gnu_typeof () {
83941
98664
  CTree *result = builder ().gnu_typeof ();
83942
98665
  if (result) {
83943
98666
    CT_GnuTypeof *node = (CT_GnuTypeof*)result;
83954
98677
  }
83955
98678
  return result;
83956
98679
}
83957
 
#ifdef __ac_FIRST_FILE__tmp_AOP_LIN_AOP_Puma_gen45release_step1_src_CSemantic_cc__
 
98680
#line 1398 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98681
 
 
98682
#line 98683 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
98683
 
 
98684
#ifdef __ac_FIRST_FILE__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_src_CSemantic_cc__
83958
98685
/*** begin of aspect includes ***/
83959
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinIfExists_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinIfExists_ah__)
83960
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinIfExists_ah__
 
98686
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinIfExists_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinIfExists_ah__)
 
98687
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinIfExists_ah__
83961
98688
#include "WinIfExists.ah"
83962
98689
#endif
83963
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinImportHandler_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinImportHandler_ah__)
83964
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinImportHandler_ah__
 
98690
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinImportHandler_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinImportHandler_ah__)
 
98691
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinImportHandler_ah__
83965
98692
#include "WinImportHandler.ah"
83966
98693
#endif
83967
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinMacros_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinMacros_ah__)
83968
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinMacros_ah__
 
98694
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinMacros_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinMacros_ah__)
 
98695
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinMacros_ah__
83969
98696
#include "WinMacros.ah"
83970
98697
#endif
83971
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__)
83972
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
83973
 
#endif
83974
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__)
83975
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtGnu_ah__
83976
 
#endif
83977
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__)
83978
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtAC_ah__
83979
 
#endif
83980
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__)
83981
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
83982
 
#endif
83983
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderCC_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderCC_ah__)
83984
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACBuilderCC_ah__
 
98698
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__)
 
98699
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CMatchSyntax_ah__
 
98700
 
 
98701
#line 19 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98702
#endif
 
98703
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__)
 
98704
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtGnu_ah__
 
98705
 
 
98706
#line 23 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98707
#endif
 
98708
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__)
 
98709
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtAC_ah__
 
98710
 
 
98711
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98712
#endif
 
98713
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__)
 
98714
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderH_ah__
 
98715
 
 
98716
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
98717
#endif
 
98718
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderCC_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderCC_ah__)
 
98719
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACBuilderCC_ah__
83985
98720
#include "ExtACBuilderCC.ah"
83986
98721
#endif
83987
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__)
83988
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__
 
98722
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__)
 
98723
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxH_ah__
 
98724
 
 
98725
#line 39 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
83989
98726
#endif
83990
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxCC_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxCC_ah__)
83991
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACSyntaxCC_ah__
 
98727
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxCC_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxCC_ah__)
 
98728
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACSyntaxCC_ah__
83992
98729
#include "ExtACSyntaxCC.ah"
83993
98730
#endif
83994
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__)
83995
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
98731
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__)
 
98732
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACTree_ah__
 
98733
 
 
98734
#line 47 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
83996
98735
#endif
83997
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__)
83998
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
98736
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__)
 
98737
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
98738
 
 
98739
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
83999
98740
// This file is part of PUMA.
84000
98741
// Copyright (C) 1999-2003  The PUMA developer team.
84001
98742
//                                                                
84018
98759
#define __ext_ac_keywords_ah__
84019
98760
 
84020
98761
 
 
98762
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
98763
 
 
98764
#line 98765 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
98765
 
84021
98766
#ifndef __ac_fwd_ExtACKeywords__
84022
98767
#define __ac_fwd_ExtACKeywords__
84023
98768
class ExtACKeywords;
84031
98776
}
84032
98777
#endif
84033
98778
 
84034
 
#ifndef __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
84035
 
#define __ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
98779
#ifndef __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
 
98780
#define __ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_ExtACKeywords_ah__
84036
98781
#endif
 
98782
 
 
98783
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
84037
98784
// This file is part of PUMA.
84038
98785
// Copyright (C) 1999-2003  The PUMA developer team.
84039
98786
//                                                                
84068
98815
class Source;
84069
98816
class CTypeInfo;
84070
98817
 
 
98818
 
 
98819
#line 98820 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
84071
98820
} // closed Puma
84072
98821
class WinIfExists;
84073
98822
class WinImportHandler;
84088
98837
class CCExprResolve;
84089
98838
class CExprResolve;
84090
98839
namespace Puma {
84091
 
class CProject : public Project {  friend class ::WinIfExists;
 
98840
 
 
98841
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
98842
class CProject : public Project {
 
98843
#line 98844 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
98844
  friend class ::WinIfExists;
84092
98845
  friend class ::WinImportHandler;
84093
98846
  friend class ::WinMacros;
84094
98847
  friend class ::CMatchSyntax;
84107
98860
  friend class ::CCExprResolve;
84108
98861
  friend class ::CExprResolve;
84109
98862
 
 
98863
#line 35 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
 
98864
 
84110
98865
  Config _config;
84111
98866
  CScanner _scanner;
84112
98867
 
84140
98895
 
84141
98896
  // Scan the file `file' or the source if given. When
84142
98897
  // scanning a source the resulting unit gets the name `file'.
84143
 
  public: inline ::Puma::Unit * __exec_old_scanFile(const char * file,::Puma::Source * ,bool isFile);
 
98898
  
 
98899
#line 98900 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
98900
public: inline ::Puma::Unit * __exec_old_scanFile(const char * file,::Puma::Source * ,bool isFile);
 
98901
 
 
98902
#line 69 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/CProject.h"
84144
98903
virtual Unit *scanFile (const char *file, Source * = (Source*)0, 
84145
98904
                          bool isFile = true);
84146
98905
        
84169
98928
} // namespace Puma
84170
98929
 
84171
98930
#endif /* __CProject_h__ */
 
98931
 
 
98932
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FileUnit.h"
84172
98933
// This file is part of PUMA.
84173
98934
// Copyright (C) 1999-2003  The PUMA developer team.
84174
98935
//                                                                
84193
98954
// Special Unit for files. Knows its last save location and the
84194
98955
// absolute path of the corresponding file.
84195
98956
 
 
98957
 
 
98958
#line 27 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FileUnit.h"
84196
98959
namespace Puma {
84197
98960
 
84198
98961
 
84199
98962
class Project;
84200
98963
 
 
98964
 
 
98965
#line 98966 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
84201
98966
} // closed Puma
84202
98967
class WinIfExists;
84203
98968
class WinImportHandler;
84218
98983
class CCExprResolve;
84219
98984
class CExprResolve;
84220
98985
namespace Puma {
84221
 
class FileUnit : public Unit {  friend class ::WinIfExists;
 
98986
 
 
98987
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FileUnit.h"
 
98988
class FileUnit : public Unit {
 
98989
#line 98990 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
98990
  friend class ::WinIfExists;
84222
98991
  friend class ::WinImportHandler;
84223
98992
  friend class ::WinMacros;
84224
98993
  friend class ::CMatchSyntax;
84237
99006
  friend class ::CCExprResolve;
84238
99007
  friend class ::CExprResolve;
84239
99008
 
 
99009
#line 32 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/inc/Puma/FileUnit.h"
 
99010
 
84240
99011
  char *_lastLocation; 
84241
99012
  char *_absolutePath;
84242
99013
  
84300
99071
} // namespace Puma
84301
99072
 
84302
99073
#endif /* __FileUnit__ */
 
99074
 
 
99075
#line 25 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
84303
99076
using namespace Puma;
84304
99077
 
84305
99078
// *****************************************
84306
99079
// AspectC++ keyword handling in the scanner
84307
99080
// *****************************************
 
99081
 
 
99082
#line 99083 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
84308
99083
class WinIfExists;
84309
99084
class WinImportHandler;
84310
99085
class WinMacros;
84322
99097
class PragmaOnce;
84323
99098
class CCExprResolve;
84324
99099
class CExprResolve;
 
99100
 
 
99101
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
84325
99102
class ExtACKeywords {
 
99103
#line 99104 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99104
 
84326
99105
public:
84327
99106
  static ExtACKeywords *aspectof () {
84328
99107
    static ExtACKeywords __instance;
84332
99111
    return aspectof ();
84333
99112
  }
84334
99113
private:
 
99114
 
 
99115
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99116
 
 
99117
#line 99118 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
84335
99118
  friend class ::WinIfExists;
84336
99119
  friend class ::WinImportHandler;
84337
99120
  friend class ::WinMacros;
84350
99133
  friend class ::CCExprResolve;
84351
99134
  friend class ::CExprResolve;
84352
99135
 
 
99136
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99137
 
84353
99138
 
84354
99139
  bool _prj_keywords;
84355
99140
  CProject *_project; // active project
84361
99146
  void prj_keywords (bool kw) { _prj_keywords = kw; }
84362
99147
  
84363
99148
  
84364
 
public: void __a0_before (CProject &project) {
 
99149
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99150
 
 
99151
public: void __a0_before 
 
99152
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99153
 
 
99154
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99155
(CProject &project)
 
99156
#line 42 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99157
 {
84365
99158
    _project = &project;
84366
99159
  }
84367
99160
  
84368
99161
  
84369
 
public: template<class JoinPoint> void __a1_before (JoinPoint *tjp, Unit &unit) {
 
99162
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99163
 
 
99164
public: template<class JoinPoint> void __a1_before 
 
99165
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99166
 
 
99167
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99168
(JoinPoint *tjp, Unit &unit)
 
99169
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99170
 {
 
99171
#line 99172 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99172
 
84370
99173
  typedef typename JoinPoint::That __JP_That;
84371
99174
  typedef typename JoinPoint::Target __JP_Target;
84372
99175
  typedef typename JoinPoint::Result __JP_Result;
84373
99176
 
 
99177
#line 50 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99178
 
84374
99179
    if (!unit.isFile ())
84375
99180
      return;
84376
99181
      
84389
99194
  }
84390
99195
  
84391
99196
  
84392
 
public: template<class JoinPoint> void __a2_before (JoinPoint *tjp) {
 
99197
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99198
 
 
99199
public: template<class JoinPoint> void __a2_before 
 
99200
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99201
 
 
99202
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99203
(JoinPoint *tjp)
 
99204
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99205
 {
 
99206
#line 99207 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99207
 
84393
99208
  typedef typename JoinPoint::That __JP_That;
84394
99209
  typedef typename JoinPoint::Target __JP_Target;
84395
99210
  typedef typename JoinPoint::Result __JP_Result;
84396
99211
 
 
99212
#line 68 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
 
99213
 
84397
99214
    _project = tjp->that ();
84398
99215
  }
84399
99216
};
 
99217
#line 99218 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99218
 
84400
99219
namespace AC {
84401
99220
  template <class JoinPoint, class Binding>
84402
99221
  inline void invoke_ExtACKeywords_ExtACKeywords_a0_before (JoinPoint *tjp) {
84413
99232
    ::ExtACKeywords::aspectof()->__a2_before (tjp);
84414
99233
  }
84415
99234
 
99235
 
 
99236
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/ExtACKeywords.ah"
84416
99237
  
84417
99238
 
84418
99239
#endif /* __ext_ac_keywords_ah__ */
 
99240
 
 
99241
#line 51 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
84419
99242
#endif
84420
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_TraceSyntax_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_TraceSyntax_ah__)
84421
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_TraceSyntax_ah__
 
99243
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_TraceSyntax_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_TraceSyntax_ah__)
 
99244
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_TraceSyntax_ah__
84422
99245
#include "TraceSyntax.ah"
84423
99246
#endif
84424
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinAsm_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinAsm_ah__)
84425
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinAsm_ah__
84426
 
#endif
84427
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__)
84428
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__
84429
 
#endif
84430
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinMemberExplSpec_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinMemberExplSpec_ah__)
84431
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinMemberExplSpec_ah__
 
99247
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinAsm_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinAsm_ah__)
 
99248
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinAsm_ah__
 
99249
 
 
99250
#line 59 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
99251
#endif
 
99252
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__)
 
99253
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinDeclSpecs_ah__
 
99254
 
 
99255
#line 63 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
99256
#endif
 
99257
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinMemberExplSpec_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinMemberExplSpec_ah__)
 
99258
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinMemberExplSpec_ah__
84432
99259
#include "WinMemberExplSpec.ah"
84433
99260
#endif
84434
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__)
84435
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__
 
99261
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__)
 
99262
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_WinTypeKeywords_ah__
 
99263
 
 
99264
#line 1 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
84436
99265
// This file is part of PUMA.
84437
99266
// Copyright (C) 1999-2003  The PUMA developer team.
84438
99267
//                                                                
84458
99287
/* Win builtin types support aspect                     */
84459
99288
/********************************************************/
84460
99289
 
 
99290
 
 
99291
#line 28 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
84461
99292
using namespace Puma;
84462
99293
 
 
99294
 
 
99295
#line 99296 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
84463
99296
class WinIfExists;
84464
99297
class WinImportHandler;
84465
99298
class WinMacros;
84477
99310
class PragmaOnce;
84478
99311
class CCExprResolve;
84479
99312
class CExprResolve;
 
99313
 
 
99314
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
84480
99315
class WinTypeKeywords {
 
99316
#line 99317 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99317
 
84481
99318
public:
84482
99319
  static WinTypeKeywords *aspectof () {
84483
99320
    static WinTypeKeywords __instance;
84487
99324
    return aspectof ();
84488
99325
  }
84489
99326
private:
 
99327
 
 
99328
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99329
 
 
99330
#line 99331 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
84490
99331
  friend class ::WinIfExists;
84491
99332
  friend class ::WinImportHandler;
84492
99333
  friend class ::WinMacros;
84505
99346
  friend class ::CCExprResolve;
84506
99347
  friend class ::CExprResolve;
84507
99348
 
 
99349
#line 30 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99350
 
84508
99351
  
84509
 
public: template<class JoinPoint> void __a0_after (JoinPoint *tjp) {
 
99352
#line 3 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99353
 
 
99354
public: template<class JoinPoint> void __a0_after 
 
99355
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99356
 
 
99357
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99358
(JoinPoint *tjp)
 
99359
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99360
 {
 
99361
#line 99362 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99362
 
84510
99363
  typedef typename JoinPoint::That __JP_That;
84511
99364
  typedef typename JoinPoint::Target __JP_Target;
84512
99365
  typedef typename JoinPoint::Result __JP_Result;
84513
99366
 
 
99367
#line 31 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99368
 
84514
99369
    tjp->that ()->_prim_types.set (TOK_INT64);
84515
99370
  }
 
99371
#line 99372 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99372
 
84516
99373
private:
84517
99374
 
 
99375
#line 33 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99376
 
84518
99377
 
84519
99378
protected:
84520
99379
  WinTypeKeywords () {}
84521
99380
};
 
99381
#line 99382 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step2/src/CSemantic.cc"
 
99382
 
84522
99383
namespace AC {
84523
99384
  template <class JoinPoint>
84524
99385
  inline void invoke_WinTypeKeywords_WinTypeKeywords_a0_after (JoinPoint *tjp) {
84526
99387
  }
84527
99388
84528
99389
 
 
99390
#line 37 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/aspects/WinTypeKeywords.ah"
 
99391
 
84529
99392
 
84530
99393
 
84531
99394
#endif /* __WinTypeKeywords__ */
84532
 
#endif
84533
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__)
84534
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__
84535
 
#endif
84536
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnce_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnce_ah__)
84537
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_PragmaOnce_ah__
 
99395
 
 
99396
#line 71 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
99397
#endif
 
99398
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__)
 
99399
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnceUnitState_ah__
 
99400
 
 
99401
#line 75 "/local/scratch/packages/aspectc++/ac-woven-1.0pre3/Puma/gen-release/step1/src/CSemantic.cc"
 
99402
#endif
 
99403
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnce_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnce_ah__)
 
99404
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_PragmaOnce_ah__
84538
99405
#include "PragmaOnce.ah"
84539
99406
#endif
84540
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CCExprResolveH_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CCExprResolveH_ah__)
84541
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CCExprResolveH_ah__
 
99407
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CCExprResolveH_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CCExprResolveH_ah__)
 
99408
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CCExprResolveH_ah__
84542
99409
#include "CCExprResolveH.ah"
84543
99410
#endif
84544
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CCExprResolveCC_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CCExprResolveCC_ah__)
84545
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CCExprResolveCC_ah__
 
99411
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CCExprResolveCC_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CCExprResolveCC_ah__)
 
99412
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CCExprResolveCC_ah__
84546
99413
#include "CCExprResolveCC.ah"
84547
99414
#endif
84548
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CExprResolveH_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CExprResolveH_ah__)
84549
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CExprResolveH_ah__
 
99415
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CExprResolveH_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CExprResolveH_ah__)
 
99416
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CExprResolveH_ah__
84550
99417
#include "CExprResolveH.ah"
84551
99418
#endif
84552
 
#if !defined(__ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CExprResolveCC_ah__) && defined(__ac_need__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CExprResolveCC_ah__)
84553
 
#define __ac_have__tmp_AOP_LIN_AOP_Puma_gen45release_step1_aspects_CExprResolveCC_ah__
 
99419
#if !defined(__ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CExprResolveCC_ah__) && defined(__ac_need__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CExprResolveCC_ah__)
 
99420
#define __ac_have__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_aspects_CExprResolveCC_ah__
84554
99421
#include "CExprResolveCC.ah"
84555
99422
#endif
84556
99423
/*** end of aspect includes ***/
84557
 
#undef __ac_FIRST__tmp_AOP_LIN_AOP_Puma_gen45release_step1__
84558
 
#undef __ac_FIRST_FILE__tmp_AOP_LIN_AOP_Puma_gen45release_step1_src_CSemantic_cc__
84559
 
#endif // __ac_FIRST_FILE__tmp_AOP_LIN_AOP_Puma_gen45release_step1_src_CSemantic_cc__
 
99424
#undef __ac_FIRST__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1__
 
99425
#undef __ac_FIRST_FILE__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_src_CSemantic_cc__
 
99426
#endif // __ac_FIRST_FILE__local_scratch_packages_aspectc4343_ac45woven451_0pre3_Puma_gen45release_step1_src_CSemantic_cc__