diff --git a/core/org.eclipse.cdt.ui.tests/resources/refactoring/ImplementMethod.rts b/core/org.eclipse.cdt.ui.tests/resources/refactoring/ImplementMethod.rts index 6c7a13181cd..c2d1a0d3a9e 100644 --- a/core/org.eclipse.cdt.ui.tests/resources/refactoring/ImplementMethod.rts +++ b/core/org.eclipse.cdt.ui.tests/resources/refactoring/ImplementMethod.rts @@ -775,3 +775,21 @@ template inline void func(T&) { } +//!Bug 363111 - Remove explicit in constructor definition +//#org.eclipse.cdt.ui.tests.refactoring.implementmethod.ImplementMethodRefactoringTest +//@.config +filename=A.h +//@A.h + +class TestClass { +public: + /*$*/explicit TestClass();/*$$*/ +}; + + +//@A.cpp + +//= + +TestClass::TestClass() { +} \ No newline at end of file diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/implementmethod/ImplementMethodRefactoring.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/implementmethod/ImplementMethodRefactoring.java index 510c842227f..39c713cf9a8 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/implementmethod/ImplementMethodRefactoring.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/implementmethod/ImplementMethodRefactoring.java @@ -237,7 +237,8 @@ public class ImplementMethodRefactoring extends CRefactoring2 { IASTNode declarationParent = methodDeclaration.getParent(); if (declSpecifier instanceof ICPPASTDeclSpecifier) { - ((ICPPASTDeclSpecifier) declSpecifier).setVirtual(false); + ((ICPPASTDeclSpecifier) declSpecifier).setVirtual(false); + ((ICPPASTDeclSpecifier) declSpecifier).setExplicit(false); } String currentFileName = declarationParent.getNodeLocations()[0].asFileLocation().getFileName();