removed todo comment and added test

This commit is contained in:
Jimmi Holst Christensen 2019-04-06 11:04:55 +02:00
parent 3109c89850
commit 65cf5a8e44
2 changed files with 6 additions and 3 deletions

View File

@ -16309,9 +16309,6 @@ static IrInstruction *ir_analyze_instruction_to_ptr_type(IrAnalyze *ira,
ZigType *ptr_type;
if (type_entry->id == ZigTypeIdArray) {
// TODO: Allow capturing pointer to const array.
// const a = "123"; for (a) |*c| continue;
// error: expected type '*u8', found '*const u8'
ptr_type = get_pointer_to_type(ira->codegen, type_entry->data.array.child_type, ptr_ptr_type->data.pointer.is_const);
} else if (is_array_ref(type_entry)) {
ptr_type = get_pointer_to_type(ira->codegen,

View File

@ -27,7 +27,13 @@ test "for loop with pointer elem var" {
mem.copy(u8, target[0..], source);
mangleString(target[0..]);
expect(mem.eql(u8, target, "bcdefgh"));
for (source) |*c, i|
expect(@typeOf(c) == *const u8);
for (target) |*c, i|
expect(@typeOf(c) == *u8);
}
fn mangleString(s: []u8) void {
for (s) |*c| {
c.* += 1;