Bug 258472 - irc/unreal: fix build with clang 13
Summary: irc/unreal: fix build with clang 13
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Dimitry Andric
Depends on:
Blocks: 258209
  Show dependency treegraph
Reported: 2021-09-13 08:17 UTC by Dimitry Andric
Modified: 2021-09-16 05:57 UTC (History)
1 user (show)

See Also:

irc/unreal: fix inline which should be static (762 bytes, patch)
2021-09-13 08:17 UTC, Dimitry Andric
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dimitry Andric freebsd_committer 2021-09-13 08:17:00 UTC
During an exp-run for llvm 13 (see bug 258209), it turned out that irc/unreal fails to build with clang 13:

cc -I../include -I@TREINCDIR@ -I/wrkdirs/usr/ports/irc/unreal/work/Unreal3.2.10.7/extras/regexp/include -pipe -O2 -pipe  -I/usr/local/include -fcommon -fstack-protector-strong -fno-strict-aliasing  -funsigned-char -Wl,-export-dynamic  -L/usr/local/lib  -fstack-protector-strong   -lssl -lcrypto -o ircd timesynch.o res.o s_bsd.o auth.o aln.o channel.o cloak.o crule.o dbuf.o  events.o fdlist.o hash.o help.o ircd.o ircsprintf.o list.o lusers.o  match.o modules.o packet.o parse.o s_auth.o  s_conf.o s_debug.o s_err.o s_extra.o s_kline.o  s_misc.o s_numeric.o s_serv.o s_svs.o  socket.o  ssl.o s_user.o charsys.o scache.o send.o support.o umodes.o  version.o whowas.o zip.o cidr.o random.o extcmodes.o  extbans.o md5.o api-isupport.o api-command.o  -L/usr/local/lib  -fstack-protector-strong  -lcrypt  /wrkdirs/usr/ports/irc/unreal/work/Unreal3.2.10.7/extras/regexp/lib/libtre.a   -L/usr/local/lib -fstack-protector-strong  -L/usr/local/lib -lcares -lssl -lcrypto
ld: error: undefined symbol: parse_addlag
>>> referenced by parse.c
>>>               parse.o:(parse)
>>> referenced by parse.c
>>>               parse.o:(parse)
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1

This is because parse_addlag() is marked as 'inline' but does not have either 'static' or 'extern' specifiers. Add a 'static' specifier to resolve the link error.
Comment 1 Dimitry Andric freebsd_committer 2021-09-13 08:17:56 UTC
Created attachment 227868 [details]
irc/unreal: fix inline which should be static
Comment 2 Fernando Apesteguía freebsd_committer 2021-09-16 05:57:06 UTC
^Triage: Reporter is committer, assign accordingly.