stefan your right that was it, thank you. I'm pretty sure i got it fixed with
this code. I realized i needed a continue in the if statements too.
proc sort_queue_properties(index:int): TableRef[uint32,string] =
result = newTable[uint32,string](queue_properties[index].queueCount.int)
for i in 0 .. <queue_properties[index].queueCount:
if (queue_properties[index].queueFlags and vkQueueGraphicsBit) == 1:
result.add(i,"vkQueueGraphicsBit")
continue
if (queue_properties[index].queueFlags and vkQueueComputeBit) == 1:
result.add(i,"vkQueueComputeBit")
continue
if (queue_properties[index].queueFlags and vkQueueTransferBit) == 1:
result.add(i,"vkQueueTransferBit")
continue
if (queue_properties[index].queueFlags and vkQueueSparseBindingBit) ==
1:
result.add(i,"vkQueueSparseBindingBit")
continue
else:
result.add(i,nil)
i will come back to this code later to fix the if statements for other
queueFlags