summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/classdef.cpp11
-rw-r--r--src/classdef.h3
2 files changed, 13 insertions, 1 deletions
diff --git a/src/classdef.cpp b/src/classdef.cpp
index 4977760..657968e 100644
--- a/src/classdef.cpp
+++ b/src/classdef.cpp
@@ -1582,7 +1582,11 @@ void ClassDef::writeSummaryLinks(OutputList &ol)
void ClassDef::writeTagFile(FTextStream &tagFile)
{
if (!isLinkableInProject()) return;
- tagFile << " <compound kind=\"" << compoundTypeString();
+ tagFile << " <compound kind=\"";
+ if (isFortran() && (compoundTypeString() == "type"))
+ tagFile << "struct";
+ else
+ tagFile << compoundTypeString();
tagFile << "\"";
if (isObjectiveC()) { tagFile << " objc=\"yes\""; }
tagFile << ">" << endl;
@@ -4500,6 +4504,11 @@ bool ClassDef::isObjectiveC() const
return getLanguage()==SrcLangExt_ObjC;
}
+bool ClassDef::isFortran() const
+{
+ return getLanguage()==SrcLangExt_Fortran;
+}
+
bool ClassDef::isCSharp() const
{
return getLanguage()==SrcLangExt_CSharp;
diff --git a/src/classdef.h b/src/classdef.h
index b169221..12fcd93 100644
--- a/src/classdef.h
+++ b/src/classdef.h
@@ -266,6 +266,9 @@ class ClassDef : public Definition
/** Returns TRUE if this class is implemented in Objective-C */
bool isObjectiveC() const;
+ /** Returns TRUE if this class is implemented in Fortran */
+ bool isFortran() const;
+
/** Returns TRUE if this class is implemented in C# */
bool isCSharp() const;