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

Bug 370616

Summary: MPI Code assist tools incorrectly modify MPI function call
Product: [Tools] PTP Reporter: David Wootton <drwootton>
Component: PLDTAssignee: Project Inbox <ptp-inbox>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3 CC: beth
Version: 5.0.4   
Target Milestone: ---   
Hardware: All   
OS: Windows 7   
Whiteboard:

Description David Wootton CLA 2012-02-03 18:12:38 EST
I edited a source file in a synchronized project and typed in 'MPI_Send('. Then I hit CTRL-space to get the interactive code assist. When I did this the MPI_Send( changed to MMPI_Send() and I get the popup list of code selection alternatives.

I tested this using Windows 7 64 bit with a Windows 64 bit zip file. THis fails with the latest Indigo and Juno epp-parallel builds.
Comment 1 Beth Tibbitts CLA 2012-02-11 16:08:22 EST
I finally got a Windows7 machine configured to test this, then realized I wasn't typing the "("
as you were.

So typing into the C Editor:  "mpi_send("   then ctl-space does indeed turn it into "mMPI_SEND)"  (yes right paren)
Even on my Mac.

Strictly speaking, If you want to do true completion then you need to do it before the paren is typed.
Because there isn't a 'completion' after the paren, you've already completed typing of the api name.

However you are right this is very strange.   
But it happens on any expansion for C.
"print("  ->  ctl space gives "pprint)"

Could really surprise a user "how did those chars get there?"

So this has nothing to do with PTP/PLDT, I will put bug in CDT to alert them
Comment 2 Beth Tibbitts CLA 2012-02-11 16:14:56 EST
Well after reproducing this with printf, now I can't reproduce it again.
"printf("   automatically adds the closing ")"   before I can type ctrl-space.

Need to think about this...