~ubuntu-branches/ubuntu/maverick/aspectc++/maverick

« back to all changes in this revision

Viewing changes to Puma/src/infos/CClassInfo.cc

  • Committer: Bazaar Package Importer
  • Author(s): Reinhard Tartler
  • Date: 2008-04-10 17:40:52 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20080410174052-xdnsm7oi8hauyyf1
Tags: 1.0pre4~svn.20080409+dfsg-3
Fix another missing include, this time in Ag++/StdSystem.cc

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
// MA  02111-1307  USA                                            
18
18
 
19
19
#include "Puma/CClassInfo.h"
 
20
#include "Puma/CFunctionInfo.h"
 
21
#include "Puma/CAttributeInfo.h"
 
22
#include "Puma/CClassInstance.h"
20
23
#include "Puma/CTemplateInfo.h"
21
24
#include "Puma/CTemplateInstance.h"
22
25
#include "Puma/CTokens.h"
134
137
 
135
138
CClassInfo *CClassInfo::DefObject () const {
136
139
  CObjectInfo *o = (CObjectInfo*)this;
137
 
  do {
138
 
    if (o->Tree () && o->Tree ()->NodeName () == CT_ClassDef::NodeId ())
139
 
      if (! (o->TemplateInstance () && o->TemplateInstance ()->isPseudoInstance ()))
140
 
        return o->ClassInfo ();
141
 
    o = o->NextObject ();
142
 
  } while (o != (CObjectInfo*)this);
 
140
  if (o->NextObject() != o) {
 
141
    do {
 
142
      CTree* tree = o->Tree();
 
143
      if (tree && tree->NodeName () == CT_ClassDef::NodeId ()) {
 
144
        CClassInstance* ci = o->ClassInstance();
 
145
        if (! (ci && ci->TemplateInstance ()->isPseudoInstance ())) {
 
146
          return o->ClassInfo ();
 
147
        }
 
148
      }
 
149
      o = o->NextObject ();
 
150
    } while (o != (CObjectInfo*)this);
 
151
  }
143
152
  return (CClassInfo*)this;
144
153
}
145
154