aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2021-09-12 20:48:25 +0000
committerDimitry Andric <dim@FreeBSD.org>2021-10-02 11:19:56 +0000
commit0efce95397d4b53be14448a803902191ab8c1df3 (patch)
treea08b3fcd3e112cf0ab17b3f96bb374b4e7d88efd
parent7075120b4d50ebba264775ce8a5bcbcafd1d99a2 (diff)
downloadports-0efce95397d4b53be14448a803902191ab8c1df3.tar.gz
ports-0efce95397d4b53be14448a803902191ab8c1df3.zip
chinese/c2t: fix "error: address of register variable requested"
During an exp-run for llvm 13 (see bug 258209), it turned out that chinese/c2t fails to build with clang 13: cc -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -DCHINDICT=\"/usr/local/share/chinese/gb/TONEPY.tit\" -c c2t.c c2t.c:99:3: error: address of register variable requested hz[2] = '\0'; ^~ c2t.c:107:7: error: address of register variable requested hz[0] = (char)eka; ^~ c2t.c:108:7: error: address of register variable requested hz[1] = (char)toka; ^~ c2t.c:113:8: error: address of register variable requested if (hz[0] != (*pipo)[i] || hz[1] != (*pipo)[i+1]) continue; ^~ c2t.c:113:31: error: address of register variable requested if (hz[0] != (*pipo)[i] || hz[1] != (*pipo)[i+1]) continue; ^~ c2t.c:133:36: error: address of register variable requested fprintf(miss_chars, "%c", hz[0]); ^~ c2t.c:134:30: error: address of register variable requested fprintf(miss_chars, "%c ", hz[1]); ^~ c2t.c:143:17: error: address of register variable requested printf("%c", hz[0]); ^~ c2t.c:144:18: error: address of register variable requested printf("%c ", hz[1]); ^~ 9 errors generated. As indicated, arrays shouldn't be register variables as they don't have addresses. In general, the register keyword is deprecated and should no longer be used. To fix this, use a command line flag to define "register" to empty. PR: 258465 Approved by: maintainer timeout (2 weeks) MFH: 2021Q4
-rw-r--r--chinese/c2t/Makefile2
1 files changed, 2 insertions, 0 deletions
diff --git a/chinese/c2t/Makefile b/chinese/c2t/Makefile
index f39b83ce7475..fc3e01b36cc8 100644
--- a/chinese/c2t/Makefile
+++ b/chinese/c2t/Makefile
@@ -13,6 +13,8 @@ COMMENT= Translates GB/Big5 encoding to tone pinyin
NO_WRKSUBDIR= yes
EXTRACT_ONLY= c2t.tar.gz
+CFLAGS+= -Dregister=
+
do-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/share/chinese/gb
${INSTALL_PROGRAM} ${WRKSRC}/c2t ${STAGEDIR}${PREFIX}/bin