Opened 7 months ago

Closed 5 months ago

#69877 closed defect (fixed)

grace @5.1.25: error: parameter 'y' was not declared, defaults to 'int'; ISO C99 and later do not support implicit int

Reported by: roxannetutchton (Roxanne Tutchton) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: sonoma Cc: GabiBes
Port: grace

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Tried in install port "grace" several times (cleaned and reinstalled) and get error:

Error: Failed to build grace: command execution failed   
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_distfiles.macports.org_ports_x11_grace/grace/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.
Error: Processing of port grace failed

Info from main.log shows:

:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_distfiles.macports.org_ports_x11_grace/grace/work/grace-5.1.25/Xbae/Xbae'
:info:build make: *** [subdirs] Error 1
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_distfiles.macports.org_ports_x11_grace/grace/work/grace-5.1.25'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_distfiles.macports.org_ports_x11_grace/grace/work/grace-5.1.25" && /usr/bin/make -j12 -w all
:info:build Exit code: 2
:error:build Failed to build grace: command execution failed
:debug:build Error code: CHILDSTATUS 42656 2
:debug:build Backtrace: command execution failed
:debug:build     while executing
:debug:build "system {*}$notty {*}$callback {*}$nice $fullcmdstring"
:debug:build     invoked from within
:debug:build "command_exec -callback portprogress::target_progress_callback build"
:debug:build     (procedure "portbuild::build_main" line 10)
:debug:build     invoked from within
:debug:build "$procedure $targetname"

Attachments (1)

main.log (4.5 MB) - added by roxannetutchton (Roxanne Tutchton) 7 months ago.
full log file

Change History (12)

Changed 7 months ago by roxannetutchton (Roxanne Tutchton)

Attachment: main.log added

full log file

comment:1 Changed 7 months ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: grace failed removed
Summary: Error: Processing of port grace failed mac OS 14.4.1grace @5.1.25: error: parameter 'y' was not declared, defaults to 'int'; ISO C99 and later do not support implicit int

The errors in the log are:

Draw.c:237:40: error: parameter 'y' was not declared, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
xbaeDrawCellString(mw, row, column, x, y, string, bg, fg)
                                       ^
Draw.c:237:37: error: parameter 'x' was not declared, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
xbaeDrawCellString(mw, row, column, x, y, string, bg, fg)
                                    ^

This bug in grace should be reported to its developers so they can fix it and release a new version, to which MacPorts can then update.

comment:2 Changed 7 months ago by ryandesign (Ryan Carsten Schmidt)

I see that their phpBB installation is broken and it is not possible to submit anything there right now. I reported the phpBB breakage to the administrator by email.

comment:3 Changed 6 months ago by ryandesign (Ryan Carsten Schmidt)

Cc: GabiBes added

Has duplicate #70192.

comment:4 Changed 5 months ago by bernstei

FWIW, it's straightforward to modify the Portfile to allow the deprecated syntax. It had to be done for the opendx port, which has been unsupported upstream for years, but maybe the grace development is more active.

Last edited 5 months ago by bernstei (previous) (diff)

comment:5 Changed 5 months ago by ryandesign (Ryan Carsten Schmidt)

I hadn't heard back from the developers, after I provided them with specifics of the problems after they asked for them, so I've now asked for a status update.

comment:6 Changed 5 months ago by bernstei

It looks to me like xmgrace is essentially dead upstream, similarly to opendx (and scientists, being who they are, are still using both). I'd be happy to share my patch, which basically reverts the compiler to earlier behavior, similar to what was done for opendx ticket #61842 (note that opendx will _also_ need a new, similar patch, since clang updates made more warnings into errors)

Last edited 5 months ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:7 Changed 5 months ago by bernstei

I'm going to try to fix this in the grace source, but I stand by my position (which I know isn't macport's policy) that when bringing along ancient code bases, it's better to get the new compilers to behave like old compilers than to update the code to work with the new compilers.

I'll post here, perhaps with a PR, once I get it working.

comment:9 Changed 5 months ago by bernstei

In bd07e4bb4465d5ff9215d01a5ecb52adf3394f7d/macports-ports (master):

grace: fix outdated behavior warning vs. error with clang

Source assumed outdated C/C++ compiler behavior, which clang has
recently switched from warning to errors. Reported as
#69877

  • function arguments that default to int

comment:10 Changed 5 months ago by bernstei

Thanks for merging the PR. What's the procedure (or is it just time) for the updated files to make it to port selfupdate ?

comment:11 Changed 5 months ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed

It happens automatically every hour or so.

Note: See TracTickets for help on using tickets.