{"action":"created","issue":{"url":"https://api.github.com/repos/richgel999/lzham_codec/issues/5","labels_url":"https://api.github.com/repos/richgel999/lzham_codec/issues/5/labels{/name}","comments_url":"https://api.github.com/repos/richgel999/lzham_codec/issues/5/comments","events_url":"https://api.github.com/repos/richgel999/lzham_codec/issues/5/events","html_url":"https://github.com/richgel999/lzham_codec/issues/5","id":56696623,"number":5,"title":"MinGW gcc-4.8.1 errors compiling the code","user":{"login":"biller23","id":1728580,"avatar_url":"https://avatars.githubusercontent.com/u/1728580?v=3","gravatar_id":"","url":"https://api.github.com/users/biller23","html_url":"https://github.com/biller23","followers_url":"https://api.github.com/users/biller23/followers","following_url":"https://api.github.com/users/biller23/following{/other_user}","gists_url":"https://api.github.com/users/biller23/gists{/gist_id}","starred_url":"https://api.github.com/users/biller23/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/biller23/subscriptions","organizations_url":"https://api.github.com/users/biller23/orgs","repos_url":"https://api.github.com/users/biller23/repos","events_url":"https://api.github.com/users/biller23/events{/privacy}","received_events_url":"https://api.github.com/users/biller23/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-02-05T16:52:19Z","updated_at":"2015-02-16T03:14:44Z","closed_at":null,"body":"[ 52%] Built target lzhamdecomp\r\nScanning dependencies of target lzhamcomp\r\n[ 57%] Building CXX object lzhamcomp/CMakeFiles/lzhamcomp.dir/lzham_lzbase.cpp.obj\r\n[ 61%] Building CXX object lzhamcomp/CMakeFiles/lzhamcomp.dir/lzham_lzcomp.cpp.obj\r\nIn file included from C:\\lzham_codec-master\\lzhamcomp\\lzham_threading.h:5:0,\r\n                 from C:\\lzham_codec-master\\lzhamcomp\\lzham_match_accel.h:5,\r\n                 from C:\\lzham_codec-master\\lzhamcomp\\lzham_lzcomp_internal.h:4,\r\n                 from C:\\lzham_codec-master\\lzhamcomp\\lzham_lzcomp.cpp:6:\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h: In constructor 'lzham::tsstack<T>::tsstack(bool)':\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h:72:43: error: there are no arguments to 'InitializeSListHead' that depend on a template parameter, so a declaration of 'InitializeSListHead' must be available [-fpermissive]\r\n          InitializeSListHead(&m_stack_head);\r\n                                           ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h:72:43: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h:73:46: error: there are no arguments to 'InitializeSListHead' that depend on a template parameter, so a declaration of 'InitializeSListHead' must be available [-fpermissive]\r\n          InitializeSListHead(&m_freelist_head);\r\n                                              ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h: In member function 'void lzham::tsstack<T>::clear()':\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h:85:72: error: there are no arguments to 'InterlockedPopEntrySList' that depend on a template parameter, so a declaration of 'InterlockedPopEntrySList' must be available [-fpermissive]\r\n             node* pNode = (node*)InterlockedPopEntrySList(&m_stack_head);\r\n                                                                        ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h: In member function 'void lzham::tsstack<T>::flush_freelist()':\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h:106:75: error: there are no arguments to 'InterlockedPopEntrySList' that depend on a template parameter, so a declaration of 'InterlockedPopEntrySList' must be available [-fpermissive]\r\n\r\n             node* pNode = (node*)InterlockedPopEntrySList(&m_freelist_head);\r\n                                                                           ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h: In member function 'bool lzham::tsstack<T>::pop(T&)':\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h:133:69: error: there are no arguments to 'InterlockedPopEntrySList' that depend on a template parameter, so a declaration of 'InterlockedPopEntrySList' must be available [-fpermissive]\r\n\r\n          node* pNode = (node*)InterlockedPopEntrySList(&m_stack_head);\r\n                                                                     ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h: In member function 'lzham::tsstack<T>::node* lzham::tsstack<T>::alloc_node()':\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_win32_threading.h:162:89: error: there are no arguments to 'InterlockedPopEntrySList' that depend on a template parameter, so a declaration of 'InterlockedPopEntrySList' must be available [-fpermissive]\r\n\r\n          node* pNode = m_use_freelist ? (node*)InterlockedPopEntrySList(&m_freelist_head) : NULL;\r\n                                                                                         ^\r\nIn file included from C:\\lzham_codec-master\\lzhamcomp\\lzham_lzcomp.cpp:3:0:\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_match_accel.h: At global scope:\r\nC:/lzham_codec-master/lzhamcomp/../lzhamdecomp/lzham_core.h:87:31: error: '__forceinline' does not name a type\r\n    #define LZHAM_FORCE_INLINE __forceinline\r\n                               ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_match_accel.h:76:7: note: in expansion of macro 'LZHAM_FORCE_INLINE'\r\n       LZHAM_FORCE_INLINE uint get_match_len(uint lookahead_ofs, int dist, uint max_match_len, uint start_match_len = 0) const\r\n       ^\r\nC:/lzham_codec-master/lzhamcomp/../lzhamdecomp/lzham_core.h:87:31: error: '__forceinline' does not name a type\r\n    #define LZHAM_FORCE_INLINE __forceinline\r\n                               ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_lzcomp_internal.h:362:10: note: in expansion of macro 'LZHAM_FORCE_INLINE'\r\n          LZHAM_FORCE_INLINE void clear()\r\n          ^\r\nC:/lzham_codec-master/lzhamcomp/../lzhamdecomp/lzham_core.h:87:31: error: '__forceinline' does not name a type\r\n    #define LZHAM_FORCE_INLINE __forceinline\r\n                               ^\r\nC:\\lzham_codec-master\\lzhamcomp\\lzham_lzcomp_internal.h:387:10: note: in expansion of macro 'LZHAM_FORCE_INLINE'\r\n          LZHAM_FORCE_INLINE void clear()\r\n          ^\r\nlzhamcomp\\CMakeFiles\\lzhamcomp.dir\\build.make:78: recipe for target 'lzhamcomp/CMakeFiles/lzhamcomp.dir/lzham_lzcomp.cpp.obj' failed"},"comment":{"url":"https://api.github.com/repos/richgel999/lzham_codec/issues/comments/74454953","html_url":"https://github.com/richgel999/lzham_codec/issues/5#issuecomment-74454953","issue_url":"https://api.github.com/repos/richgel999/lzham_codec/issues/5","id":74454953,"user":{"login":"richgel999","id":6934809,"avatar_url":"https://avatars.githubusercontent.com/u/6934809?v=3","gravatar_id":"","url":"https://api.github.com/users/richgel999","html_url":"https://github.com/richgel999","followers_url":"https://api.github.com/users/richgel999/followers","following_url":"https://api.github.com/users/richgel999/following{/other_user}","gists_url":"https://api.github.com/users/richgel999/gists{/gist_id}","starred_url":"https://api.github.com/users/richgel999/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/richgel999/subscriptions","organizations_url":"https://api.github.com/users/richgel999/orgs","repos_url":"https://api.github.com/users/richgel999/repos","events_url":"https://api.github.com/users/richgel999/events{/privacy}","received_events_url":"https://api.github.com/users/richgel999/received_events","type":"User","site_admin":false},"created_at":"2015-02-16T03:14:44Z","updated_at":"2015-02-16T03:14:44Z","body":"Thanks - after I release v1.1 I'll see if I can clean this up.\r\n\r\nFWIW, I've just successfully compiled lzham_codec_devel using tdm-gcc 4.6.1 x64. I used cmake to generate a CodeBlocks project file, after tweaking the lzhamcomp's CMakeLists.txt to use lzham_win32_threading.cpp/.h and got rid of pthread, and I modified lzhamtest to get rid of #define LZHAM_USE_LZHAM_DLL 1.\r\n\r\nI used this cmake command line:\r\n\r\ncmake . -G \"CodeBlocks - MinGW Makefiles\" -DCMAKE_C_COMPILER=\"C:/MinGW64/bin/gcc.exe\" -DCMAKE_MAKE_PROGRAM=\"C:/MinGW64/bin/mingw32-make.exe\" -DCMAKE_CXX_COMPILER=\"C:/MinGW64/bin/g++.exe\"\r\n\r\n\r\n"}}