That's a windows peculiarity. The platform installer creates a user PATH variable ‎with the location of cabal/bin but it is appended at the end of system's PATH by windows instead at the beginning. That's why the old cabal executable is always found first. 

Michal

From: Brandon Allbery
Sent: Saturday, November 29, 2014 8:55 AM
To: james@mansionfamily.plus.com
Cc: Haskell Cafe
Subject: Re: [Haskell-cafe] What's up on Win 8.1 64 bit, Haskell Platform?

On Sat, Nov 29, 2014 at 8:52 AM, james <james@mansionfamily.plus.com> wrote:
Why is cabal-install continuing to be confused about the version installed/available?

Because you are running the old one repeatedly, because your %PATH% does not include the location where cabal installs all programs including the updated version of itself.

--
brandon s allbery kf8nh                               sine nomine associates
allbery.b@gmail.com                                  ballbery@sinenomine.net
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net