Generator now adds null terminator to c-strings
This commit is contained in:
parent
37819645cd
commit
c5a61e15f6
@ -90,7 +90,7 @@ func (this *generator) generateLiteralArrayLoc (literal *entity.LiteralArray) (l
|
|||||||
func (this *generator) generateLiteralStringLoc (literal *entity.LiteralString) (llvm.Value, error) {
|
func (this *generator) generateLiteralStringLoc (literal *entity.LiteralString) (llvm.Value, error) {
|
||||||
base := analyzer.ReduceToBase(literal.Type())
|
base := analyzer.ReduceToBase(literal.Type())
|
||||||
|
|
||||||
makeData := func (anyElementType entity.Type) (llvm.Value, int64, error) {
|
makeData := func (anyElementType entity.Type, cstring bool) (llvm.Value, int64, error) {
|
||||||
elementType, ok := analyzer.ReduceToBase(anyElementType).(*entity.TypeInt)
|
elementType, ok := analyzer.ReduceToBase(anyElementType).(*entity.TypeInt)
|
||||||
if !ok {
|
if !ok {
|
||||||
return nil, 0, errors.New(fmt.Sprintln("string can't be used as ", base))
|
return nil, 0, errors.New(fmt.Sprintln("string can't be used as ", base))
|
||||||