Double underscores variable causes icc compile to crash

Hi,
this post was at http://root.cern.ch/phpBB2/viewtopic.php?t=1345, where i described a problem I had compiling root with Intel’s Icc compiler. It died at xrootd - I disabled xrootd and then the compile died at

icc -O -fPIC -wd1476 -Iinclude -wd1572 -pthread -o unix/src/TUnixSystem.o -c unix/src/TUnixSystem.cxx
/usr/include/netinet/in.h(482): error: invalid combination of type specifiers
extern int getipv4sourcefilter (int __s, struct in_addr __interface,
^

/usr/include/netinet/in.h(482): error: expected either a definition or a tag name
extern int getipv4sourcefilter (int __s, struct in_addr __interface,
^

/usr/include/netinet/in.h(488): error: invalid combination of type specifiers
extern int setipv4sourcefilter (int __s, struct in_addr __interface,
^

/usr/include/netinet/in.h(488): error: expected either a definition or a tag name
extern int setipv4sourcefilter (int __s, struct in_addr __interface,
^

/usr/include/netinet/in.h(496): error: invalid combination of type specifiers
extern int getsourcefilter (int __s, uint32_t __interface,
^

/usr/include/netinet/in.h(496): error: expected either a definition or a tag name
extern int getsourcefilter (int __s, uint32_t __interface,
^

/usr/include/netinet/in.h(503): error: invalid combination of type specifiers
extern int setsourcefilter (int __s, uint32_t __interface,
^

/usr/include/netinet/in.h(503): error: expected either a definition or a tag name
extern int setsourcefilter (int __s, uint32_t __interface,
^

compilation aborted for unix/src/TUnixSystem.cxx (code 2)
gmake: *** [unix/src/TUnixSystem.o] Error 2

I tracked this issue down on the Intel developers forum
softwareforums.intel.com/ids/boa … 2059#M2059
It seems that double underscore variables are reserved for the compiler, so they crash. I replaced “__interface” with “interface” in the file /usr/include/netinet/in.h and that solved the problem.

I think that they (Intel) are working on a proper fix, but in the meantime,

Thanks,
Bruce