The version of libstdc++6 in vivid comes from gcc-4.9 source. There has been an SRU of gccgo-4.9 to trusty, which requires it to build a gcc-4.9-base package, whose version number is higher in trusty than in vivid; and libstdc++6 requires the matching version of gcc-4.9-base. This prevents upgrading anything that depends on libstdc++6.
This problem is specific to upgrades between trusty and vivid; libstdc++6 in wily is built from gcc 5 so depends on gcc-5-base instead of gcc-4.9-base, removing the problem.
$ apt-cache policy gcc-4.9-base dpkg/status 9.2-10ubuntu13 0 us.archive. ubuntu. com/ubuntu/ vivid/main amd64 Packages
gcc-4.9-base:
Installed: 4.9.3-0ubuntu4
Candidate: 4.9.3-0ubuntu4
Version table:
*** 4.9.3-0ubuntu4 0
100 /var/lib/
4.
500 http://
$
The version of libstdc++6 in vivid comes from gcc-4.9 source. There has been an SRU of gccgo-4.9 to trusty, which requires it to build a gcc-4.9-base package, whose version number is higher in trusty than in vivid; and libstdc++6 requires the matching version of gcc-4.9-base. This prevents upgrading anything that depends on libstdc++6.
This problem is specific to upgrades between trusty and vivid; libstdc++6 in wily is built from gcc 5 so depends on gcc-5-base instead of gcc-4.9-base, removing the problem.