Opened 5 months ago

Closed 5 months ago

Last modified 5 months ago

#68961 closed defect (fixed)

groff: update to 1.23.0 has broken the build with gcc 4.2:

Reported by: barracuda156 Owned by: Schamschula (Marius Schamschula)
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: tiger, leopard, snowleopard, powerpc Cc:
Port: groff

Description

src/preproc/eqn/delim.cpp: In function 'void define_extensible_string(char*, int, left_or_right_t)':
src/preproc/eqn/delim.cpp:322: error: #pragma GCC diagnostic not allowed inside functions
src/preproc/eqn/delim.cpp:323: error: #pragma GCC diagnostic not allowed inside functions
src/preproc/eqn/delim.cpp:325: error: #pragma GCC diagnostic not allowed inside functions
make[1]: *** [src/preproc/eqn/eqn-delim.o] Error 1

Change History (4)

comment:1 Changed 5 months ago by Schamschula (Marius Schamschula)

Looks like it may be possible to fix that: something along the lines of https://github.com/redis/redis/issues/5394

comment:2 in reply to:  1 ; Changed 5 months ago by barracuda156

Replying to Schamschula:

Looks like it may be possible to fix that: something along the lines of https://github.com/redis/redis/issues/5394

I guess it is safer just to remove them conditional on gcc-4.x. This way the code will be unmodified for everything else. (I have no idea if clangs define a version of __GNUC__ and if yes then which.)

UPD. https://github.com/macports/macports-ports/pull/21911

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

comment:3 Changed 5 months ago by barracuda156

Resolution: fixed
Status: assignedclosed

In 44369c85b00fb0e56af95a7ea20c2347bd325018/macports-ports (master):

groff: fix build for gcc-4.2

Fixes: #68961

comment:4 in reply to:  2 Changed 5 months ago by ryandesign (Ryan Carsten Schmidt)

Replying to barracuda156:

(I have no idea if clangs define a version of __GNUC__ and if yes then which.)

In terms of which GNUC macros it exports, clang has always pretended to be gcc 4.2.1

% clang -dM -E - < /dev/null | grep GNU
#define __GNUC_MINOR__ 2
#define __GNUC_PATCHLEVEL__ 1
#define __GNUC_STDC_INLINE__ 1
#define __GNUC__ 4
Note: See TracTickets for help on using tickets.