int main() { UsdUtilsCoalescingDiagnosticDelegate delegate; EmitWarnings(); auto coalesced = delegate.TakeCoalescedDiagnostics(); assert(coalesced.size() == 4); EmitWarnings(); EmitStatuses(); coalesced = delegate.TakeCoalescedDiagnostics(); assert(coalesced.size() == 8); // ensure that the line numbers are unique std::set<size_t> sourceLineNumbers; for (const auto& p : coalesced) { sourceLineNumbers.insert(p.sharedItem.sourceLineNumber); } assert(sourceLineNumbers.size() == 8); EmitWarnings(); EmitWarnings(); auto unfiltered = delegate.TakeUncoalescedDiagnostics(); assert(unfiltered.size() == 12); // ensure that the line numbers are not unique sourceLineNumbers.clear(); for (const auto& i : unfiltered) { sourceLineNumbers.insert(i->GetSourceLineNumber()); } assert(sourceLineNumbers.size() == 4); std::cout << "-------------------------------------------\n"; EmitWarnings(); EmitWarnings(); EmitStatuses(); EmitStatuses(); EmitWarnings(); delegate.DumpCoalescedDiagnostics(std::cout); std::cout << "-------------------------------------------\n"; EmitWarnings(); EmitWarnings(); EmitStatuses(); EmitStatuses(); EmitWarnings(); delegate.DumpUncoalescedDiagnostics(std::cout); std::cout << "-------------------------------------------\n"; }
void ProcessCommands( void ) { InitOmfUtil(); if( !Options.new_library ) { WalkInputLib(); } DelModules(); AddModules(); CleanFileTab(); if( Options.modified || Options.new_library ) { WriteNewLib(); } if( Options.list_contents ) { ListContents(); } EmitWarnings(); FiniOmfUtil(); }