diff options
author | Milivoje Legenovic | 2015-03-03 22:37:29 +0000 |
---|---|---|
committer | Milivoje Legenovic | 2015-03-03 22:37:29 +0000 |
commit | 52794aa29c359bd7968cc1715d77a3466634e55f (patch) | |
tree | d33dcfa5e97c4fd2c311d35960fedf38722038f0 /core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter | |
parent | bb4b74b3673fefdc396709a1bfc1585512fbfe7b (diff) | |
download | org.eclipse.cdt-52794aa29c359bd7968cc1715d77a3466634e55f.tar.gz org.eclipse.cdt-52794aa29c359bd7968cc1715d77a3466634e55f.tar.xz org.eclipse.cdt-52794aa29c359bd7968cc1715d77a3466634e55f.zip |
Bug 460551. C++11 Keyword 'final' not supported in code formatter
Change-Id: I87db78c4b848f2a469c8a0cd53caa6c60aa3adca
Signed-off-by: Milivoje Legenovic <duh-sa-sekirom@hotmail.com>
Diffstat (limited to 'core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter')
-rw-r--r-- | core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java index 1a8767025b7..f03dd5c0718 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java @@ -104,6 +104,7 @@ import org.eclipse.cdt.core.dom.ast.c.ICASTVisitor; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTBinaryExpression; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCastExpression; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCatchHandler; +import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTClassVirtSpecifier; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCompositeTypeSpecifier; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier; import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTConstructorChainInitializer; @@ -386,6 +387,7 @@ public class CodeFormatterVisitor extends ASTVisitor implements ICPPASTVisitor, shouldVisitBaseSpecifiers = true; shouldVisitNamespaces = true; shouldVisitTemplateParameters = true; + shouldVisitVirtSpecifiers = true; } private final Scanner localScanner; @@ -1828,6 +1830,12 @@ public class CodeFormatterVisitor extends ASTVisitor implements ICPPASTVisitor, name.accept(this); } + ICPPASTClassVirtSpecifier virtSpecifier = node.getVirtSpecifier(); + if (virtSpecifier != null) { + scribe.space(); + virtSpecifier.accept(this); + } + // Base specifiers final List<ICPPASTBaseSpecifier> baseSpecifiers= Arrays.asList(node.getBaseSpecifiers()); if (baseSpecifiers.size() > 0) { @@ -3459,6 +3467,14 @@ public class CodeFormatterVisitor extends ASTVisitor implements ICPPASTVisitor, return PROCESS_SKIP; } + @Override + public int visit(ICPPASTClassVirtSpecifier node) { + if (node.getKind() == ICPPASTClassVirtSpecifier.SpecifierKind.Final) { + scribe.printNextToken(Token.t_final); + } + return PROCESS_SKIP; + } + private int visit(IASTReturnStatement node) { scribe.printNextToken(Token.t_return); final IASTExpression expression = node.getReturnValue(); |