It appears that if a projectable method is moved between assemblies, then Visual Studio won't completely forget about the existence of the first one until you completely restart Visual Studio itself. In the meantime, the ProjectableInterpreter.GetDescriptor method throws an ArgumentException with the message "SyntaxTree is not part of the compilation" when it attempts to get the semantic model for the syntax tree associated with the member declaration. Perhaps there should be a try/catch around this operation to accommodate this scenario as it prevents all of the other perfectly still valid generated methods from appearing until you restart Visual Studio.