| View Issue Details [ Jump to Notes ] | [ Print ] |
| ID | Project | Category | View Status | Date Submitted | Last Update |
| 0010859 | CMake | CTest | public | 2010-06-21 22:16 | 2016-06-10 14:31 |
|
| Reporter | Vladimir Chalupecky | |
| Assigned To | Bill Hoffman | |
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | closed | Resolution | moved | |
| Platform | | OS | | OS Version | |
| Product Version | CMake-2-8 | |
| Target Version | | Fixed in Version | | |
|
| Summary | 0010859: Test failure due to an exit exception (e.g., SIGABRT) incorrectly reported |
| Description | If a test fails because an exception was raised (like SIGABRT after a call to abort() ), it is incorrectly reported as segmentation fault exception.
This issue arises when using for instance the GLib testing framework -- it uses a set of assert macros which call abort() if the assert condition is not fulfilled. |
| Additional Information | The reason lies within cmCTestRunTest::EndTest. It checks the exit status of the process and if it exited with an exception, it tries to look up the exception. However, this look up is done based on the exit value of the process, not on the exception code. As the exit value of an aborted process is usually 1 (but perhaps implementation dependent) and cmsysProcess_Exception_Fault is also equal to one, incorrect reason of test failure is reported. |
| Tags | No tags attached. |
|
| Attached Files | |
|