From fd9fa038a97523ed2e37704057b89bc14b58dba4 Mon Sep 17 00:00:00 2001 From: Ayke van Laethem Date: Thu, 6 Sep 2018 10:37:00 +0200 Subject: [PATCH] compiler: fix make([]T, ...) type --- compiler.go | 1 + 1 file changed, 1 insertion(+) diff --git a/compiler.go b/compiler.go index 4036062a..07270501 100644 --- a/compiler.go +++ b/compiler.go @@ -2118,6 +2118,7 @@ func (c *Compiler) parseExpr(frame *Frame, expr ssa.Value) (llvm.Value, error) { } sliceSize := c.builder.CreateBinOp(llvm.Mul, elemSizeValue, sliceCapCast, "makeslice.cap") slicePtr := c.builder.CreateCall(c.allocFunc, []llvm.Value{sliceSize}, "makeslice.buf") + slicePtr = c.builder.CreateBitCast(slicePtr, llvm.PointerType(llvmElemType, 0), "makeslice.array") // Create the slice. slice := llvm.ConstStruct([]llvm.Value{