Skip to content
Snippets Groups Projects
  1. Oct 23, 2017
  2. Sep 22, 2017
  3. Sep 14, 2017
  4. Nov 16, 2016
  5. Oct 18, 2016
  6. Oct 17, 2016
  7. Jul 07, 2016
    • Nikolai Kosjar's avatar
      ClangStaticAnalyzer: Stop passing on toolchain defines for qmake/msvc case · 98b66534
      Nikolai Kosjar authored
      
      Re-produce with:
        1) Open qt-essential-includes.pro and configure it with a Qt 5.7.0 MSVC2013
           64 Bit Kit.
        2) Run the analyzer.
      
      Errors during analyzing occur in winnt.h [1]. This is somehow related to
      /D__int32=long that we pass on. Removing it helps.
      
      It looks like there is no reason anymore to pass on the toolchain defines with
      clang-3.8 at all. Our unit test projects can be parsed by the analyzer without
      them.
      
      Tested with the following kits:
      
      	Qt 5.6.0 (mingw39_32)
      	Qt 5.6.0 (msvc2013)
      	Qt 5.6.0 (msvc2013_64)
      	Qt 5.6.0 (msvc2015)
      	Qt 5.6.0 (msvc2015_64)
      	Qt 5.7.0 (mingw53_32)
      	Qt 5.7.0 (msvc2013)
      	Qt 5.7.0 (msvc2013_64)
      	Qt 5.7.0 (msvc2015)
      	Qt 5.7.0 (msvc2015_64)
      
      [1]
      In file included from D:\dev\creator\creator-4.1\src\plugins\clangstaticanalyzer\unit-tests\qt-essential-includes\main.cpp:2:
      In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include/QtGui\QtGui:32:
      In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include/QtGui/qopenglcontext.h:60:
      In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include\QtGui/qopengl.h:49:
      In file included from D:/usr/qt-5.7.0-msvc2013_64/5.7/msvc2013_64/include\QtCore/qt_windows.h:61:
      In file included from C:\Program Files (x86)\Windows Kits\8.1\include\um\windows.h:164:
      In file included from C:\Program Files (x86)\Windows Kits\8.1\include\shared\windef.h:24:
      In file included from C:\Program Files (x86)\Windows Kits\8.1\include\shared\minwindef.h:182:
      C:\Program Files (x86)\Windows Kits\8.1\include\um\winnt.h(3077,1) :  error: functions that differ only in their return type cannot be overloaded
      __getcallerseflags (
      ^
      D:\dev\llvm\3.8\changingLibClang_install\bin\..\lib\clang\3.8.1\include\intrin.h(68,14) :  note: previous declaration is here
      unsigned int __getcallerseflags(void);
      ~~~~~~~~     ^
      1 error generated.
      
      Change-Id: I2de8d0393a575f88dd59dfa71fbfb11f2debc158
      Reviewed-by: default avatarChristian Kandeler <christian.kandeler@qt.io>
      98b66534
  8. Jul 04, 2016
    • Nikolai Kosjar's avatar
      Clang: Pass on file paths with native separators · 36e7f454
      Nikolai Kosjar authored
      libclang 3.8 seems to be sensitive to file paths separators [1]. On Windows,
      this led to not updated document annotations and/or crashes after reparsing.
      
      When passing file paths to libclang, convert to native separators.
      When getting file paths from libclang, convert back.
      
      This handles:
       * main file path
       * file paths of the unsaved files
       * -I<DIR> arguments, the resource path (for builtins) and the paths to the
         wrapped qt headers
       * included header files from libclang
       * source locations from libclang
      
      Also, minimize the conversion in SourceLocation to a minimum by making
      filePath() lazy.
      
      [1] https://llvm.org/bugs/show_bug.cgi?id=28381
      
      
      
      Change-Id: If5866f34a6fdc6b34b16c022d3988e8e6eae2a0a
      Reviewed-by: default avatarChristian Stenger <christian.stenger@qt.io>
      36e7f454
  9. Apr 13, 2016
  10. Apr 12, 2016
  11. Apr 11, 2016
  12. Mar 30, 2016
  13. Jan 19, 2016
  14. Jan 13, 2016
  15. Nov 26, 2015
  16. Nov 11, 2015
  17. Nov 06, 2015
  18. Jul 14, 2015
  19. Jun 29, 2015
  20. Jun 26, 2015
  21. Mar 05, 2015
  22. Feb 20, 2015
  23. Jan 26, 2015
  24. Jan 16, 2015
  25. Dec 19, 2014
  26. Nov 07, 2014
  27. Nov 06, 2014
  28. Oct 30, 2014
  29. Oct 20, 2014
  30. Oct 15, 2014
  31. Sep 16, 2014
Loading