Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 943881 - =net-misc/vde-2.3.3 fails with c23/gc15.0.0_pre20241117-r2: error: initialization of 'ssize_fun' {aka 'long int (*)(void)'} from incompatible pointer type 'ssize_t (*)(int, void *, long unsigned int)' {aka 'long int (*)(int, void *, long unsigned int)'}
Summary: =net-misc/vde-2.3.3 fails with c23/gc15.0.0_pre20241117-r2: error: initializa...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: c23-porting
  Show dependency tree
 
Reported: 2024-11-19 06:46 UTC by tdr
Modified: 2025-04-25 15:54 UTC (History)
1 user (show)

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


Attachments
build failure log (vde-2.3.3:20241119-064100.log,26.11 KB, text/plain)
2024-11-19 06:47 UTC, tdr
Details
emerge --info (tdr-emerge--info.txt,6.30 KB, text/plain)
2024-11-19 06:48 UTC, tdr
Details

Note You need to log in before you can comment on or make changes to this bug.
Description tdr 2024-11-19 06:46:51 UTC
gcc-15.0.0_pre20241117 defaults to using -std=gnu23 (which is stricter)

multiple incompatible pointer types
multiple too many arguments to function


Reproducible: Always

Steps to Reproduce:
emerge =gc15.0.0_pre20241117-r2
emerge =net-misc/vde-2.3.3 

Actual Results:  
libvdehist.c:39:27: error: initialization of 'ssize_fun' {aka 'long int (*)(void)'} from incompatible pointer type 'ssize_t (*)(int,  void *, long unsigned int)' {aka 'long int (*)(int,  void *, long unsigned int)'} [-Wincompatible-pointer-types]
   39 | ssize_fun vdehist_vderead=read;
      |                           ^~~~
libvdehist.c:40:28: error: initialization of 'ssize_fun' {aka 'long int (*)(void)'} from incompatible pointer type 'ssize_t (*)(int,  const void *, size_t)' {aka 'long int (*)(int,  const void *, long unsigned int)'} [-Wincompatible-pointer-types]
   40 | ssize_fun vdehist_vdewrite=write;
      |                            ^~~~~
libvdehist.c:41:28: error: initialization of 'ssize_fun' {aka 'long int (*)(void)'} from incompatible pointer type 'ssize_t (*)(int,  void *, long unsigned int)' {aka 'long int (*)(int,  void *, long unsigned int)'} [-Wincompatible-pointer-types]
   41 | ssize_fun vdehist_termread=read;
      |                            ^~~~
libvdehist.c:42:29: error: initialization of 'ssize_fun' {aka 'long int (*)(void)'} from incompatible pointer type 'ssize_t (*)(int,  const void *, size_t)' {aka 'long int (*)(int,  const void *, long unsigned int)'} [-Wincompatible-pointer-types]
   42 | ssize_fun vdehist_termwrite=write;
      |                             ^~~~~
libvdehist.c: In function 'showexpand':
libvdehist.c:99:25: error: too many arguments to function 'vdehist_termwrite'
   99 |                         vdehist_termwrite(termfd,buf,strlen(buf));
      |                         ^~~~~~~~~~~~~~~~~
libvdehist.c: In function 'vdehist_create_commandlist':
libvdehist.c:192:17: error: too many arguments to function 'vdehist_vdewrite'
  192 |                 vdehist_vdewrite(vdefd,"help\n",5);
      |                 ^~~~~~~~~~~~~~~~
libvdehist.c: In function 'erase_line':
libvdehist.c:244:25: error: too many arguments to function 'vdehist_termwrite'
  244 |                         vdehist_termwrite(st->termfd,buf,bufsize);
      |                         ^~~~~~~~~~~~~~~~~
libvdehist.c: In function 'redraw_line':
libvdehist.c:265:25: error: too many arguments to function 'vdehist_termwrite'
  265 |                         vdehist_termwrite(st->termfd,buf,bufsize);
      |                         ^~~~~~~~~~~~~~~~~
libvdehist.c: In function 'vdehist_mgmt_to_term':
libvdehist.c:279:19: error: too many arguments to function 'vdehist_vderead'
  279 |                 n=vdehist_vderead(st->mgmtfd,buf,BUFSIZE);
      |                   ^~~~~~~~~~~~~~~
libvdehist.c:295:57: error: too many arguments to function 'vdehist_termwrite'
  295 |                                                         vdehist_termwrite(st->termfd,st->vlinebuf,(st->vbufindex));
      |                                                         ^~~~~~~~~~~~~~~~~
