asyn icon indicating copy to clipboard operation
asyn copied to clipboard

Fix compile errors in C23 mode

Open JJL772 opened this issue 2 months ago • 3 comments

C23 mandates casting between function pointer types, and the compiler can no longer infer arguments when calling functions with empty argument lists.

GCC 15 changes the default C standard to C23, so asyn will only build if USR_CFLAGS=-std=c17 (for example) is set when running make.

JJL772 avatar Oct 15 '25 20:10 JJL772

Think that the information from themessage here in the PR should be part of the commit message.

Different question: Does this work with EPICS base 3.15 ? If not, some inspiration may be taken from here: https://github.com/epics-modules/motor/blob/master/motorApp/MotorSrc/motor_epics_inc.h (But there may be other implementations)

tboegi avatar Oct 16 '25 09:10 tboegi

:x: Build asyn 1.0.302 failed (commit https://github.com/epics-modules/asyn/commit/d74761783a by @JJL772)

AppVeyorBot avatar Oct 16 '25 12:10 AppVeyorBot

@tboegi That's a good question. does 3.15 not have DEVSUPFUN/RECSUPFUN?

appveyor seems to be passing for base 3.14/3.15

JJL772 avatar Oct 16 '25 20:10 JJL772