// Check near-miss mechanics: // RUN: mlir-opt --split-input-file --verify-diagnostics %s 2> %t \ // RUN: && FileCheck --input-file %t --check-prefix=CHECK-DEFAULT %s // RUN: cat %t // Check that (1) custom input splitter and (2) custom output splitters work. // RUN: mlir-opt %s -split-input-file="// CHECK-DEFAULT: ""----" \ // RUN: -output-split-marker="// ---- next split ----" \ // RUN: | FileCheck --check-prefix=CHECK-CUSTOM %s // Check that (3) the input is not split if `-split-input-file` is not given. // RUN: mlir-opt %s 2> %t \ // RUN: || FileCheck --input-file %t --check-prefix=CHECK-NOSPLIT %s // RUN: cat %t func.func @main() {return} // ----- // expected-note @+1 {{see existing symbol definition here}} func.func @foo() { return } // CHECK-DEFAULT: warning: near miss with file split marker // CHECK-DEFAULT: ---- // ---- // CHECK-NOSPLIT: error: redefinition of symbol named 'main' func.func @main() {return} // expected-error @+1 {{redefinition of symbol named 'foo'}} func.func @foo() { return } // CHECK-DEFAULT: warning: near miss with file split marker // CHECK-DEFAULT: ---- // ---- func.func @bar2() {return } // No error flagged at the end for a near miss. // ---- // CHECK-CUSTOM: module // CHECK-CUSTOM: ---- next split ---- // CHECK-CUSTOM: module // CHECK-CUSTOM: ---- next split ---- // CHECK-CUSTOM: module