[llvm] r229584 - We require MSVC 2013 Update 4 due to previous versions miscompiling ASTMatchers

Filipe Cabecinhas me at filcab.net
Tue Feb 17 16:40:06 PST 2015


ASTMatchers tests broke over the weekend due to a silent miscompile, as far
as we could understand.

Could you run check-clang and have it work, before this commit?

When committing, I figured it was a small change, so there shouldn't be big
problems, but after committing I figured there might be people who wouldn't
be ready, and I hadn't given a heads up. I then figured I would wait and
see if someone complained, either way.

If you want to, I can revert this patch, but this might prompt people to
try to chase weird MSVC miscompilations. If we revert it we should probably
make it so that llvm/clang compile and run tests on earlier revisions
though, and actually support point-releases (and document which ones are
supported), which doesn't seem feasible to me (we have enough “problems”
supporting major releases, sometimes).

Let me know if you still want me to revert it, though.

  Filipe

On Tue, Feb 17, 2015 at 4:29 PM, Kaylor, Andrew <andrew.kaylor at intel.com>
wrote:

> This is a fairly painful change for me.
>
> I didn't really mind the idea of not being able to build with MSVC 2012
> because it's three years old or so.  MSVC 2013 Update 4, on the other hand,
> is more like 3 months old.  Granted it's still readily available, but it
> hasn't made its way through the lab systems here yet and I suspect I'm not
> alone in experiencing this.
>
> I'm not sure what the issue is.  This morning I could build just fine.
> Now this afternoon, I can't because CMake thinks my compiler is too old.
>
> What is the issue with ASTMatchers on earlier versions of MSVC?  Is it
> something that was just exposed by a recent commit?  I hadn't noticed a
> problem.
>
> -Andy
>
>
> -----Original Message-----
> From: llvm-commits-bounces at cs.uiuc.edu [mailto:
> llvm-commits-bounces at cs.uiuc.edu] On Behalf Of Filipe Cabecinhas
> Sent: Tuesday, February 17, 2015 3:29 PM
> To: llvm-commits at cs.uiuc.edu
> Subject: [llvm] r229584 - We require MSVC 2013 Update 4 due to previous
> versions miscompiling ASTMatchers
>
> Author: filcab
> Date: Tue Feb 17 17:29:00 2015
> New Revision: 229584
>
> URL: http://llvm.org/viewvc/llvm-project?rev=229584&view=rev
> Log:
> We require MSVC 2013 Update 4 due to previous versions miscompiling
> ASTMatchers
>
> Previous versions of MSVC 2013 would miscompile ASTMatchers (and/or their
> tests). Bump up the requirement and make sure we know about the minor
> revision.
>
> Minimum required version found by Michael Edwards!
>
> Modified:
>     llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
>
> Modified: llvm/trunk/cmake/modules/HandleLLVMOptions.cmake
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/modules/HandleLLVMOptions.cmake?rev=229584&r1=229583&r2=229584&view=diff
>
> ==============================================================================
> --- llvm/trunk/cmake/modules/HandleLLVMOptions.cmake (original)
> +++ llvm/trunk/cmake/modules/HandleLLVMOptions.cmake Tue Feb 17 17:29:00
> +++ 2015
> @@ -41,8 +41,8 @@ int main() { return (float)x; }"
>        set(CMAKE_REQUIRED_LIBRARIES ${OLD_CMAKE_REQUIRED_LIBRARIES})
>      endif()
>    elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
> -    if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 18.0)
> -      message(FATAL_ERROR "Host Visual Studio must be at least 2013 (MSVC
> 18.0)")
> +    if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 18.0.31101)
> +      message(FATAL_ERROR "Host Visual Studio must be at least 2013
> + Update 4 (MSVC 18.0.31101)")
>      endif()
>    endif()
>  endif()
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150217/128ff592/attachment.html>


More information about the llvm-commits mailing list