Trying to build current master on OS X 10.11.6 with Xcode 8 yields the following early on in the build process:
../lex.c:137:19: error: use of undeclared identifier 'deftbl'
if ((tp = lookup(deftbl, token, NULL)) != NULL) {
^
../lex.c:144:24: error: use of undeclared identifier 'keytbl'
else if ((tp = lookup(keytbl, token, NULL)) == NULL) {
^
git-blaming reveals that commit b0c598742fe9b8ffe5fcdfdc9adce34708907379 removed the declarations of deftbl and keytbl from yylex() in eqn. If I manually add them back, we get a bit more progress:
../lookup.c:223:1: error: conflicting types for 'lookup'
lookup(tbl **tblp, const char *name, const char *defn) /* find name in ...
^
../e.h:150:6: note: previous declaration is here
tbl *lookup(tbl **, char *, char *);
^
Readding the const qualifiers to the parameters in lookup.c brings us even further:
../paren.c:166:1: error: conflicting types for 'brack'
brack(int m, const char *t, const char *c, const char *b) {
^
../e.h:164:6: note: previous declaration is here
void brack(int, char *, char *, char *);
^
but at this point I stopped and did the git blame, and noticed that the commit in question was trying to fix constness warnings, which still show up for me among the other noise.
Reverting the commit entirely causes eqn to build without any warnings or errors. It then breaks on dpost with similar errors, from a similar commit.
Example make output for one file's compilation, to show compiler flags:
cc -D_GNU_SOURCE -I. -I.. -I../../include -DHAVE_STRLCPY -DHAVE_STRLCAT -DHAVE_WCSLCPY -c ../lex.c
clang version:
Apple LLVM version 8.0.0 (clang-800.0.38)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Trying to build current master on OS X 10.11.6 with Xcode 8 yields the following early on in the build process:
git-blaming reveals that commit b0c598742fe9b8ffe5fcdfdc9adce34708907379 removed the declarations of
deftbl
andkeytbl
fromyylex()
in eqn. If I manually add them back, we get a bit more progress:Readding the
const
qualifiers to the parameters inlookup.c
brings us even further:but at this point I stopped and did the git blame, and noticed that the commit in question was trying to fix constness warnings, which still show up for me among the other noise.
Reverting the commit entirely causes eqn to build without any warnings or errors. It then breaks on dpost with similar errors, from a similar commit.
Example make output for one file's compilation, to show compiler flags:
clang version:
cc @bapt