| 768 | } |
| 769 | |
| 770 | bool cmCTestMemCheckHandler::ProcessMemCheckOutput(std::string const& str, |
| 771 | std::string& log, |
| 772 | std::vector<int>& results) |
| 773 | { |
| 774 | switch (this->MemoryTesterStyle) { |
| 775 | case cmCTestMemCheckHandler::VALGRIND: |
| 776 | return this->ProcessMemCheckValgrindOutput(str, log, results); |
| 777 | case cmCTestMemCheckHandler::DRMEMORY: |
| 778 | return this->ProcessMemCheckDrMemoryOutput(str, log, results); |
| 779 | case cmCTestMemCheckHandler::PURIFY: |
| 780 | return this->ProcessMemCheckPurifyOutput(str, log, results); |
| 781 | case cmCTestMemCheckHandler::ADDRESS_SANITIZER: |
| 782 | case cmCTestMemCheckHandler::LEAK_SANITIZER: |
| 783 | case cmCTestMemCheckHandler::THREAD_SANITIZER: |
| 784 | case cmCTestMemCheckHandler::MEMORY_SANITIZER: |
| 785 | case cmCTestMemCheckHandler::UB_SANITIZER: |
| 786 | return this->ProcessMemCheckSanitizerOutput(str, log, results); |
| 787 | case cmCTestMemCheckHandler::BOUNDS_CHECKER: |
| 788 | return this->ProcessMemCheckBoundsCheckerOutput(str, log, results); |
| 789 | case cmCTestMemCheckHandler::CUDA_SANITIZER: |
| 790 | return this->ProcessMemCheckCudaOutput(str, log, results); |
| 791 | default: |
| 792 | log.append("\nMemory checking style used was: "); |
| 793 | log.append("None that I know"); |
| 794 | log = str; |
| 795 | return true; |
| 796 | } |
| 797 | } |
| 798 | |
| 799 | std::vector<int>::size_type cmCTestMemCheckHandler::FindOrAddWarning( |
| 800 | std::string const& warning) |
no test coverage detected