UPC-CHECK: A scalable tool for detecting run-time errors in Unified Parallel C