| ;--------------------------------------------------------------------- | 
 | ; RUN: not FileCheck -allow-deprecated-dag-overlap -input-file %s %s \ | 
 | ; RUN:               -check-prefix=EndAfterEnd | 
 | ; RUN: FileCheck -input-file %s %s -check-prefix=EndAfterEnd | 
 |  | 
 | new match end after old match end | 
 |  | 
 | __EndAfterEnd | 
 | (abc<mno>xyz) | 
 | (abc<mno>xyz) | 
 | (abc<mno>xyz  >xyz) | 
 | (abc<mno>xyz  no>xyz) | 
 | (abc<mno>xyz  <mno>xyz) | 
 | (abc<mno>xyz  c<mno>xyz) | 
 | (abc<mno>xyz  abc<mno>xyz) | 
 | __EndAfterEnd | 
 |  | 
 | ; EndAfterEnd:      __EndAfterEnd | 
 |  | 
 | ; EndAfterEnd:      {{^}}( | 
 | ; EndAfterEnd-DAG:  <mno> | 
 | ; EndAfterEnd-DAG:  yz | 
 | ; EndAfterEnd-NOT:  {{.}} | 
 | ; EndAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAfterEnd:      {{^}}( | 
 | ; EndAfterEnd-DAG:  <mno> | 
 | ; EndAfterEnd-DAG:  xyz | 
 | ; EndAfterEnd-NOT:  {{.}} | 
 | ; EndAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAfterEnd:      {{^}}( | 
 | ; EndAfterEnd-DAG:  <mno> | 
 | ; EndAfterEnd-DAG:  >xyz | 
 | ; EndAfterEnd-NOT:  {{.}} | 
 | ; EndAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAfterEnd:      {{^}}( | 
 | ; EndAfterEnd-DAG:  <mno> | 
 | ; EndAfterEnd-DAG:  no>xyz | 
 | ; EndAfterEnd-NOT:  {{.}} | 
 | ; EndAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAfterEnd:      {{^}}( | 
 | ; EndAfterEnd-DAG:  <mno> | 
 | ; EndAfterEnd-DAG:  <mno>xyz | 
 | ; EndAfterEnd-NOT:  {{.}} | 
 | ; EndAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAfterEnd:      {{^}}( | 
 | ; EndAfterEnd-DAG:  <mno> | 
 | ; EndAfterEnd-DAG:  c<mno>xyz | 
 | ; EndAfterEnd-NOT:  {{.}} | 
 | ; EndAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAfterEnd:      {{^}}( | 
 | ; EndAfterEnd-DAG:  <mno> | 
 | ; EndAfterEnd-DAG:  abc<mno>xyz | 
 | ; EndAfterEnd-NOT:  {{.}} | 
 | ; EndAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAfterEnd:      __EndAfterEnd | 
 |  | 
 | ;--------------------------------------------------------------------- | 
 | ; RUN: not FileCheck -allow-deprecated-dag-overlap -input-file %s %s \ | 
 | ; RUN:               -check-prefix=EndRightAfterEnd | 
 | ; RUN: FileCheck -input-file %s %s -check-prefix=EndRightAfterEnd | 
 |  | 
 | new match end right after old match end | 
 |  | 
 | __EndRightAfterEnd | 
 | (abc<mno>xyz) | 
 | (abc<mno>xyz  >x) | 
 | (abc<mno>xyz  no>x) | 
 | (abc<mno>xyz  <mno>x) | 
 | (abc<mno>xyz  c<mno>x) | 
 | (abc<mno>xyz  abc<mno>x) | 
 | __EndRightAfterEnd | 
 |  | 
 | ; EndRightAfterEnd:      __EndRightAfterEnd | 
 |  | 
 | ; EndRightAfterEnd:      {{^}}( | 
 | ; EndRightAfterEnd-DAG:  <mno> | 
 | ; EndRightAfterEnd-DAG:  x | 
 | ; EndRightAfterEnd-NOT:  {{.}} | 
 | ; EndRightAfterEnd-SAME: yz){{$}} | 
 |  | 
 | ; EndRightAfterEnd:      {{^}}( | 
 | ; EndRightAfterEnd-DAG:  <mno> | 
 | ; EndRightAfterEnd-DAG:  >x | 
 | ; EndRightAfterEnd-NOT:  {{.}} | 
 | ; EndRightAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterEnd:      {{^}}( | 
 | ; EndRightAfterEnd-DAG:  <mno> | 
 | ; EndRightAfterEnd-DAG:  no>x | 
 | ; EndRightAfterEnd-NOT:  {{.}} | 
 | ; EndRightAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterEnd:      {{^}}( | 
 | ; EndRightAfterEnd-DAG:  <mno> | 
 | ; EndRightAfterEnd-DAG:  <mno>x | 
 | ; EndRightAfterEnd-NOT:  {{.}} | 
 | ; EndRightAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterEnd:      {{^}}( | 
 | ; EndRightAfterEnd-DAG:  <mno> | 
 | ; EndRightAfterEnd-DAG:  c<mno>x | 
 | ; EndRightAfterEnd-NOT:  {{.}} | 
 | ; EndRightAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterEnd:      {{^}}( | 
 | ; EndRightAfterEnd-DAG:  <mno> | 
 | ; EndRightAfterEnd-DAG:  abc<mno>x | 
 | ; EndRightAfterEnd-NOT:  {{.}} | 
 | ; EndRightAfterEnd-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterEnd:      __EndRightAfterEnd | 
 |  | 
 | ;--------------------------------------------------------------------- | 
 | ; RUN: not FileCheck -allow-deprecated-dag-overlap -input-file %s %s \ | 
 | ; RUN:               -check-prefix=EndAtEnd | 
 | ; RUN: FileCheck -input-file %s %s -check-prefix=EndAtEnd | 
 |  | 
 | new match end at old match end | 
 |  | 
 | __EndAtEnd | 
 | (abc<mno>xyz  >) | 
 | (abc<mno>xyz  no>) | 
 | (abc<mno>xyz  <mno>) | 
 | (abc<mno>xyz  c<mno>) | 
 | (abc<mno>xyz  abc<mno>) | 
 | __EndAtEnd | 
 |  | 
 | ; EndAtEnd:      __EndAtEnd | 
 |  | 
 | ; EndAtEnd:      {{^}}( | 
 | ; EndAtEnd-DAG:  <mno> | 
 | ; EndAtEnd-DAG:  > | 
 | ; EndAtEnd-NOT:  {{.}} | 
 | ; EndAtEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAtEnd:      {{^}}( | 
 | ; EndAtEnd-DAG:  <mno> | 
 | ; EndAtEnd-DAG:  no> | 
 | ; EndAtEnd-NOT:  {{.}} | 
 | ; EndAtEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAtEnd:      {{^}}( | 
 | ; EndAtEnd-DAG:  <mno> | 
 | ; EndAtEnd-DAG:  <mno> | 
 | ; EndAtEnd-NOT:  {{.}} | 
 | ; EndAtEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAtEnd:      {{^}}( | 
 | ; EndAtEnd-DAG:  <mno> | 
 | ; EndAtEnd-DAG:  c<mno> | 
 | ; EndAtEnd-NOT:  {{.}} | 
 | ; EndAtEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAtEnd:      {{^}}( | 
 | ; EndAtEnd-DAG:  <mno> | 
 | ; EndAtEnd-DAG:  abc<mno> | 
 | ; EndAtEnd-NOT:  {{.}} | 
 | ; EndAtEnd-SAME: ){{$}} | 
 |  | 
 | ; EndAtEnd:      __EndAtEnd | 
 |  | 
 | ;--------------------------------------------------------------------- | 
 | ; RUN: not FileCheck -allow-deprecated-dag-overlap -input-file %s %s \ | 
 | ; RUN:               -check-prefix=EndWithin | 
 | ; RUN: FileCheck -input-file %s %s -check-prefix=EndWithin | 
 |  | 
 | new match end within old match | 
 |  | 
 | __EndWithin | 
 | (abc<mno>xyz  m) | 
 | (abc<mno>xyz  <m) | 
 | (abc<mno>xyz  c<m) | 
 | (abc<mno>xyz  abc<m) | 
 | __EndWithin | 
 |  | 
 | ; EndWithin:      __EndWithin | 
 |  | 
 | ; EndWithin:      {{^}}( | 
 | ; EndWithin-DAG:  <mno> | 
 | ; EndWithin-DAG:  m | 
 | ; EndWithin-NOT:  {{.}} | 
 | ; EndWithin-SAME: ){{$}} | 
 |  | 
 | ; EndWithin:      {{^}}( | 
 | ; EndWithin-DAG:  <mno> | 
 | ; EndWithin-DAG:  <m | 
 | ; EndWithin-NOT:  {{.}} | 
 | ; EndWithin-SAME: ){{$}} | 
 |  | 
 | ; EndWithin:      {{^}}( | 
 | ; EndWithin-DAG:  <mno> | 
 | ; EndWithin-DAG:  c<m | 
 | ; EndWithin-NOT:  {{.}} | 
 | ; EndWithin-SAME: ){{$}} | 
 |  | 
 | ; EndWithin:      {{^}}( | 
 | ; EndWithin-DAG:  <mno> | 
 | ; EndWithin-DAG:  abc<m | 
 | ; EndWithin-NOT:  {{.}} | 
 | ; EndWithin-SAME: ){{$}} | 
 |  | 
 | ; EndWithin:      __EndWithin | 
 |  | 
 | ;--------------------------------------------------------------------- | 
 | ; RUN: not FileCheck -allow-deprecated-dag-overlap -input-file %s %s \ | 
 | ; RUN:               -check-prefix=EndRightAfterStart | 
 | ; RUN: FileCheck -input-file %s %s -check-prefix=EndRightAfterStart | 
 |  | 
 | new match end right after old match start | 
 |  | 
 | __EndRightAfterStart | 
 | (abc<mno>xyz  <) | 
 | (abc<mno>xyz  c<) | 
 | (abc<mno>xyz  abc<) | 
 | __EndRightAfterStart | 
 |  | 
 | ; EndRightAfterStart:      __EndRightAfterStart | 
 |  | 
 | ; EndRightAfterStart:      {{^}}( | 
 | ; EndRightAfterStart-DAG:  <mno> | 
 | ; EndRightAfterStart-DAG:  < | 
 | ; EndRightAfterStart-NOT:  {{.}} | 
 | ; EndRightAfterStart-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterStart:      {{^}}( | 
 | ; EndRightAfterStart-DAG:  <mno> | 
 | ; EndRightAfterStart-DAG:  c< | 
 | ; EndRightAfterStart-NOT:  {{.}} | 
 | ; EndRightAfterStart-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterStart:      {{^}}( | 
 | ; EndRightAfterStart-DAG:  <mno> | 
 | ; EndRightAfterStart-DAG:  abc< | 
 | ; EndRightAfterStart-NOT:  {{.}} | 
 | ; EndRightAfterStart-SAME: ){{$}} | 
 |  | 
 | ; EndRightAfterStart:      __EndRightAfterStart | 
 |  | 
 | ;--------------------------------------------------------------------- | 
 | ; RUN: FileCheck -allow-deprecated-dag-overlap -input-file %s %s \ | 
 | ; RUN:           -check-prefix=EndAtStart | 
 | ; RUN: FileCheck -input-file %s %s -check-prefix=EndAtStart | 
 |  | 
 | new match end at old match start | 
 |  | 
 | __EndAtStart | 
 | (abc<mno>xyz) | 
 | (abc<mno>xyz) | 
 | __EndAtStart | 
 |  | 
 | ; EndAtStart:      __EndAtStart | 
 |  | 
 | ; EndAtStart:      {{^}}( | 
 | ; EndAtStart-DAG:  <mno> | 
 | ; EndAtStart-DAG:  c | 
 | ; EndAtStart-DAG:  xyz | 
 | ; EndAtStart-NOT:  {{.}} | 
 | ; EndAtStart-SAME: ){{$}} | 
 |  | 
 | ; EndAtStart:      {{^}}( | 
 | ; EndAtStart-DAG:  <mno> | 
 | ; EndAtStart-DAG:  abc | 
 | ; EndAtStart-DAG:  xyz | 
 | ; EndAtStart-NOT:  {{.}} | 
 | ; EndAtStart-SAME: ){{$}} | 
 |  | 
 | ; EndAtStart:      __EndAtStart | 
 |  | 
 | ;--------------------------------------------------------------------- | 
 | ; RUN: FileCheck -allow-deprecated-dag-overlap -input-file %s %s \ | 
 | ; RUN:           -check-prefix=EndBeforeStart | 
 | ; RUN: FileCheck -input-file %s %s -check-prefix=EndBeforeStart | 
 |  | 
 | new match end before old match start | 
 |  | 
 | __EndBeforeStart | 
 | (abc<mno>xyz) | 
 | (abc<mno>xyz) | 
 | __EndBeforeStart | 
 |  | 
 | ; EndBeforeStart:      __EndBeforeStart | 
 |  | 
 | ; EndBeforeStart:      {{^}}( | 
 | ; EndBeforeStart-DAG:  <mno> | 
 | ; EndBeforeStart-DAG:  b | 
 | ; EndBeforeStart-DAG:  xyz | 
 | ; EndBeforeStart-NOT:  {{.}} | 
 | ; EndBeforeStart-SAME: ){{$}} | 
 |  | 
 | ; EndBeforeStart:      {{^}}( | 
 | ; EndBeforeStart-DAG:  <mno> | 
 | ; EndBeforeStart-DAG:  ab | 
 | ; EndBeforeStart-DAG:  xyz | 
 | ; EndBeforeStart-NOT:  {{.}} | 
 | ; EndBeforeStart-SAME: ){{$}} | 
 |  | 
 | ; EndBeforeStart:      __EndBeforeStart |