; VSL LLVM IR. v1.0
source_filename = "#filename"
; @0 char* = c-string
; @1 int = length
@class.String = type { i8*, i32 }
define i32 @main(i32, i8**) {
entry:
%.args = alloca @class.String, i32 %0, align 16
%i1 = alloca i32, align 4
jp at1
r1:
%i5 = load i32, i32* %i1, align 4
;String*[i32: index, %i5][i32 1: length]
%i6 = getelementptr inbounds @class.String, @class.String* %.args, i64 %i5, i32 1
%i7 = <somehow calculate sizeof the char>
store i32 %i7, i32 %i6, align 8