Re: devel/qt6-tools does not build with LLVM 19

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Sun, 06 Oct 2024 21:23:23 UTC
On 6 Oct 2024, at 20:44, Xavier Humbert <xavier@groumpf.org> wrote:
> 
> I use
> DEFAULT_VERSIONS+=llvm=19
> in my /etc/make.conf.
> 
> devel/qt6-tools does not build :
> 
> /usr/ports/devel/qt6-tools/work/qttools-everywhere-src-6.7.3/src/linguist/lupdate/clangtoolastreader.cpp:785:73: error: no member named 'getName' in 'clang::FileEntry'
>   785 |     if (!LupdatePrivate::isFileSignificant(fullLocation.getFileEntry()->getName().str()))
> 
> Reverting back to
> DEFAULT_VERSIONS+=llvm=18
> 
> makes it compile fine
> 
> Read on Chromium forum, same error, reason is :
> 
>> commit 1b04e6d4a314cf677b5320b26f2746733b11152c
>> Author: Hans Wennborg <hans@chromium.org>
>> Date: Thu Jan 25 13:36:37 2024
>> 
>> [clang] Remove use of FileEntry::getName()
>> 
>> That method was dropped recently. Instead, we should get the name via
>> the new FileEntryRef class. That one has existed for a while, so this
>> code works for both pinned and tip-of-tree Clang.

It's better to import the upstream fix, obviously. I have been fixing
llvm 19 related issues such as https://bugs.freebsd.org/281474, but this
looks a little different. It's a bit strange that this error did not
come up during the exp-run for https://bugs.freebsd.org/280562 ?

-Dimitry