Wal-Mart earnings fall on weak US holiday shopping