mirror of
https://github.com/RGBCube/serenity
synced 2025-06-01 07:28:11 +00:00
Userland: Allow building SerenityOS with -funsigned-char
Some of the code assumed that chars were always signed while that is not the case on ARM hosts. Also, some of the code tried to use EOF (-1) in a way similar to what fgetc() does, however instead of storing the characters in an int variable a char was used. While this seemed to work it also meant that character 0xFF would be incorrectly seen as an end-of-file. Careful reading of fgetc() reveals that fgetc() stores character data in an int where valid characters are in the range of 0-255 and the EOF value is explicitly outside of that range (usually -1).
This commit is contained in:
parent
6ab48d612a
commit
d476144565
9 changed files with 20 additions and 13 deletions
|
@ -76,7 +76,7 @@ public:
|
|||
const auto& source() const { return m_source; }
|
||||
|
||||
private:
|
||||
ALWAYS_INLINE char peek(size_t offset = 0) const;
|
||||
ALWAYS_INLINE int peek(size_t offset = 0) const;
|
||||
ALWAYS_INLINE void consume();
|
||||
|
||||
StringView m_source {};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue