It looks like it wasn't a double free issue. Instead, the error I occasionally get is
"malloc: *** error for object 0x7ff8e80b7960: pointer being freed was not allocated"
Going through the stack trace it looks like this happens at a call for "myint_free" in pats_lintprgrm.dats. I am thinking that compiling without gmp support would solve the issue.