Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 360089

Summary: SQLResultSet doesn't show methods from the type it extends (ScrollableDataSource)
Product: z_Archived Reporter: Joseph Vincens <jvincens>
Component: EDTAssignee: Paul Harmon <pharmon>
Status: CLOSED FIXED QA Contact:
Severity: critical    
Priority: P3 CC: hoffmanp
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Joseph Vincens CLA 2011-10-06 08:15:59 EDT
Create a program with the following
program Pgm1 type BasicProgram {}
		
	function main()
		rs1 SQLResultSet?;
		while (rs1.setNext())
		end
	end
	
end
An error will be shown on setNext().

I debugged into the problem and found the following.
in TypeBinding.getNullableInstance()
    nullableType = primGetNullableInstance();(line 134)

If the type is an external type:
ExternalTypeBinding.primGetNullableInstance() does
		ExternalTypeBinding nullable = new ExternalTypeBinding(this);

ExternalTypeBinding the constructor (ExternalTypeBinding(ExternalTypeBinding old)) does not copy the extendedTypes to the newly created object. It does     	List extendedTypes = old.extendedTypes; so the extendedTypes are copied to an unused variable.
Comment 1 Paul Harmon CLA 2011-10-06 13:34:11 EDT
Thanks for debugging this, it was indeed a copy/paste error. The "List" should have been removed, so that the variable declared in ExternalTypeBinding
Comment 2 Joseph Vincens CLA 2011-10-24 16:10:13 EDT
verified