summaryrefslogtreecommitdiff
path: root/src/scanner.l
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2021-10-15 10:51:39 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2021-10-15 10:51:39 +0900
commita65b883ee4bf1831f586218430470f0a493bbe5a (patch)
tree996f4f9fcfe434eb0fab959769d2ba0225397327 /src/scanner.l
parentb65cb2d67b946445ba89e1938cee8527969922cd (diff)
downloaddoxygen-a65b883ee4bf1831f586218430470f0a493bbe5a.tar.gz
doxygen-a65b883ee4bf1831f586218430470f0a493bbe5a.tar.bz2
doxygen-a65b883ee4bf1831f586218430470f0a493bbe5a.zip
Imported Upstream version 1.8.8upstream/1.8.8
Diffstat (limited to 'src/scanner.l')
-rw-r--r--src/scanner.l33
1 files changed, 24 insertions, 9 deletions
diff --git a/src/scanner.l b/src/scanner.l
index a7ac841..8370f13 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -682,7 +682,6 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
%x SkipCurlyBlock
%x SkipRoundBlock
%x Sharp
-%x SkipSharp
%x SkipRound
%x SkipSquare
%x SkipRemainder
@@ -2246,7 +2245,7 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
<FindMembers>"Q_OBJECT" { // Qt object macro
}
<FindMembers>"Q_PROPERTY" { // Qt property declaration
- current->protection = protection = Public ;
+ //current->protection = protection = Public ; // see bug734245
current->mtype = mtype = Property;
current->type.resize(0);
BEGIN(QtPropType);
@@ -3373,6 +3372,8 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
}
else
{
+ mtype = Method;
+ virt = Normal;
if (needNewCurrent)
{
current = new Entry ;
@@ -5301,6 +5302,7 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
{
prependScope();
}
+ current->spec|=Entry::ForwardDecl;
current_root->addSubEntry(current);
current = new Entry;
}
@@ -5353,13 +5355,13 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
BEGIN( ClassVar );
}
}
-<AlignAs>"(" { roundCount=1;
+<AlignAs>"(" { roundCount=0;
BEGIN( AlignAsEnd );
}
<AlignAs>\n { lineCount(); }
<AlignAs>.
<AlignAsEnd>"(" { roundCount++; }
-<AlignAsEnd>")" { if (--roundCount<=0)
+<AlignAsEnd>")" { if (--roundCount<0)
{
BEGIN( lastAlignAsContext );
}
@@ -5843,12 +5845,8 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
<Specialization>. {
*specName += *yytext;
}
-<SkipSharp>"<" { ++sharpCount; }
-<SkipSharp>">" { if (--sharpCount<=0)
- BEGIN ( lastSkipSharpContext );
- }
<SkipRound>"(" { ++roundCount; }
-<SkipRound>")" { if (--roundCount<=0)
+<SkipRound>")" { if (--roundCount<0)
BEGIN ( lastSkipRoundContext );
}
<SkipRound>\" {
@@ -6130,10 +6128,15 @@ OPERATOR "operator"{B}*({ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP})
else
{
mtype = Method;
+ virt = Normal;
unput(';');
BEGIN(FindMembers);
}
}
+<CSAccessorDecl>"private "{BN}*"set" { if (curlyCount==0) current->spec |= Entry::PrivateSettable; }
+<CSAccessorDecl>"protected "{BN}*"set" { if (curlyCount==0) current->spec |= Entry::ProtectedSettable; }
+<CSAccessorDecl>"private "{BN}*"get" { if (curlyCount==0) current->spec |= Entry::PrivateGettable; }
+<CSAccessorDecl>"protected "{BN}*"get" { if (curlyCount==0) current->spec |= Entry::ProtectedGettable; }
<CSAccessorDecl>"set" { if (curlyCount==0) current->spec |= Entry::Settable; }
<CSAccessorDecl>"get" { if (curlyCount==0) current->spec |= Entry::Gettable; }
<CSAccessorDecl>"add" { if (curlyCount==0) current->spec |= Entry::Addable; }
@@ -6680,6 +6683,18 @@ static void parseCompounds(Entry *rt)
current = new Entry;
gstat = FALSE;
initEntry();
+
+ // deep copy group list from parent (see bug 727732)
+ if (rt->groups)
+ {
+ QListIterator<Grouping> gli(*rt->groups);
+ Grouping *g;
+ for (;(g=gli.current());++gli)
+ {
+ ce->groups->append(new Grouping(*g));
+ }
+ }
+
int ni=ce->name.findRev("::"); if (ni==-1) ni=0; else ni+=2;
// set default protection based on the compound type
if( ce->section==Entry::CLASS_SEC ) // class