It works with xHarbour. You can try and see. In xHarbour, an array index can be -ve. This is not allowed in Harbour. Example: aData := { 1,2,3,4,5,6 } In xharbour: ? aData[ -1 ] // 6 ? aData[ -2 ] // 5 But this usage raises runtime error in Harbour. To work with Harbour, we need to change aData[ -1 ...