New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix compilation with VS2017 (v141 build tools) #4546
Conversation
Just wondering... My VS2017 compiles RPCS3 without any problems. |
not for me, without my fix by clienthax compile not works |
hmm.. maybe it's because I use 2017.7? What version are you on? I think I also had this issue on 2017.6 edit: not with the 2015 build tools (v140(?)). |
some people on discord had narrowing conversation compilation errors in PPUAnalyser.cpp file. |
btw I have VS2017 community 15.7.1 with v141 tools |
@Megamouse It fixes it for me (with upgraded projects), people would have to manually update the llvm-build, glsl-build and Vulkan-build though to use "Visual Studio 15 2017" instead of 2015 (unless this is also changed). @elad335 I think that's where the VS said the error was for me as well, but it was when instantiating this struct. |
well. all I did was install VS17, opened the project, rebuilt the submodules and rpcs3 |
@Morten242 you need to change the appveyor .yml file to use visual studio 2017 |
So.. was this the only thing preventing RPCS3 from using v141 build tools? Should making a full transfer to v141 build tools be a separate change from this? |
I would hope for dropping MSVC completely instead (using clang) |
Dropping MSVC is bad idea, but very need bump project on 2017 same other all, 2015 is obsolete actually, no updated after Update 3, 2017 get update frequently |
@Zangetsu38 why is dropping MSVC a bad idea? |
@Nekotekina need to drop VS solutions as project files as well then, moving completely to CMake. Though there is no proper support for Clang on Windows there IRC (only clang-cl compatibility driver). |
We will lose debugging functionality. Like setting one single file to build without optimizations while the rest of the emu is built in release mode. It (cmake) works well enough for building, but debugging with msvc mighy become a bit harder. |
So yes, drop him is very bad idea, and use cmake not change this problem compile with VS2017, and clang not exist for Windows so no. |
I don't think there would be a problem to improve the Visual Studio 2017 compatibility as long as we keep the "official" compatibility with VS2015. Is it possible with these changes? Improvements with the build system will come (I am interested by it at least), step by step and I will try to make all users/developers happy with the changes. |
@scribam yeah, this was my intent with the patch. I've made these changes 2-3 times in the past when compiling with the v141 build tools (I don't have any reason to install the v140 build tools) and figured I might as well push it upstream. |
This is most likely compiler bug. I would like someone at least report it to the MS (I don't have account). |
@Nekotekina could be, yeah. I have a small repro for the error so I'll report it then |
for now not forget it not works on last VS2017 15.8, error on error_code if @Morten242 you can look on it |
I think @Nekotekina is already looking into it |
ah no idea, i have repoort first this issue but so i have no see news after :/ |
Just making the types explicit.