Skip to content

Commit

Permalink
evaluator: Make bitfield enums not decay to integers
Browse files Browse the repository at this point in the history
  • Loading branch information
WerWolv committed Jul 2, 2024
1 parent e2d62dc commit b020af2
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions lib/source/pl/core/ast/ast_node_rvalue.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,8 @@ namespace pl::core::ast {
literal = bool(bitfieldFieldPatternBoolean->readValue());
} else if (auto bitfieldFieldPatternSigned = dynamic_cast<ptrn::PatternBitfieldFieldSigned *>(pattern.get()); bitfieldFieldPatternSigned != nullptr) {
literal = hlp::signExtend(bitfieldFieldPatternSigned->getBitSize(), i128(bitfieldFieldPatternSigned->readValue()));
} else if (auto bitfieldFieldPatternEnum = dynamic_cast<ptrn::PatternBitfieldFieldEnum *>(pattern.get()); bitfieldFieldPatternEnum != nullptr) {
literal = pattern;
} else if (auto bitfieldFieldPattern = dynamic_cast<ptrn::PatternBitfieldField *>(pattern.get()); bitfieldFieldPattern != nullptr) {
literal = bitfieldFieldPattern->readValue();
} else {
Expand Down

0 comments on commit b020af2

Please sign in to comment.