Index: FunctionDeclaration.java =================================================================== RCS file: /cvsroot/webtools/sourceediting/plugins/org.eclipse.wst.jsdt.core/src/org/eclipse/wst/jsdt/core/dom/FunctionDeclaration.java,v retrieving revision 1.3 diff -u -r1.3 FunctionDeclaration.java --- FunctionDeclaration.java 30 Apr 2008 21:32:16 -0000 1.3 +++ FunctionDeclaration.java 10 May 2008 09:47:06 -0000 @@ -464,7 +464,12 @@ } result.setConstructor(isConstructor()); result.setExtraDimensions(getExtraDimensions()); - result.setName((SimpleName) getName().clone(target)); + + SimpleName name = getName(); + if(name != null){ + result.setName((SimpleName) name.clone(target)); + } + result.parameters().addAll( ASTNode.copySubtrees(target, parameters())); result.thrownExceptions().addAll( Index: ClassInstanceCreation.java =================================================================== RCS file: /cvsroot/webtools/sourceediting/plugins/org.eclipse.wst.jsdt.core/src/org/eclipse/wst/jsdt/core/dom/ClassInstanceCreation.java,v retrieving revision 1.5 diff -u -r1.5 ClassInstanceCreation.java --- ClassInstanceCreation.java 30 Apr 2008 21:32:15 -0000 1.5 +++ ClassInstanceCreation.java 10 May 2008 09:47:05 -0000 @@ -318,7 +318,11 @@ } if (this.ast.apiLevel >= AST.JLS3) { result.typeArguments().addAll(ASTNode.copySubtrees(target, typeArguments())); - result.setType((Type) getType().clone(target)); + + Type type = getType(); + if(type != null){ + result.setType((Type) type.clone(target)); + } } result.arguments().addAll(ASTNode.copySubtrees(target, arguments())); result.setAnonymousClassDeclaration(