yes iam found
i dont known how it possible
but there are no initialization std::mutex in 2.14.2 build
use import function Mtx_init_in_situ absent
so mutex try use without initialize
in 2.14.1 all ok
Mtx_init_in_situ function present in cppcheckgui.exe
so mutex lock uses corrent
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
diff between 2.14.1 and 2.14.2 only compiler version
2.14.1 VS 2022 17.9 Preview 1 / 19.39.33218
2.14.2 VS 2022 17.10 / 19.40.33731
MS use constexpr for std mutex for constructor
this is wrong, seems issue
but users can drop constexpr for std mutex
by add var -D_DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR
try add for build
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
after load any cppcheck project
2.14.1 was ok
Last edit: lamoda 2024-06-23
here is a small and simple cppcheck project:
https://github.com/danmar/cppcheck/tree/main/test/cli/helloworld
I can open that with 2.14.2 gui in windows. does that crash for you?
will try
yes simple cppcheck project crash
add pdb symbols
and i will show backtrace
Thanks! can you try this devdrop:
https://files.cppchecksolutions.com/devdrop/cppcheck-devdrop-2024-06-26.zip
it should be self contained.. no installation should be required. just unpack and execute the cppcheck-gui.exe
The procedure entry point CreatDXGIFactory2 could not be located in the dynamic link library dxgi.dll
iam use windows 7
your dev build with Qt6
but release 2.14.2 with Qt5
try look about disable for Qt6 options like "-no-feature-d3d12" or simular
this is some thing strange with mutex at
https://github.com/danmar/cppcheck/blob/781ef2acadf70ab05c983eff74811092d0cabaeb/externals/simplecpp/simplecpp.cpp#L2362
my be CI changes with builds
yes iam found
i dont known how it possible
but there are no initialization std::mutex in 2.14.2 build
use import function Mtx_init_in_situ absent
so mutex try use without initialize
in 2.14.1 all ok
Mtx_init_in_situ function present in cppcheckgui.exe
so mutex lock uses corrent
very strange. No changes from 2.14.1 to 2.14.2 seems related to mutexes as far as I can tell.
The changed files are:
Do you still believe it's related to simplecpp somehow?
make correct build with pdb and Qt5
to see full backstrace
diff between 2.14.1 and 2.14.2 only compiler version
2.14.1 VS 2022 17.9 Preview 1 / 19.39.33218
2.14.2 VS 2022 17.10 / 19.40.33731
MS use constexpr for std mutex for constructor
this is wrong, seems issue
but users can drop constexpr for std mutex
by add var -D_DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR
try add for build
well i found why crash
i have on my windows addition redistriubute package with version msvcp140
which has different implementation of std mutex
i drop it from windows
and all works
sorry for disturb
Last edit: lamoda 2024-06-27
Thanks! Good to know why it crashed for you.