casting pointers.
preparing for merge
Merge branch 'master' of https://github.com/wzhliang/sillyc