Developer forums (C::B DEVELOPMENT STRICTLY!) > Development

NativeParser lockup when parsing Visual Studio 2013 and Boost 1.55.0 headers

<< < (2/3) > >>

sodev:
I found a way to easily produce the lockup, it doesn't even require Boost, however it does require to use Visual Studio as compiler for the project, i have used the 2013 version, don't know if it "works" also with older ones. All you need to do is to setup the include paths to include the Windows SDK that is shipped with the compiler, i haven't installed a full Windows SDK. Then open a project that contains this simple file:


--- Code: ---//-----------------------------------------------------------------------------
#include <windows.h>

int main() {
return 0;
}

--- End code ---

When CodeBlocks starts the parser it never finishes, i don't even get any error messages like before, CodeBlocks just freezes. This does only happen with Visual Studio, if TDM-MinGW is used as compiler it frankly produces some error messages but the parser finishes.

I am using default settings of CodeBlocks regarding the CodeCompletion plugin.

stahta01:

--- Quote from: sodev on January 18, 2014, 12:33:41 am ---I found a way to easily produce the lockup, it doesn't even require Boost, however it does require to use Visual Studio as compiler for the project, i have used the 2013 version, don't know if it "works" also with older ones. All you need to do is to setup the include paths to include the Windows SDK that is shipped with the compiler, i haven't installed a full Windows SDK. Then open a project that contains this simple file:


--- Code: ---//-----------------------------------------------------------------------------
#include <windows.h>

int main() {
return 0;
}

--- End code ---

When CodeBlocks starts the parser it never finishes, i don't even get any error messages like before, CodeBlocks just freezes. This does only happen with Visual Studio, if TDM-MinGW is used as compiler it frankly produces some error messages but the parser finishes.

I am using default settings of CodeBlocks regarding the CodeCompletion plugin.

--- End quote ---

Can you post a list of CB Plugins that need to be on to cause the Lockup and what defines are done in the project.
I will see if I can dup with VS Express 2010.

Tim S.

sodev:
I compiled CodeBlocks from SVN by using the CodeBlocks workspace and the ContribPlugins workspace and simply use whats in output folder after running the update script, i never bothered to disable any plugins. As for the project settings, this is my project file:


