(Imported from upstream's 984a30423d70126ed1df30e4b52962398cdaa9b6.)
This change fixes a number of build warnings.
Initial fork from f2d678e6e89b6508147086610e985d4e8416e867 (1.0.2 beta). (This change contains substantial changes from the original and effectively starts a new history.)