xref: /llvm-project/flang/test/Driver/parse-fir-error.ll (revision d5d420bb3bcc2eea926fb70fc3e6818c32e1eecc)
1*cc3c6b61SAndrzej Warzynski; This file is a valid LLVM IR file, but we force the driver to treat it as
2*cc3c6b61SAndrzej Warzynski; FIR (with the `-x` flag). This way we verify that the driver
3*cc3c6b61SAndrzej Warzynski; correctly rejects invalid FIR input.
4*cc3c6b61SAndrzej Warzynski
5*cc3c6b61SAndrzej Warzynski; Input type is implicit (correctly assumed to be LLVM IR)
6*cc3c6b61SAndrzej Warzynski; RUN: %flang_fc1 -S %s -o -
7*cc3c6b61SAndrzej Warzynski
8*cc3c6b61SAndrzej Warzynski; Input type is explicitly set as FIR
9*cc3c6b61SAndrzej Warzynski; Verify that parsing errors are correctly reported by the driver
10*cc3c6b61SAndrzej Warzynski; RUN: not %flang_fc1 -S -x fir %s 2>&1 | FileCheck %s --check-prefix=ERROR
11*cc3c6b61SAndrzej Warzynski; RUN: not %flang_fc1 -S %s -x mlir 2>&1 | FileCheck %s --check-prefix=ERROR
12*cc3c6b61SAndrzej Warzynski
13*cc3c6b61SAndrzej Warzynski; ERROR: error: unexpected character
14*cc3c6b61SAndrzej Warzynski; ERROR: error: Could not parse FIR
15*cc3c6b61SAndrzej Warzynski
16*cc3c6b61SAndrzej Warzynskidefine void @foo() {
17*cc3c6b61SAndrzej Warzynski  ret void
18*cc3c6b61SAndrzej Warzynski}
19