On 2015-01-02 2:03 PM, Brian Smith wrote:
Ehsan wrote:
Note that MSVC 2012 is "supported" in the sense that we'd accept
patches that help fix it, and we won't check in patches that require
compiler features that 2012 does not support.
In this case, the problem is that I wrote a patch to explicitly delete
("= delete") some members of classes in mozilla::pkix. mozilla::pkix
cannot depend on MFBT for licensing and build independence reasons
(e.g. so it can be put into NSS). I don't want to add the equivalent
of MOZ_DELETE to mozilla::pkix just to make MSVC2012 work.
= delete currently cannot be used in Mozilla code according to
<https://developer.mozilla.org/en-US/docs/Using_CXX_in_Mozilla_code>. I
am not sure why you don't want to add the equivalent of MOZ_DELETE given
how easy that is. Our personal opinion about MSVC2012 aside, without a
decision to drop support for MSVC2012, we cannot say no to fixing the
build issues specific to that compiler, and such decision has not been
made so far.
It would be much easier to keep it running if there was at least one
builder that ran VS2012 that failed when someone checks in a compile
that breaks it. The non-zero cost is mostly fixing there regressions,
and would be much lower cost if they were caught earlier.
But what benefit would we get out of doing that? Keeping MSVC2012
working should not be a goal to itself. I can't think of what benefit
adding official support for MSVC2012 can have.
We shouldn't hold people to supporting MSVC2012 without a way to
verify that MSVC2012 can build the code correctly on tryserver. That
is, it is unreasonable to require that "we won't check in patches
that require compiler features that 2012 does not support" if MSVC2012
is not in tryserver. It's especially an unnecessary burden on us
independent contributors.
FWIW people fix compiler issues that cannot be tested on try server all
the time. It's OK if you don't want to do the work of fixing this
yourself, but it seems like you are arguing against fixing the issue
even if someone else provides a fix. Those are two separate matters. :-)
The best solution is to just drop MSVC2012 support and officially
allow features like "= delete" to be used from Gecko 37 onward.
I am personally in favor of dropping support for MSVC2012, but before we
do that, we should accept a fix for this particular issue.
I would be interested to see if anyone else has a good reason for us to
not drop support for MSVC2012.
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform