Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    George Xanthakis
    @innerout
    Yeah everything works as expected, except the error about NULL.
    Fangrui Song
    @MaskRay
    make sure NULL can be comleted. textDocument/definition on <stdio.h> to make sure you can jump to the header
    George Xanthakis
    @innerout
    NULL cannot be completed.
    Francisco Lopes
    @oblitum
    ah, the error happens for me too
    🤔, it's not finding stddef.h
    dunno why, but I guess that's the reason
    George Xanthakis
    @innerout
    I just had to report it because it seemed strange to me.That worked before.
    Francisco Lopes
    @oblitum
    I think I may have a guess what's the cause
    are you on archlinux?
    George Xanthakis
    @innerout
    yes
    Francisco Lopes
    @oblitum
    same here
    so...
    recently clang package upgraded to 8.0.1
    George Xanthakis
    @innerout
    So the API changed i guess?
    Francisco Lopes
    @oblitum
    and stddef.h is on /usr/lib/clang/8.0.1/include/stddef.h
    but ccls should be picking headers from another place
    I mean, those system ones
    like /usr/lib/clang/8.0.0/include/stddef.h
    George Xanthakis
    @innerout
    If we rebuild the compile_commands.json will this fix it?
    Francisco Lopes
    @oblitum
    maybe recompiling it solves the issue
    Fangrui Song
    @MaskRay
    clang -print-resource-dir. clang -fsyntax-only -xc++ /dev/null -v
    Francisco Lopes
    @oblitum
    this is builtin system headers
    they're not listed in compile_commands.json
    I think in this case -x should be -xc?
    not -xc++
    Fangrui Song
    @MaskRay
    clang -fsyntax-only -xc++ /dev/null '-###' you shall see -internal-isystem $resource_dir/include
    Francisco Lopes
    @oblitum
    innerout: recompiling ccls from AUR fixed the problem
    I just reinstalled it
    Fangrui Song
    @MaskRay
    if the old ccls package links againt libclangAST.so.8, after 8.0.0 -> 8.0.1 upgrade, don't expect that ccls package will continue to work...
    Francisco Lopes
    @oblitum
    the end history is that you have to recompile ccls when clang upgrades, because it have some system header directories from clang distribution hard-coded.
    Francisco Lopes
    @oblitum
    I stopped getting the error, but strangely enough, out of curiosity I called go-to-definition on NULL, and it can't jump to definition, even though there's no compilation error anymore.
    Fangrui Song
    @MaskRay
    clang.extraArgs "-resource-dir=/usr/lib/clang/8.0.1" with the old ccls package (linked against 8.0.0). that may work as well. the difference between 8.0.0 and 8.0.1 may be minor
    Francisco Lopes
    @oblitum
    ah, when I include stdio.h it can jump, but just stddef.h it can't.
    well, anyway, guess this doesn't matter at all.
    ah, it's jumping now, so never mind.
    George Xanthakis
    @innerout
    I have installed ccls from archlinuxcn, so i will have to either wait for them to do it or compile it from git.
    Does the ccls-git package on AUR build from the latest git commit?
    Francisco Lopes
    @oblitum
    I just reinstalled it
    not ccls-git
    just the ccls package
    there's ccls and ccls-git
    both in AUR
    George Xanthakis
    @innerout
    Does anyone have an easy way to build ccls in centos 7?
    Fangrui Song
    @MaskRay
    MaskRay/ccls#471 :boom: Rename FunctionName -> functionName, VarName -> var_name
    George Xanthakis
    @innerout
    @MaskRay Will ccls get advanced refactoring capabilities in the future?
    I'll try playing with clangd's refactor, but I'm not sure why people consider this feature so useful.
    George Xanthakis
    @innerout
    @MaskRay Well i have never used a good refactoring tool besides Jetbrains Java IDE. From my experience Jetbrains Java IDE makes refactoring in big codebases pretty easy. Also thanks for the CentOS reference i will take a look.