Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 916515 - net-misc/freerdp-2.11.1 wlfreerdp.c:637:19: error: incompatible function pointer types assigning to 'OBJECT_NEW_FN' (aka 'void *(*)(void *)') from 'void *(const void *)'
Summary: net-misc/freerdp-2.11.1 wlfreerdp.c:637:19: error: incompatible function poin...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Mike Gilbert
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks: c99-porting
  Show dependency tree
 
Reported: 2023-10-29 23:56 UTC by Denis Strizhkin
Modified: 2023-12-06 18:59 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,573.78 KB, text/x-log)
2023-10-29 23:56 UTC, Denis Strizhkin
Details
emerge --info (emerge-info.txt,6.42 KB, text/plain)
2023-10-29 23:57 UTC, Denis Strizhkin
Details
emerge --info (emerge.info,8.60 KB, text/plain)
2023-11-28 10:57 UTC, 0xfdfefafd
Details
possible patch (0001-patch-for-Wincompatible-function-pointer-types.patch,835 bytes, patch)
2023-11-28 12:14 UTC, 0xfdfefafd
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Denis Strizhkin 2023-10-29 23:56:32 UTC
Created attachment 873696 [details]
build.log

Unable to compile net-misc/freerdp on llvm profile

[441/455] /usr/lib/llvm/17/bin/clang -DFREERDP_EXPORTS -DHAVE_CONFIG_H -DWINPR_EXPORTS -DWITH_OPENSSL -D_FILE_OFFSET_BITS=64 -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/winpr/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build/winpr/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/rdtk/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build/rdtk/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/uwac/include  -O2 -march=native -Wno-unused-parameter -Wno-unused-macros -Wno-padded -Wno-c11-extensions -Wno-gnu -Wno-unused-command-line-argument -Wno-deprecated-declarations -fno-omit-frame-pointer -DWINPR_DLL -fPIE -MD -MT client/Wayland/CMakeFiles/wlfreerdp.dir/wlfreerdp.c.o -MF client/Wayland/CMakeFiles/wlfreerdp.dir/wlfreerdp.c.o.d -o client/Wayland/CMakeFiles/wlfreerdp.dir/wlfreerdp.c.o -c /var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/client/Wayland/wlfreerdp.c
FAILED: client/Wayland/CMakeFiles/wlfreerdp.dir/wlfreerdp.c.o 
/usr/lib/llvm/17/bin/clang -DFREERDP_EXPORTS -DHAVE_CONFIG_H -DWINPR_EXPORTS -DWITH_OPENSSL -D_FILE_OFFSET_BITS=64 -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/winpr/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build/winpr/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/rdtk/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1_build/rdtk/include -I/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/uwac/include  -O2 -march=native -Wno-unused-parameter -Wno-unused-macros -Wno-padded -Wno-c11-extensions -Wno-gnu -Wno-unused-command-line-argument -Wno-deprecated-declarations -fno-omit-frame-pointer -DWINPR_DLL -fPIE -MD -MT client/Wayland/CMakeFiles/wlfreerdp.dir/wlfreerdp.c.o -MF client/Wayland/CMakeFiles/wlfreerdp.dir/wlfreerdp.c.o.d -o client/Wayland/CMakeFiles/wlfreerdp.dir/wlfreerdp.c.o -c /var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/client/Wayland/wlfreerdp.c
/var/tmp/portage/net-misc/freerdp-2.11.1/work/freerdp-2.11.1/client/Wayland/wlfreerdp.c:637:19: error: incompatible function pointer types assigning to 'OBJECT_NEW_FN' (aka 'void *(*)(void *)') from 'void *(const void *)' [-Wincompatible-function-pointer-types]
  637 |         obj->fnObjectNew = uwac_event_clone;
      |                          ^ ~~~~~~~~~~~~~~~~
1 error generated.
Comment 1 Denis Strizhkin 2023-10-29 23:57:16 UTC
Created attachment 873697 [details]
emerge --info
Comment 2 0xfdfefafd 2023-11-28 10:57:40 UTC
Created attachment 875867 [details]
emerge --info

Can confirm this bug on my machine with desktop/plasma profile, with clang manually set as default in make.conf
Comment 3 0xfdfefafd 2023-11-28 12:14:49 UTC
Created attachment 875871 [details, diff]
possible patch

patch could be quite trivial -- just add explicit cast
Comment 4 Mike Gilbert gentoo-dev 2023-11-29 20:55:27 UTC
Please report the issue upstream.
Comment 5 0xfdfefafd 2023-12-06 18:41:08 UTC
(In reply to Mike Gilbert from comment #4)
> Please report the issue upstream.

I know I have to, but a) I'm noob; b) I managed to build in-repo version with patch, but can't build git version. It requires SDL2 libs, which are missing on my machine, and I neither know how to fix it nor have time to dig in. I going to do this one of these days (but would be deeply grateful if someone do this).
Comment 6 Larry the Git Cow gentoo-dev 2023-12-06 18:59:29 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd1faced71b23f460c067320c785b0133570ca76

commit dd1faced71b23f460c067320c785b0133570ca76
Author:     Mike Gilbert <floppym@gentoo.org>
AuthorDate: 2023-12-06 18:58:49 +0000
Commit:     Mike Gilbert <floppym@gentoo.org>
CommitDate: 2023-12-06 18:58:49 +0000

    net-misc/freerdp: fix build with clang
    
    Closes: https://bugs.gentoo.org/916515
    Signed-off-by: Mike Gilbert <floppym@gentoo.org>

 net-misc/freerdp/files/freerdp-2.11.2-clang.patch | 29 +++++++++++++++++++++++
 net-misc/freerdp/freerdp-2.11.1.ebuild            |  4 ++++
 net-misc/freerdp/freerdp-2.11.2.ebuild            |  4 ++++
 3 files changed, 37 insertions(+)