summaryrefslogtreecommitdiffstats
path: root/src/code.l
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-10-11 17:07:23 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-10-11 17:07:23 (GMT)
commit8a93f4e00b6922526935909312dabbd9a566d5cc (patch)
tree285bbb4442d94fc6fb8d71c0d354cdccbca90572 /src/code.l
parent02cdddb491739a18413025ddd587879bd8f5305f (diff)
downloadDoxygen-8a93f4e00b6922526935909312dabbd9a566d5cc.zip
Doxygen-8a93f4e00b6922526935909312dabbd9a566d5cc.tar.gz
Doxygen-8a93f4e00b6922526935909312dabbd9a566d5cc.tar.bz2
Refactoring: Remove use of globals/statics in isAccessibleFrom*
- Also moved AccessStack to util.h and modernized it.
Diffstat (limited to 'src/code.l')
-rw-r--r--src/code.l5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/code.l b/src/code.l
index a614140..77b55dd 100644
--- a/src/code.l
+++ b/src/code.l
@@ -2927,18 +2927,19 @@ static void generateClassOrGlobalLink(yyscan_t yyscanner,
{
if (md==0) // not found as a typedef
{
+ AccessStack accessStack;
md = setCallContextForVar(yyscanner,clName);
//printf("setCallContextForVar(%s) md=%p yyextra->currentDefinition=%p\n",clName,md,yyextra->currentDefinition);
if (md && yyextra->currentDefinition)
{
DBG_CTX((stderr,"%s accessible from %s? %d md->getOuterScope=%s\n",
md->name().data(),yyextra->currentDefinition->name().data(),
- isAccessibleFrom(yyextra->currentDefinition,yyextra->sourceFileDef,md),
+ isAccessibleFrom(accessStack,yyextra->currentDefinition,yyextra->sourceFileDef,md),
md->getOuterScope()->name().data()));
}
if (md && yyextra->currentDefinition &&
- isAccessibleFrom(yyextra->currentDefinition,yyextra->sourceFileDef,md)==-1)
+ isAccessibleFrom(accessStack,yyextra->currentDefinition,yyextra->sourceFileDef,md)==-1)
{
md=0; // variable not accessible
}