This fixes defects as follows: 1. handleLvalue could be called on a non-L-value, and it shouldn't be. 2. HLSL allows unary negation on non-bool values. TUnaryOperator::promote can now promote other types (e.g, int, float) to bool for this op. 3. HLSL allows binary logical operations (&&, ||) on arbitrary types, similar (2). 4. HLSL allows mod operation on arbitrary types, which will be promoted. E.g, int % float -> float % float.
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| CMakeLists.txt | Loading commit data... | |
| hlslGrammar.cpp | Loading commit data... | |
| hlslGrammar.h | Loading commit data... | |
| hlslOpMap.cpp | Loading commit data... | |
| hlslOpMap.h | Loading commit data... | |
| hlslParseHelper.cpp | Loading commit data... | |
| hlslParseHelper.h | Loading commit data... | |
| hlslParseables.cpp | Loading commit data... | |
| hlslParseables.h | Loading commit data... | |
| hlslScanContext.cpp | Loading commit data... | |
| hlslScanContext.h | Loading commit data... | |
| hlslTokenStream.cpp | Loading commit data... | |
| hlslTokenStream.h | Loading commit data... | |
| hlslTokens.h | Loading commit data... |