Implement printing of booleans
Этот коммит содержится в:
родитель
a30ffa5c1e
коммит
2777f8464e
2 изменённых файлов: 10 добавлений и 1 удалений
|
@ -1008,7 +1008,8 @@ func (c *Compiler) parseBuiltin(frame *Frame, args []ssa.Value, callName string)
|
||||||
panic("undefined: " + name)
|
panic("undefined: " + name)
|
||||||
}
|
}
|
||||||
c.builder.CreateCall(fn, []llvm.Value{value}, "")
|
c.builder.CreateCall(fn, []llvm.Value{value}, "")
|
||||||
continue
|
} else if typ.Kind() == types.Bool {
|
||||||
|
c.builder.CreateCall(c.mod.NamedFunction("runtime.printbool"), []llvm.Value{value}, "")
|
||||||
} else {
|
} else {
|
||||||
return llvm.Value{}, errors.New("unknown basic arg type: " + typ.String())
|
return llvm.Value{}, errors.New("unknown basic arg type: " + typ.String())
|
||||||
}
|
}
|
||||||
|
|
|
@ -101,3 +101,11 @@ func printptr(ptr uintptr) {
|
||||||
ptr <<= 4
|
ptr <<= 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func printbool(b bool) {
|
||||||
|
if b {
|
||||||
|
printstring("true")
|
||||||
|
} else {
|
||||||
|
printstring("false")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче