1*92ad0397SWael Yehia // XFAIL: target={{.*}}-aix{{.*}} 2b46176bbSZequan Wu // RUN: %clangxx_profgen -fcoverage-mapping -Wno-comment -o %t %s 3b46176bbSZequan Wu // RUN: env LLVM_PROFILE_FILE=%t.profraw %run %t 4b46176bbSZequan Wu // RUN: llvm-profdata merge -o %t.profdata %t.profraw 5f23fae29SFangrui Song // RUN: llvm-cov show %t -instr-profile %t.profdata 2>&1 | FileCheck %s 6b46176bbSZequan Wu 7b46176bbSZequan Wu int main() { // CHECK: [[# @LINE]]| 1|int main() { 8b46176bbSZequan Wu /* comment */ int x = 0; // CHECK-NEXT: [[# @LINE]]| 1| 9b46176bbSZequan Wu int y = 0; /* comment */ // CHECK-NEXT: [[# @LINE]]| 1| 10b46176bbSZequan Wu int z = 0; // comment // CHECK-NEXT: [[# @LINE]]| 1| 11b46176bbSZequan Wu // comment // CHECK-NEXT: [[# @LINE]]| | 12b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 13b46176bbSZequan Wu x = 0; /* // CHECK-NEXT: [[# @LINE]]| 1| 14b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 15b46176bbSZequan Wu */ // CHECK-NEXT: [[# @LINE]]| | 16b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 17b46176bbSZequan Wu /* // CHECK-NEXT: [[# @LINE]]| | 18b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 19b46176bbSZequan Wu */ x = 0; // CHECK-NEXT: [[# @LINE]]| 1| 20b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 21b46176bbSZequan Wu /* comment */ // CHECK-NEXT: [[# @LINE]]| | 22b46176bbSZequan Wu // comment // CHECK-NEXT: [[# @LINE]]| | 23b46176bbSZequan Wu /* comment */ // CHECK-NEXT: [[# @LINE]]| | 24b46176bbSZequan Wu z = // CHECK-NEXT: [[# @LINE]]| 1| 25b46176bbSZequan Wu x // comment // CHECK-NEXT: [[# @LINE]]| 1| 26b46176bbSZequan Wu // comment // CHECK-NEXT: [[# @LINE]]| | 27b46176bbSZequan Wu + /* // CHECK-NEXT: [[# @LINE]]| 1| 28b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 29b46176bbSZequan Wu */ // CHECK-NEXT: [[# @LINE]]| | 30b46176bbSZequan Wu /* // CHECK-NEXT: [[# @LINE]]| | 31b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 32b46176bbSZequan Wu */y; // CHECK-NEXT: [[# @LINE]]| 1| 33b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 34b46176bbSZequan Wu // Comments inside directives. // CHECK-NEXT: [[# @LINE]]| | 35b46176bbSZequan Wu #if 0 //comment // CHECK-NEXT: [[# @LINE]]| | 36b46176bbSZequan Wu /* comment */ x = 0; // CHECK-NEXT: [[# @LINE]]| | 37b46176bbSZequan Wu y = 0; /* comment */ // CHECK-NEXT: [[# @LINE]]| | 38b46176bbSZequan Wu z = 0; // comment // CHECK-NEXT: [[# @LINE]]| | 39b46176bbSZequan Wu // comment // CHECK-NEXT: [[# @LINE]]| | 40b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 41b46176bbSZequan Wu x = 0; /* // CHECK-NEXT: [[# @LINE]]| | 42b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 43b46176bbSZequan Wu */ // CHECK-NEXT: [[# @LINE]]| | 44b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 45b46176bbSZequan Wu /* // CHECK-NEXT: [[# @LINE]]| | 46b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 47b46176bbSZequan Wu */ x = 0; // CHECK-NEXT: [[# @LINE]]| | 48b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 49b46176bbSZequan Wu /* comment */ // CHECK-NEXT: [[# @LINE]]| | 50b46176bbSZequan Wu // comment // CHECK-NEXT: [[# @LINE]]| | 51b46176bbSZequan Wu /* comment */ // CHECK-NEXT: [[# @LINE]]| | 52b46176bbSZequan Wu #endif // comment // CHECK-NEXT: [[# @LINE]]| | 53b46176bbSZequan Wu #if 1 // comment // CHECK-NEXT: [[# @LINE]]| 1| 54b46176bbSZequan Wu /* comment */ x = 0; // CHECK-NEXT: [[# @LINE]]| 1| 55b46176bbSZequan Wu y = 0; /* comment */ // CHECK-NEXT: [[# @LINE]]| 1| 56b46176bbSZequan Wu z = 0; // comment // CHECK-NEXT: [[# @LINE]]| 1| 57b46176bbSZequan Wu // comment // CHECK-NEXT: [[# @LINE]]| | 58b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 59b46176bbSZequan Wu x = 0; /* // CHECK-NEXT: [[# @LINE]]| 1| 60b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 61b46176bbSZequan Wu */ // CHECK-NEXT: [[# @LINE]]| | 62b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 63b46176bbSZequan Wu /* // CHECK-NEXT: [[# @LINE]]| | 64b46176bbSZequan Wu comment // CHECK-NEXT: [[# @LINE]]| | 65b46176bbSZequan Wu */ x = 0; // CHECK-NEXT: [[# @LINE]]| 1| 66b46176bbSZequan Wu // CHECK-NEXT: [[# @LINE]]| | 67b46176bbSZequan Wu /* comment */ // CHECK-NEXT: [[# @LINE]]| | 68b46176bbSZequan Wu // comment // CHECK-NEXT: [[# @LINE]]| | 69b46176bbSZequan Wu /* comment */ // CHECK-NEXT: [[# @LINE]]| | 70b46176bbSZequan Wu #endif //comment // CHECK-NEXT: [[# @LINE]]| 1| 71b46176bbSZequan Wu return 0; // CHECK-NEXT: [[# @LINE]]| 1| 72b46176bbSZequan Wu } // CHECK-NEXT: [[# @LINE]]| 1| 73