Revert "Revert "Fix the mac build.""

This reverts commit a8a167d6883e4acee42619e0bbfd811984f6e94d.
Also, workaround a clang 3.5 issue bug: 15319952

Change-Id: If2ec321d63d9484c21208339f66eb6a16b65bf74
10 files changed