********************************************
*  SURELOG System Verilog Compiler/Linter  *
********************************************

[INFO :CM0023] Creating log file ./slpp_all/surelog.log.

[WARNI:CM0010] Command line argument "-timescale=1ns/1ns" ignored.

[NOTE :CM0009] Command line argument "+vcs+flush+all" ignored.

[NOTE :CM0009] Command line argument "+warn=all" ignored.

[WARNI:CM0010] Command line argument "-sverilog" ignored.

[INFO :CM0024] Executing with 3 threads.

[INFO :PP0122] Processing source file "design.sv".

[INFO :PP0122] Processing source file "testbench.sv".

[INFO :PP0123] Processing include file "amiq_svaunit_ex_simple_pkg.sv".

[INFO :PP0123] Processing include file "an_interface.sv".

[INFO :PP0123] Processing include file "another_interface.sv".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/uvm_macros.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_version_defines.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_global_defines.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_message_defines.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_phase_defines.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_object_defines.svh".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_object_defines.svh, line 1573, col 8: Unused macro argument "VAL".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_object_defines.svh, line 1580, col 8: Unused macro argument "ARG".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_object_defines.svh, line 1580, col 8: Unused macro argument "VAL".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_object_defines.svh, line 3341, col 12: Unused macro argument "TR_HANDLE".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_printer_defines.svh".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_printer_defines.svh, line 399, col 8: Unused macro argument "KEY".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_tlm_defines.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/tlm1/uvm_tlm_imps.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_sequence_defines.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_callback_defines.svh".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_callback_defines.svh, line 294, col 8: Unused macro argument "CB".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_callback_defines.svh, line 294, col 8: Unused macro argument "OPER".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_callback_defines.svh, line 295, col 8: Unused macro argument "CB".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_callback_defines.svh, line 295, col 8: Unused macro argument "OBJ".

[WARNI:PP0113] ../../../UVM/uvm-1.2/src/macros/uvm_callback_defines.svh, line 295, col 8: Unused macro argument "OPER".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_reg_defines.svh".

[INFO :PP0123] Processing include file "../../../UVM/uvm-1.2/src/macros/uvm_deprecated_defines.svh".

[INFO :PP0123] Processing include file "amiq_apb_if.sv".

[INFO :PP0123] Processing include file "amiq_svaunit_ex_simple_test_sequence.sv".

[INFO :PP0123] Processing include file "amiq_svaunit_ex_simple_test_head_sequence.sv".

[INFO :PP0123] Processing include file "amiq_svaunit_ex_simple_test_unit.sv".

[INFO :PP0123] Processing include file "amiq_svaunit_ex_simple_test_with_parameter.sv".

[INFO :PP0123] Processing include file "amiq_svaunit_ex_simple_test_suite.sv".

[INFO :PP0123] Processing include file "../../../UVM/svunit_base/../svaunit/sv/svaunit_defines.svh".

[INFO :PP0122] Processing source file "an_interface.sv".

[INFO :PP0122] Processing source file "apb_top.sv".

[INFO :PA0200] Processing source file "testbench.sv".

[INFO :PA0200] Processing source file "design.sv".

[INFO :PA0200] Processing source file "an_interface.sv".

/usr/include/c++/5/debug/safe_iterator.h:331:error: attempt to increment a 
    singular iterator.

Objects involved in the operation:
iterator "this" @ 0x0x7ff	bd4d96580 {
type = N11__gnu_debug14_Safe_iteratorIN9__gnu_cxx17__normal_iteratorIPKN6antlr44misc8IntervalENSt9__cxx19986vectorIS5_SaIS5_EEEEENSt7__debug6vectorIS5_SA_EEEE (constant iterator);
  state = singular;
  references sequence with type `NSt7__debug6vectorIN6antlr44misc8IntervalESaIS3_EEE' @ 0x0x60f0000a6148
}
Command terminated by signal 6
156.43user 0.79system 2:29.32elapsed 105%CPU (0avgtext+0avgdata 1049424maxresident)k
27840inputs+2248outputs (111major+321116minor)pagefaults 0swaps
