cyclus/cyclus — pull request #566 by gidden (2013-09-02 17:48:30+00:00)
Title: Fix Build Error on OSX

This PR fixes the build error on OSX. A bug was found in the bounds-getting function of the CBCSolver. A small code refactor was executed to move the two getter functions into variable.h/cc as non-member, non-friend functions and remove the related functionality from the cbc solver class. Additional tests were added to both the cbc solver and variable test cases to confirm correct functionality.

Two side notes:
1) cyclopts in general is due for a refactor because of the inheritance model used by variable, linear variable, and integer variable. Case in point: this PR uses a dynamic cast, when it really shouldn't have to. I originally believed that this would be easier to deal with, but it's not as I continue to use it.

2) This PR addresses issues #504 and #503 in that the variable-value behavior is now correct. The problem now passes on OSX, Ubuntu and Debian (insam, my laptop, CAE) if run from the build directory (i.e., .../build/bin/CyclusUnitTestDriver) but will fail if run from the install directory (i.e., .../install/bin/CyclusUnitTestDriver). I have currently re-enabled it, but it will depend on @zwelchWI's implementation as to whether the CI tests will pass.