dolphin/Source/Core/Common
Phil Christensen 2ed61b0ee1 C++ conformance fixes (MSVC /permissive-)
We (the Microsoft C++ team) use the dolphin project as part of our "Real world code" tests.
I noticed a few issues in windows specific code when building dolphin with the MSVC compiler
in its conformance mode (/permissive-).  For more information on /permissive- see our blog
https://blogs.msdn.microsoft.com/vcblog/2016/11/16/permissive-switch/.

These changes are to address 3 different types of issues:

1) Use of qualified names in member declarations

    struct A {
        void A::f() { } // error C4596: illegal qualified name in member declaration
                        // remove redundant 'A::' to fix
    };

2) Binding a non-const reference to a temporary

    struct S{};
  
    // If arg is in 'in' parameter, then it should be made const.
    void func(S& arg){}
  
    int main() {
      //error C2664: 'void func(S &)': cannot convert argument 1 from 'S' to 'S &'
      //note: A non-const reference may only be bound to an lvalue
      func( S() );
   
      //Work around this by creating a local, and using it to call the function
      S s;
      func( s );
    }

3) Add missing #include <intrin.h>

Because of the workaround you are using in the code you will need to include
this.  This is because of changes in the libraries and not /permissive-
2017-02-15 20:37:04 -08:00
..
Crypto
GL Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
Logging IOS: Re-implement USB_HIDv4 (/dev/usb/hid) 2017-02-05 11:36:49 +01:00
Align.h Common: Add alignment header 2016-12-06 20:33:53 +01:00
Analytics.cpp
Analytics.h
Arm64Emitter.cpp JitArm64: Optimize GPR register push/pop. 2017-02-11 00:59:12 +01:00
Arm64Emitter.h JitArm64: Implement divwx 2016-10-29 13:35:23 +02:00
ArmCommon.h
ArmCPUDetect.cpp
Assert.h
Atomic_GCC.h
Atomic_Win32.h Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
Atomic.h
BitField.h
BitField.natvis
BitSet.h
BitUtils.h Common: Add bit utility header 2017-01-14 11:16:02 -05:00
BlockingLoop.h BlockingLoop: Yield to UI message pump while waiting. 2016-11-11 13:37:02 +01:00
CDUtils.cpp
CDUtils.h
ChunkFile.h Fix ChunkFile for std::set 2017-01-14 19:00:19 +01:00
CMakeLists.txt Use a single libusb context 2017-02-05 11:36:48 +01:00
CodeBlock.h CodeBlock: Const correctness for IsInSpace 2017-01-08 18:40:09 -05:00
ColorUtil.cpp ColorUtil: Make decodeCI8image's pal parameter const 2017-01-13 17:07:26 -05:00
ColorUtil.h ColorUtil: Make decodeCI8image's pal parameter const 2017-01-13 17:07:26 -05:00
Common.h DolphinWX: Remove HAVE_WX preprocessor define 2017-01-24 05:48:08 +01:00
Common.vcxproj Use a single libusb context 2017-02-05 11:36:48 +01:00
Common.vcxproj.filters Use a single libusb context 2017-02-05 11:36:48 +01:00
CommonFuncs.h Don't use generic byteswapping on Android 2017-01-06 13:56:53 +01:00
CommonPaths.h Copy Wii save for current game for Netplay and TAS 2017-02-05 13:17:05 -05:00
CommonTypes.h
CPUDetect.h
DebugInterface.h DebugInterface: Make GetRawMemoryString return a std::string 2016-10-07 10:26:26 -04:00
ENetUtil.cpp
ENetUtil.h
Event.h
FifoQueue.h
FileSearch.cpp
FileSearch.h
FileUtil.cpp Copy Wii save for current game for Netplay and TAS 2017-02-05 13:17:05 -05:00
FileUtil.h Copy Wii save for current game for Netplay and TAS 2017-02-05 13:17:05 -05:00
FixedSizeQueue.h
Flag.h
FPURoundMode.h
GekkoDisassembler.cpp Add precision about the names of r1, r2 and r13 for the register view 2016-11-02 01:13:00 -04:00
GekkoDisassembler.h
GenericCPUDetect.cpp
GenericFPURoundMode.cpp
Hash.cpp
Hash.h
IniFile.cpp Translate Swedish in example strings to English 2017-02-04 22:51:01 +01:00
IniFile.h
Intrinsics.h
JitRegister.cpp
JitRegister.h
LibusbContext.cpp Notify user that USB won't work if libusb init fails 2017-02-07 00:47:21 +01:00
LibusbContext.h Use a single libusb context 2017-02-05 11:36:48 +01:00
LinearDiskCache.h
make_scmrev.h.js
MathUtil.cpp specify custom brace style to fix unions 2017-01-05 12:55:13 +01:00
MathUtil.h C++ conformance fixes (MSVC /permissive-) 2017-02-15 20:37:04 -08:00
MD5.cpp
MD5.h
MemArena.cpp
MemArena.h
MemoryUtil.cpp Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
MemoryUtil.h
Misc.cpp Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
MsgHandler.cpp Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
MsgHandler.h
NandPaths.cpp Remove pre-generated SYSCONF 2017-01-12 21:30:11 +01:00
NandPaths.h Remove pre-generated SYSCONF 2017-01-12 21:30:11 +01:00
Network.cpp Common: Namespace Network.h/.cpp 2017-01-17 20:46:48 -05:00
Network.h Common: Namespace Network.h/.cpp 2017-01-17 20:46:48 -05:00
NonCopyable.h
PcapFile.cpp
PcapFile.h
PerformanceCounter.cpp
PerformanceCounter.h
Profiler.cpp Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
Profiler.h
scmrev.h.in CMake: use configure_file to generate scmrev.h 2017-02-05 22:26:49 -08:00
SCMRevGen.vcxproj
ScopeGuard.h
SDCardUtil.cpp Core: Remove double newlines at the end of *_LOG messages. 2016-11-02 02:09:33 +00:00
SDCardUtil.h
Semaphore.h
SettingsHandler.cpp SettingsHandler: Make GenerateSerialNumber static 2017-01-27 10:29:57 -05:00
SettingsHandler.h SettingsHandler: Make GenerateSerialNumber static 2017-01-27 10:29:57 -05:00
StringUtil.cpp Translate Swedish in example strings to English 2017-02-04 22:51:01 +01:00
StringUtil.h Import/Export signature files as CSV 2016-12-18 00:27:10 +00:00
SymbolDB.cpp SymbolDB: Use set to map hash with symbols 2016-12-19 21:03:29 +00:00
SymbolDB.h SymbolDB: Use set to map hash with symbols 2016-12-19 21:03:29 +00:00
SysConf.cpp Remove pre-generated SYSCONF 2017-01-12 21:30:11 +01:00
SysConf.h Remove pre-generated SYSCONF 2017-01-12 21:30:11 +01:00
Thread.cpp Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
Thread.h
Timer.cpp Add includes for building on Windows without PCH 2017-01-23 01:37:41 -08:00
Timer.h
TraversalClient.cpp
TraversalClient.h
TraversalProto.h specify custom brace style to fix unions 2017-01-05 12:55:13 +01:00
TraversalServer.cpp
ucrtFreadWorkaround.cpp
Version.cpp
x64ABI.cpp
x64ABI.h
x64CPUDetect.cpp Fix missing includes 2017-01-24 03:31:51 +01:00
x64Emitter.cpp Jit64: Enable branch following. 2017-01-28 02:48:56 +01:00
x64Emitter.h Jit64: Enable branch following. 2017-01-28 02:48:56 +01:00
x64FPURoundMode.cpp
x64Reg.h