Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [cdt-dev] Microsoft VisualC++ Toolchain integration

Hi Emiliano,

 

I did not have time yet to look deeply in your plug-ins, but here are some issues that appeared to me at first glance:

I have VS 6.0, VS .NET 2003 and Platform SDK installed on my machine.

 

1. The vc++ projects did not appear for me as “supported” in the project-type selection wizard page.

 

2. When I tried to create the vc project, eclipse halted and stopped responding. I stepped through the code and noticed that the infinite loop occurred in the PlatformSDKPathResolver.getDir(). After I had changed “                  while (pattern.length() > 0) {” to “                  if (pattern.length() > 0) {”, the infinite loop disappeared. Note that I made that change only for the reason of preventing the infinite loop, and I suppose that the change might result in the incorrect SDK path resolver functioning, so some of the points mentioned below could be caused by the change I made.

 

3. After the project was created I was not able to browse the created project in the “C/C++ Projects” view, neither was I able to create a new class because of the null pointer exception that occurred in the ManagedBuildCPathEntryContainer.getPathEntries() because the VCToolkitScannerInfoCollector.getIncludePaths() returned a list of includes containing nulls. After adding some extra-null pointer checkings to the VCToolkitScannerInfoCollector constructor the problem disappeared.

 

After that I was able to successfully build the project. I did not have time to check and test all the tools settings provided with your build definitions, but from what I saw, the vc++ projects work great! The tool definitions provide a lot of very useful options and allow a very convenient interface for working with vc++ tools!

 

Here are some additional points I noticed:

 

4. While stepping through the code I’ve also noticed that since the VCToolkitPathResolver.getBinPath() returns null, it causes the “null” string to be generated while string concatenation in the VCToolkitConfigurationEnvSupplier. Also the PlatformSDKPathResolver.getBinPath() returns the array of size 78 for me, containing one and the same path, except for some array members that contain null that cause the “null” string to be generated while string concatenation in the VCToolkitConfigurationEnvSupplier and also causes the PATH environment variable to contain one and the same path multiple times.

 

The same is about the VCToolkitPathResolver.getLibPath(); - PlatformSDKPathResolver.getLibPath(); and VCToolkitPathResolver.getIncludePath() - PlatformSDKPathResolver.getIncludePath(); pares.

 

Also as a result of the the PlatformSDKPathResolver.getIncludePath(), the VCToolkitScannerInfoCollector.getIncludePaths() also returned the list of identical paths, (provided by the PlatformSDKPathResolver.getIncludePath()).

 

I suppose all these issues are caused by the incorrect handling of my registry settings. I’m not an expert in how the vc++ settings are stored and how they should be handled, so if you need some of my settings in order to find the problem, I could post them to you.

 

5. The options that represent the additional include directories for the compiler should be of type “includePath”, but not “stringList”. Setting this option to the “includePath” will allow MBS to provide the include paths info to the rest of the CDT.

 

Thanks,

Mikhail

 

 


From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Emiliano Lesende
Sent: Tuesday, June 21, 2005 1:11 AM
To: cdt-dev@xxxxxxxxxxx
Subject: [cdt-dev] Microsoft VisualC++ Toolchain integration

 

To celebrate the M7 I'm finally releasing this plugin.

Any comments about source or design are most welcome!

Currently on the roadmap:
- Win32 native debugging.
- MASM support
- VisualStudio .NET 2003 and .NET 2005

Have fun!
Emiliano Lesende


Back to the top