| # Bad comment prefixes are diagnosed. | |
| # Check empty comment prefix. | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes= | \ | |
| RUN: FileCheck -check-prefix=PREFIX-EMPTY %s | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes=,FOO | \ | |
| RUN: FileCheck -check-prefix=PREFIX-EMPTY %s | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes=FOO, | \ | |
| RUN: FileCheck -check-prefix=PREFIX-EMPTY %s | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes=FOO,,BAR | \ | |
| RUN: FileCheck -check-prefix=PREFIX-EMPTY %s | |
| PREFIX-EMPTY: error: supplied comment prefix must not be the empty string | |
| # Check invalid characters in comment prefix. | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes=. | \ | |
| RUN: FileCheck -check-prefix=PREFIX-BAD-CHAR1 %s | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes='foo ' | \ | |
| RUN: FileCheck -check-prefix=PREFIX-BAD-CHAR2 %s | |
| PREFIX-BAD-CHAR1: error: supplied comment prefix must start with a letter and contain only alphanumeric characters, hyphens, and underscores: '.' | |
| PREFIX-BAD-CHAR2: error: supplied comment prefix must start with a letter and contain only alphanumeric characters, hyphens, and underscores: 'foo ' | |
| # Check duplicate comment prefixes. | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes=FOO,BAR,BAZ,BAR | \ | |
| RUN: FileCheck -check-prefix=COMMENT-PREFIX-DUP %s | |
| COMMENT-PREFIX-DUP: error: supplied comment prefix must be unique among check and comment prefixes: 'BAR' | |
| # Check user-supplied check prefix that duplicates a default comment prefix. | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -check-prefixes=FOO,COM | \ | |
| RUN: FileCheck -check-prefix=CHECK-PREFIX-DUP-COM %s | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -check-prefixes=RUN,FOO | \ | |
| RUN: FileCheck -check-prefix=CHECK-PREFIX-DUP-RUN_ %s | |
| CHECK-PREFIX-DUP-COM: error: supplied check prefix must be unique among check and comment prefixes: 'COM' | |
| CHECK-PREFIX-DUP-RUN_: error: supplied check prefix must be unique among check and comment prefixes: 'RUN' | |
| # Check user-supplied comment prefix that duplicates default check prefixes. | |
| RUN: %ProtectFileCheckOutput not FileCheck /dev/null < /dev/null 2>&1 \ | |
| RUN: -comment-prefixes=CHECK | \ | |
| RUN: FileCheck -check-prefix=COMMENT-PREFIX-DUP-CHECK %s | |
| COMMENT-PREFIX-DUP-CHECK: error: supplied comment prefix must be unique among check and comment prefixes: 'CHECK' |