Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Cygwin: 2 problems detected by the test suite #437
Comments
|
The test suite fails on Debian and Ubuntu too. https://autopkgtest.ubuntu.com//packages/link-grammar/yakkety/amd64 I think I need to rewrite the autopkgtest rule so it prints a more useful error. |
|
The test suite actually passes. However, there is another strange problem (from the recent last log in the first link). Does your script remove link-grammar/liblink-grammar.la?
|
|
Thanks. Yes the Debian test suite failure was just a packaging problem and is fixed now. I also confirm that the fix for issue #428 works. |
ampli
added
the
bug
label
Oct 14, 2016
linas
added
the
good first issue
label
Oct 18, 2017
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
ampli commentedOct 3, 2016
•
Edited 2 times
-
ampli
Nov 1, 2017
-
ampli
Oct 4, 2016
These are recently-added tests, that I have not tried on Cygwin before.
1).
It just seems the POSIX regex library of Cygwin (a BSD one) doesn't support \w and most probably other backslash escapes (since maybe they are extensions to POSIX). By a fast glance in the library code I was not able to identify such a support.
Possible fixes:
2).
This one is alarming. My recent fix to allow to parse with any number of null-links, starting with 0, seems not to work on Cygwin. I tried with no optimization and the problem persists.
Unless this is a compiler bug on Cygwin (not likely) it may hint the code has some "undefined behavior" bug (e.g. uninitialized variable).
Since the result is different, it means it is more probably easy enough to find the exact point in which it happens. But it may take some time.
The relevant code needs a close inspection anyway - it either containing an unneeded heavy call at the start (free_parse_info()), or free_parse_info() needs to be repeated after every failed parsing. What I couldn't understand yet is how come that removing the said call to free_parse_info() doesn't mangle the results in any way (checked on Linux) even when the parse_info structure contains info from a a previous (unsuccessful) parse.