Understanding code containing preprocessor constructs | IEEE Conference Publication | IEEE Xplore