1 /* We used to get '##' wrong for the kernel. 2 * 3 * It could possibly be argued that the kernel usage is undefined (since the 4 * different sides of the '##' are not proper tokens), but we try to do it 5 * right anyway. 6 * 7 * We used to break up the "003d" into two tokens ('003' and 'd') and then put 8 * the 'o' marker to mark the token 003 as an octal number, resulting in: 9 * 10 * static char __vendorstr_o03 d [ ] __devinitdata = "Lockheed Martin-Marietta Corp"; 11 * 12 * which didn't work, of course. 13 */ 14 15 #define __devinitdata __attribute__((section(".devinit"))) 16 17 #define VENDOR( vendor, name ) \ 18 static char __vendorstr_##vendor[] __devinitdata = name; 19 VENDOR(003d,"Lockheed Martin-Marietta Corp") 20 21 /* 22 * check-name: Preprocessor #6 23 * check-command: sparse -E $file 24 * 25 * check-output-start 26 27 static char __vendorstr_003d[] __attribute__((section(".devinit"))) = "Lockheed Martin-Marietta Corp"; 28 * check-output-end 29 */ 30