IBM Support

LI75921: -C CAUSING UNEXPECTED TRACE/BPT TRAP

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When using -C or -qcheck, the final executable traps without any
    specific reason.
    
    =====Compile Line=======
    xlf90 -c -g -C type_module.f90
    xlf90 -c -g -C proc_module.f90
    xlf90 -c -g -C main.f90
    xlf90 -o main type_module.o proc_module.o main.o
    
    =====Testcase===========
    $cat type_module.f90
    module type_module
    
    implicit none
    
    type layer
     character (len=128) :: name
     character (len=12) :: type
    end type layer
    
    end module type_module
    $
    
    $cat proc_module.f90
    module proc_module
    use type_module
    implicit none
    
    contains
    
    function simple_function (layers, obj_size) result(jstatus)
    
    type(layer), dimension(:), intent(inout) :: layers
    integer, dimension(:), intent(in) :: obj_size
    integer :: jstatus
    
    jstatus = 0
    
    
    end function simple_function
    
    end module proc_module
    $
    
    $cat main.f90
    program main
    
    use type_module
    use proc_module
    
    implicit none
    
    type(layer), dimension(1) :: data_layers
    integer :: istat
    integer, dimension(2) :: num_array
    
    istat = 0
    num_array = (/12, 7/)
    
    data_layers(1)%name = 'Layer Name'
    data_layers(1)%type = 'float32'
    
    istat = simple_function (data_layers(1:1), num_array) + 5
    print *, '1) simple_function status: ', istat
    
    !if you replace num_array with its actual value, it traps
    istat = simple_function (data_layers(1:1), (/12,7/)) + 5
    print *, '2) simple_function status: ', istat
    
    end program main
    $
    
    ===== ACTUAL OUTPUT:
    $ ./main
     1) simple_function status:  5
    Trace/BPT trap
    $
    
    ===== EXPECTED OUTPUT:
    $ ./main
     1) simple_function status:  5
     2) simple_function status:  5
    $
    

Local fix

  • N/A
    

Problem summary

  • USERS AFFECTED:
    Users compiling with -qcheck may be affected by this issue.
    
    PROBLEM DESCRIPTION:
    The conformability check within the compiler was incorrectly
    considering function arguments in certain expressions leading
    the
    compiler to insert an un-ncessary trap into the code that
    causes it to trap and runtime.
    

Problem conclusion

  • The -qcheck option has been corrected to handle the above
    mentioned issue.
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI75921

  • Reported component name

    XL FORTRAN RHEL

  • Reported component ID

    5724U8410

  • Reported release

    C10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-01-27

  • Closed date

    2011-01-27

  • Last modified date

    2011-01-27

  • APAR is sysrouted FROM one or more of the following:

    IZ80115

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    XL FORTRAN RHEL

  • Fixed component ID

    5724U8410

Applicable component levels

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSB259","label":"XL Fortran Advanced Edition for Linux"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"C.1","Line of Business":{"code":"LOB57","label":"Power"}}]

Document Information

Modified date:
24 February 2022