This changes the ABI, so already compiled XS modules may no longer function.
Really? const modifiers affect only compile-time checking.Agreed, the const shouldn't affect anything in binary compatibility. Does anyone know to the contrary?
I was thinking C++, where it does make a difference.
00000000 T _Z2aPKi 0000003a T _Z2bPi 0000001e T _Z2ci
void a1 ( const int * x ) {
void b ( int * const x ) {
void c ( const int x ) {(Also, I meant the compiler level ABI - i.e. symbol naming - not the perl level of exported functions.)
But, since we're all C, most of the time, we're actually probably fine.
-R
