Compile time optimisation