Quote:
The operator precedence was changed so that expressions like mystruct.array[123] need no parentheses anymore.

I have to say: thanks! While i complained a lot about the last couple of years(and this was definetly on my list) it's good to see this quirk being fixed(i know ffor the compiler it's no quirk, but compared to other compilers) laugh

Quote:
The ifelse function is a more convenient substitute for the C ?: operator than if..else.


That's quite usefull. Is it implemented by the compiler directly or as "normal" function with normal parameters? A small note in the manual for the difference between IFELSE(function) and the C ?: operator at runtime might be usefull for beginners in this case.

The difference occurs for example in this case:

Lite-C
Code:
x = IfElse(A==B, GetMyValX(), GetMyValY());


C
Code:
x = (A==B) ? GetMyValX() : GetMyValY();(



The difference is:
In Lite-C it will always call both functions to push their result as parameters. In C only the evaluated path is executed, which means only one function is called, which results in way less overhead. So if both functions are quite expensive, it's better to restructure the code to use a normal if. Assuming IFELSE is "just" a function.

Last edited by Rackscha; 08/11/15 10:06.

MY Website with news of my projects:
(for example my current
Muliplayer Bomberman,
GenesisPrecompiler for LiteC
and TileMaster, an easy to use Tile editor)
Sparetime-Development