diff options
-rw-r--r-- | compilerplugins/clang/inlinesimplememberfunctions.cxx | 30 | ||||
-rw-r--r-- | lotuswordpro/source/filter/lwplayout.hxx | 1 |
2 files changed, 29 insertions, 2 deletions
diff --git a/compilerplugins/clang/inlinesimplememberfunctions.cxx b/compilerplugins/clang/inlinesimplememberfunctions.cxx index cd5aa238b66e..0d4428c843dc 100644 --- a/compilerplugins/clang/inlinesimplememberfunctions.cxx +++ b/compilerplugins/clang/inlinesimplememberfunctions.cxx @@ -153,6 +153,32 @@ bool InlineSimpleMemberFunctions::VisitCXXMethodDecl(const CXXMethodDecl * funct MemberExpr CXXThisExpr */ + childStmt = *(*compoundStmt->child_begin())->child_begin(); + while (1) { + if (! oneAndOnlyOne( childStmt->children() )) + return true; + if (dyn_cast<CXXThisExpr>( childStmt ) != nullptr) { + + compoundStmt->dump(); + if (!rewrite(functionDecl)) + { + report( + DiagnosticsEngine::Warning, + "inlinesimpleaccessmethods", + functionDecl->getSourceRange().getBegin()) + << functionDecl->getSourceRange(); + // display the location of the class member declaration + report( + DiagnosticsEngine::Note, + "inlinesimpleaccessmethods", + functionDecl->getCanonicalDecl()->getSourceRange().getBegin()) + << functionDecl->getCanonicalDecl()->getSourceRange(); + } + return true; + } + childStmt = *childStmt->child_begin(); + } +/* if (dyn_cast<ImplicitCastExpr>( childStmt ) != nullptr && oneAndOnlyOne( childStmt->children() )) { @@ -182,7 +208,7 @@ bool InlineSimpleMemberFunctions::VisitCXXMethodDecl(const CXXMethodDecl * funct } } } - +*/ return true; } @@ -288,7 +314,7 @@ bool InlineSimpleMemberFunctions::rewrite(const CXXMethodDecl * functionDecl) { return replaceText(canonicalDecl->getLocEnd().getLocWithOffset(p2 - p1 + 1), 1, s1); } -loplugin::Plugin::Registration< InlineSimpleMemberFunctions > X("inlinesimplememberfunctions"); +loplugin::Plugin::Registration< InlineSimpleMemberFunctions > X("inlinesimplememberfunctions", true); } diff --git a/lotuswordpro/source/filter/lwplayout.hxx b/lotuswordpro/source/filter/lwplayout.hxx index 1b2c9aacb06a..ac0ee3ac7c57 100644 --- a/lotuswordpro/source/filter/lwplayout.hxx +++ b/lotuswordpro/source/filter/lwplayout.hxx @@ -82,6 +82,7 @@ #include "xfilter/xfpagemaster.hxx" #include "xfilter/xfcolumns.hxx" #include "xfilter/xfborders.hxx" +#include "xfilter/xffont.hxx" #include "xfilter/xfframestyle.hxx" #include "xfilter/xfframe.hxx" #include "xfilter/xfbgimage.hxx" |