1516ccce7SIngo Müller// Check near-miss mechanics: 2516ccce7SIngo Müller// RUN: mlir-opt --split-input-file --verify-diagnostics %s 2> %t \ 3*83da7b63SIngo Müller// RUN: && FileCheck --input-file %t --check-prefix=CHECK-DEFAULT %s 4516ccce7SIngo Müller// RUN: cat %t 5516ccce7SIngo Müller 6516ccce7SIngo Müller// Check that (1) custom input splitter and (2) custom output splitters work. 7*83da7b63SIngo Müller// RUN: mlir-opt %s -split-input-file="// CHECK-DEFAULT: ""----" \ 8516ccce7SIngo Müller// RUN: -output-split-marker="// ---- next split ----" \ 9*83da7b63SIngo Müller// RUN: | FileCheck --check-prefix=CHECK-CUSTOM %s 10*83da7b63SIngo Müller 11*83da7b63SIngo Müller// Check that (3) the input is not split if `-split-input-file` is not given. 12*83da7b63SIngo Müller// RUN: mlir-opt %s 2> %t \ 13*83da7b63SIngo Müller// RUN: || FileCheck --input-file %t --check-prefix=CHECK-NOSPLIT %s 14*83da7b63SIngo Müller// RUN: cat %t 15516ccce7SIngo Müller 16516ccce7SIngo Müllerfunc.func @main() {return} 17516ccce7SIngo Müller 18516ccce7SIngo Müller// ----- 19516ccce7SIngo Müller 20516ccce7SIngo Müller// expected-note @+1 {{see existing symbol definition here}} 21516ccce7SIngo Müllerfunc.func @foo() { return } 22*83da7b63SIngo Müller// CHECK-DEFAULT: warning: near miss with file split marker 23*83da7b63SIngo Müller// CHECK-DEFAULT: ---- 24516ccce7SIngo Müller// ---- 25516ccce7SIngo Müller 26*83da7b63SIngo Müller// CHECK-NOSPLIT: error: redefinition of symbol named 'main' 27*83da7b63SIngo Müllerfunc.func @main() {return} 28*83da7b63SIngo Müller 29516ccce7SIngo Müller// expected-error @+1 {{redefinition of symbol named 'foo'}} 30516ccce7SIngo Müllerfunc.func @foo() { return } 31*83da7b63SIngo Müller// CHECK-DEFAULT: warning: near miss with file split marker 32*83da7b63SIngo Müller// CHECK-DEFAULT: ---- 33516ccce7SIngo Müller// ---- 34516ccce7SIngo Müllerfunc.func @bar2() {return } 35516ccce7SIngo Müller 36516ccce7SIngo Müller// No error flagged at the end for a near miss. 37516ccce7SIngo Müller// ---- 38516ccce7SIngo Müller 39*83da7b63SIngo Müller// CHECK-CUSTOM: module 40*83da7b63SIngo Müller// CHECK-CUSTOM: ---- next split ---- 41*83da7b63SIngo Müller// CHECK-CUSTOM: module 42*83da7b63SIngo Müller// CHECK-CUSTOM: ---- next split ---- 43*83da7b63SIngo Müller// CHECK-CUSTOM: module 44