libvdehist.c:312:65: error: too many arguments to function 'vdehist_termwrite'
  312 |                                                                 vdehist_termwrite(st->termfd,message,strlen(message));
      |                                                                 ^~~~~~~~~~~~~~~~~
libvdehist.c:315:65: error: too many arguments to function 'vdehist_termwrite'
  315 |                                                                 vdehist_termwrite(st->termfd,"** DBG MSG: ",12);
      |                                                                 ^~~~~~~~~~~~~~~~~
libvdehist.c:316:65: error: too many arguments to function 'vdehist_termwrite'
  316 |                                                                 vdehist_termwrite(st->termfd,(message),strlen(message));
      |                                                                 ^~~~~~~~~~~~~~~~~
libvdehist.c:323:27: error: too many arguments to function 'vdehist_vderead'
  323 |                         n=vdehist_vderead(st->mgmtfd,buf,BUFSIZE);
      |                           ^~~~~~~~~~~~~~~
libvdehist.c: In function 'hist_sendcmd':
libvdehist.c:352:17: error: too many arguments to function 'vdehist_termwrite'
  352 |                 vdehist_termwrite(st->termfd,"\r\n",2);
      |                 ^~~~~~~~~~~~~~~~~
libvdehist.c:353:17: error: too many arguments to function 'vdehist_termwrite'
  353 |                 vdehist_termwrite(st->termfd,prompt,strlen(prompt));
      |                 ^~~~~~~~~~~~~~~~~
libvdehist.c: In function 'telnet_option_send3':
libvdehist.c:395:9: error: too many arguments to function 'vdehist_termwrite'
  395 |         vdehist_termwrite(fd,opt,3);
      |         ^~~~~~~~~~~~~~~~~
libvdehist.c: In function 'vdehist_term_to_mgmt':
libvdehist.c:440:11: error: too many arguments to function 'vdehist_termread'
  440 |         n=vdehist_termread(st->termfd,buf,BUFSIZE);
      |           ^~~~~~~~~~~~~~~~
libvdehist.c:475:73: error: too many arguments to function 'vdehist_termwrite'
  475 |                                                                         vdehist_termwrite(st->termfd,"\033[C",3);
      |                                                                         ^~~~~~~~~~~~~~~~~
libvdehist.c:481:73: error: too many arguments to function 'vdehist_termwrite'
  481 |                                                                         vdehist_termwrite(st->termfd,"\033[D",3);
      |                                                                         ^~~~~~~~~~~~~~~~~
libvdehist.c:535:65: error: too many arguments to function 'vdehist_termwrite'
  535 |                                                                 vdehist_termwrite(st->termfd,"\010\033[P",4);
      |                                                                 ^~~~~~~~~~~~~~~~~
libvdehist.c:537:65: error: too many arguments to function 'vdehist_termwrite'
  537 |                                                                 vdehist_termwrite(st->termfd,"\010 \010",3);
      |                                                                 ^~~~~~~~~~~~~~~~~
libvdehist.c:543:57: error: too many arguments to function 'vdehist_termwrite'
  543 |                                                         vdehist_termwrite(st->termfd,"\033[@",3);
      |                                                         ^~~~~~~~~~~~~~~~~
libvdehist.c:544:49: error: too many arguments to function 'vdehist_termwrite'
  544 |                                                 vdehist_termwrite(st->termfd,&(buf[i]),1);


works with CFLAGS="${CFLAGS} -std=gnu17"
also works with =gcc-15.0.0_pre20241110
Comment 1 tdr 2024-11-19 06:47:27 UTC
Created attachment 909686 [details]
build failure log
Comment 2 tdr 2024-11-19 06:48:11 UTC
Created attachment 909687 [details]
emerge --info
Comment 3 Larry the Git Cow gentoo-dev 2025-04-25 14:03:14 UTC
The bug has been closed via the following commit(s):

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

commit 1c0b38547a8fe38753854a0ead8f0ddf1b1d5946
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2025-04-25 14:00:26 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2025-04-25 14:00:26 +0000

    net-misc/vde: build w/ -std=gnu17
    
    Closes: https://bugs.gentoo.org/943881
    Signed-off-by: Sam James <sam@gentoo.org>

 net-misc/vde/vde-2.3.3.ebuild | 4 +++-
 net-misc/vde/vde-9999.ebuild  | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)