Milos Tijanic

Results 13 issues of Milos Tijanic

We hit a rare null deref on `y_offset` in `nk_group_scrolled_offset_begin()`, that I think happens like this: ```C // snippet from nk_group_begin_titled() x_offset = nk_find_value(win, id_hash); if (!x_offset) { x_offset =...

Right now it just gives you back a strref for the first error it finds, or 0 if it compiled successfully. CScriptCompiler should be able to give a list of...

I don't know why this was disabled originally. Needs more testing before merging, leaving here as a WIP so others can test too. ## Testing Test suite, plus disassembly. More...

Just code cleanup, we have a lot of cases such as: ```c++ // Add the case statement to the list. if (m_nSwitchLabelNumber >= m_nSwitchLabelArraySize) { int32_t *pNewIntArray = new int32_t[m_nSwitchLabelArraySize...

```c++ class CScriptParseTreeNode { ... CExoString *m_psStringData; ... CExoString *m_psTypeName; ... ``` There's really no need for these to be pointers that are then nullchecked and realloced everywhere. Just embed...

As done with `EmitModifyStackPointer()`. There's about 90 such cases left, and some 40 different opcodes. Stuff like add/sub/mul/div/etc can probably all go into the same function though. Whatever ends up...

Sample script ```nss void main() { if (1) { string s = "AAA"; } } ``` gets compiled down to ``` 0 JSR, 8 6 RET 8 CONSTANT, TYPE_INTEGER, 1...

enhancement

Currently, the for loop syntax is ``` for (expression_opt; expression_opt; expression_opt) statement ``` , but it should be ``` for (statement; expression_opt; expression_opt) statement ``` Specifically, this should be possible...

Simplifies (and speeds up) hooking custom build steps such as a preprocessor. Also would help if ncs can be emitted to stdout for a custom postprocessing step, but I figure...

Unary operator (like `~` or `!`) defined for all stock types as producing a string. e.g.: ```nss int n = 3; string s1 = $n; // s == "3" vector...