Files
clang-p2996/flang/test/Driver/debug-provenance.f90
Peter Klausler e12ffe6a93 [flang] Honor #line and related preprocessing directives
Extend the SourceFile class to take account of #line directives
when computing source file positions for error messages.
Adjust the output of #line directives to -E output so that they
reflect any #line directives that were in the input.

Differential Revision: https://reviews.llvm.org/D153910
2023-06-29 08:27:37 -07:00

22 lines
1.0 KiB
Fortran

! Ensure argument -fdebug-dump-provenance works as expected.
! RUN: %flang_fc1 -fdebug-dump-provenance %s 2>&1 | FileCheck %s
! CHECK: AllSources:
! CHECK-NEXT: AllSources range_ [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes)
! CHECK-NEXT: [1..1] (1 bytes) -> compiler '?'(0x3f)
! CHECK-NEXT: [2..2] (1 bytes) -> compiler ' '(0x20)
! CHECK-NEXT: [3..3] (1 bytes) -> compiler '\'(0x5c)
! CHECK-NEXT: [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes) -> file {{.*[/\\]}}debug-provenance.f90
! CHECK-NEXT: [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes) -> compiler '(after end of source)'
! CHECK-NEXT: SourceFile '{{.*[/\\]}}debug-provenance.f90'
! CHECK-NEXT: origin_[1] -> '{{.*[/\\]}}debug-provenance.f90' 1
! CHECK-NEXT: CookedSource::provenanceMap_:
! CHECK-NEXT: offsets [{{[0-9]*}}..{{[0-9]*}}] -> provenances [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes)
! CHECK-NEXT: CookedSource::invertedMap_:
! CHECK-NEXT: provenances [{{[0-9]*}}..{{[0-9]*}}] ({{[0-9]*}} bytes) -> offsets [{{[0-9]*}}..{{[0-9]*}}]
! CHECK-EMPTY:
program A
end