You have some old macros from mode-local lying around. Please make sure that
you have CEDET properly compiled, that means you did run 'make' and it finished succesfully
you don't also have CEDET installed through your system's package manager
you are loading CEDET right at the beginning of your init file
If all of this does not help, please post your problem to the CEDET-devel mailing list, together with the init file you are using.