[cpp] allow for 2 different types of places casts can be made
Merge branch 'development' of https://github.com/HaxeFoundation/haxe into development