1. check that size / limit is not exceeded -DONE the checking is missing for the qawo workspace stuff. -DONE we never check if limit < workspace->limit, which is obviously needed 2. check that routines work correctly for (b, a) and (a, b) -DONE 3. DONE check the inner workings of the qawo workspace. I haven't verified it except by checking the overall result. 4. DONE what is this business with if (error_type > 2) error_type--; WELL, THAT'S JUST THE WAY IT IS. We could make it more consistent but then it would be more confusing doing comparisons with the original code so we'll just leave it for now. 5. DONE Take a look at the FIXMEs