[Bug 258465] chinese/c2t: fix build with clang 13
Date: Sun, 12 Sep 2021 20:51:54 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=258465
Bug ID: 258465
Summary: chinese/c2t: fix build with clang 13
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: ports-bugs@FreeBSD.org
Reporter: dim@FreeBSD.org
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.
--
You are receiving this mail because:
You are the assignee for the bug.