Hi, I am compiling below code with c++1y flag with gcc 4.9. #include <stdio.h> register unsigned long sp asm ("sp"); int main() { printf("[%d] \n",((unsigned long)(sp) >= 5)); return 0; } I got the error as "Expected address of explicit register variable sp". Here, the error is coming from the expression (sp). But it is not coming when i use gcc4.9 without c++1y flag. gcc4.9 is mandatory to be used in my project. Please let me know, what is resolution for this ( any flags) or the reason for this in c++1y. Regards, Madan