--- Code: ---<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_project_file>
<FileVersion major="1" minor="6" />
<Project>
<Option title="test" />
<Option compiler="msvc10" />
<Build>
<Target title="Debug">
<Option output="test_d.exe" prefix_auto="0" extension_auto="0" />
<Option object_output="objvc/Debug" />
<Option type="1" />
<Option compiler="msvc10" />
<Option use_console_runner="0" />
<Compiler>
<Add option="/Od" />
<Add option="/Gm" />
<Add option="/RTC1" />
<Add option="/MTd" />
<Add option="/Zi" />
<Add option="/EHsc" />
<Add option="/GR" />
<Add option="/W4" />
<Add option='/Fd&quot;objvc/Debug/&quot;' />
<Add option="/DSTRICT" />
<Add option="/D_CRT_SECURE_NO_DEPRECATE" />
<Add option="/D_DEBUG" />
<Add option="/DUNICODE" />
<Add option="/D_UNICODE" />
<Add option="/fp:precise" />
<Add directory="src" />
</Compiler>
<Linker>
<Add option="/DEBUG" />
<Add option="/INCREMENTAL" />
<Add option="/MANIFEST" />
<Add option="/DYNAMICBASE" />
<Add option="/NXCOMPAT" />
<Add option='/MANIFESTUAC:&quot;level=&apos;asInvoker&apos; uiAccess=&apos;false&apos;&quot;' />
<Add directory="." />
</Linker>
</Target>
<Target title="Debug_DLL">
<Option output="test_dll_d.exe" prefix_auto="0" extension_auto="0" />
<Option object_output="objvc/Debug_DLL" />
<Option type="1" />
<Option compiler="msvc10" />
<Option use_console_runner="0" />
<Compiler>
<Add option="/Od" />
<Add option="/Gm" />
<Add option="/RTC1" />
<Add option="/MDd" />
<Add option="/Zi" />
<Add option="/EHsc" />
<Add option="/GR" />
<Add option="/W4" />
<Add option='/Fd&quot;objvc/Debug_DLL/&quot;' />
<Add option="/DSTRICT" />
<Add option="/D_CRT_SECURE_NO_DEPRECATE" />
<Add option="/D_DEBUG" />
<Add option="/DUNICODE" />
<Add option="/D_UNICODE" />
<Add option="/fp:precise" />
<Add directory="src" />
</Compiler>
<Linker>
<Add option="/DEBUG" />
<Add option="/INCREMENTAL" />
<Add option="/MANIFEST" />
<Add option="/DYNAMICBASE" />
<Add option="/NXCOMPAT" />
<Add option='/MANIFESTUAC:&quot;level=&apos;asInvoker&apos; uiAccess=&apos;false&apos;&quot;' />
<Add directory="." />
</Linker>
</Target>
<Target title="Release">
<Option output="test.exe" prefix_auto="0" extension_auto="0" />
<Option object_output="objvc/Release" />
<Option type="1" />
<Option compiler="msvc10" />
<Option use_console_runner="0" />
<Compiler>
<Add option="/O2" />
<Add option="/MT" />
<Add option="/EHsc" />
<Add option="/GR" />
<Add option="/W4" />
<Add option="/DSTRICT" />
<Add option="/D_CRT_SECURE_NO_DEPRECATE" />
<Add option="/DNDEBUG" />
<Add option="/DUNICODE" />
<Add option="/D_UNICODE" />
<Add option="/fp:precise" />
<Add directory="src" />
</Compiler>
<Linker>
<Add option="/INCREMENTAL:NO" />
<Add option="/MANIFEST" />
<Add option="/DYNAMICBASE" />
<Add option="/NXCOMPAT" />
<Add option='/MANIFESTUAC:&quot;level=&apos;asInvoker&apos; uiAccess=&apos;false&apos;&quot;' />
<Add directory="." />
</Linker>
<ExtraCommands>
<Add after="mt.exe -manifest $exe_output.manifest -outputresource:$exe_output;1" />
<Mode after="always" />
</ExtraCommands>
</Target>
<Target title="Release_DLL">
<Option output="test_dll.exe" prefix_auto="0" extension_auto="0" />
<Option object_output="objvc/Release_DLL" />
<Option type="1" />
<Option compiler="msvc10" />
<Option use_console_runner="0" />
<Compiler>
<Add option="/O2" />
<Add option="/MD" />
<Add option="/EHsc" />
<Add option="/GR" />
<Add option="/W4" />
<Add option="/DSTRICT" />
<Add option="/D_CRT_SECURE_NO_DEPRECATE" />
<Add option="/DNDEBUG" />
<Add option="/DUNICODE" />
<Add option="/D_UNICODE" />
<Add option="/fp:precise" />
<Add directory="src" />
</Compiler>
<Linker>
<Add option="/INCREMENTAL:NO" />
<Add option="/MANIFEST" />
<Add option="/DYNAMICBASE" />
<Add option="/NXCOMPAT" />
<Add option='/MANIFESTUAC:&quot;level=&apos;asInvoker&apos; uiAccess=&apos;false&apos;&quot;' />
<Add directory="." />
</Linker>
<ExtraCommands>
<Add after="mt.exe -manifest $exe_output.manifest -outputresource:$exe_output;1" />
<Mode after="always" />
</ExtraCommands>
</Target>
</Build>
<Unit filename="src/main.cpp" />
<Extensions>
<code_completion />
<envvars />
<debugger />
</Extensions>
</Project>
</CodeBlocks_project_file>

--- End code ---

Maybe i should note that im using the express version as well and, that doesn't apply to VS2010 though, that i use the Windows XP compatible SDK. The compiler variable in the project file reads msvc10 because CodeBlocks doesn't integrate higher versions, i just misuse that one and changed all the paths to point to 2013 :).

stahta01:
I could NOT dup using VS Express 2010; but, I might try later using your project file.
No idea what else is needed to test.
I am out of Hard Disk space; so, download VS Expess 2013 is NOT something I plan to do.

Tim S.

Alpha:

--- Quote from: sodev on January 18, 2014, 12:56:23 am ---The compiler variable in the project file reads msvc10 because CodeBlocks doesn't integrate higher versions, i just misuse that one and changed all the paths to point to 2013 :).

--- End quote ---
Oops.  Integration code has been sitting on my local version for a while now... I probably should tidy and commit it soon.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version