Skip to content

Conversation

@dev-m03
Copy link

@dev-m03 dev-m03 commented Jan 25, 2026

This PR fixes a type-system inconsistency in the LLVM IR builder regarding string handling.

Previously, a STRING_TYPE was defined as a struct { i32, i8* }, but all actual string operations (concatenation, comparison, casts, puts, function arguments/returns) were already using plain i8*. This created a mismatch between the declared string type and the real IR being generated.

This PR removes the unused struct-based string type entirely and standardizes string representation across the entire IR builder to i8* (C-style null-terminated char pointer), which matches how the codebase already operates.

No behavior or logic was changed — only type consistency was fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant