D13613: RFC: Fix libclang default include paths on FreeBSD.
    Aaron Puchert 
    noreply at phabricator.kde.org
       
    Thu Jul 12 22:28:28 BST 2018
    
    
  
aaronpuchert added a comment.
  On my system,
  
    > find /usr/lib64/ -name vadefs.h
    /usr/lib64/clang/6.0.0/include/vadefs.h
    > find /usr/lib64/ -name varargs.h
    /usr/lib64/clang/6.0.0/include/varargs.h
    /usr/lib64/gcc/x86_64-suse-linux/8/include/varargs.h
  
  Meaning that with `vadefs.h` we wouldn't be able to exclude the GCC builtin directory. The intersection of both on my system is:
  
    > sort <(ls /usr/lib64/clang/6.0.0/include/) <(ls /usr/lib64/gcc/x86_64-suse-linux/8/include/) | uniq -d                 
    adxintrin.h
    ammintrin.h
    avx2intrin.h
    avx512bitalgintrin.h
    avx512bwintrin.h
    avx512cdintrin.h
    avx512dqintrin.h
    avx512erintrin.h
    avx512fintrin.h
    avx512ifmaintrin.h
    avx512ifmavlintrin.h
    avx512pfintrin.h
    avx512vbmi2intrin.h
    avx512vbmiintrin.h
    avx512vbmivlintrin.h
    avx512vlbwintrin.h
    avx512vldqintrin.h
    avx512vlintrin.h
    avx512vnniintrin.h
    avx512vpopcntdqintrin.h
    avx512vpopcntdqvlintrin.h
    avxintrin.h
    bmi2intrin.h
    bmiintrin.h
    cetintrin.h
    clflushoptintrin.h
    clwbintrin.h
    clzerointrin.h
    cpuid.h
    emmintrin.h
    f16cintrin.h
    float.h
    fma4intrin.h
    fmaintrin.h
    fxsrintrin.h
    gfniintrin.h
    ia32intrin.h
    immintrin.h
    iso646.h
    lwpintrin.h
    lzcntintrin.h
    mm3dnow.h
    mmintrin.h
    mm_malloc.h
    mwaitxintrin.h
    nmmintrin.h
    omp.h
    pkuintrin.h
    pmmintrin.h
    popcntintrin.h
    prfchwintrin.h
    rdseedintrin.h
    rtmintrin.h
    sanitizer
    shaintrin.h
    smmintrin.h
    stdalign.h
    stdarg.h
    stdatomic.h
    stdbool.h
    stddef.h
    stdint.h
    stdnoreturn.h
    tbmintrin.h
    tmmintrin.h
    unwind.h
    vaesintrin.h
    varargs.h
    vpclmulqdqintrin.h
    wmmintrin.h
    x86intrin.h
    xmmintrin.h
    xopintrin.h
    xsavecintrin.h
    xsaveintrin.h
    xsaveoptintrin.h
    xsavesintrin.h
    xtestintrin.h
  
  Maybe you can intersect that with the files on your system, so that we can find a better candidate.
INLINE COMMENTS
> gcclikecompiler.cpp:193-196
>                      // but skip folders with compiler builtins, we cannot parse these with clang
> -                    if (!QFile::exists(hostPath.toLocalFile() + QLatin1String("/varargs.h"))) {
> +                    if (!QFile::exists(hostPath.toLocalFile() + QLatin1String("/vadefs.h"))) {
>                          data.includePaths << Path(QFileInfo(hostPath.toLocalFile()).canonicalFilePath());
>                      }
My understanding is that this is primarily supposed to exclude non-Clang builtin directories, especially the GCC builtin directory which Clang might not understand.
REPOSITORY
  R32 KDevelop
REVISION DETAIL
  https://phabricator.kde.org/D13613
To: arrowd, #kdevelop, mwolff
Cc: mwolff, aaronpuchert, kdevelop-devel, antismap, iodelay, vbspam, njensen, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20180712/582b92bb/attachment-0001.html>
    
    
More information about the KDevelop-devel
mailing list