-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Errors when trying to make #2598
Comments
Xcode 9 is not officially supported yet because it's a beta. If you use 8.3.3 (you'll see "Clang 8.1.0 detected") MAME builds and runs fine on Sierra. |
Thanks, now I get this error: PCH file built from a different branch ((clang-900.0.28.1)) than the How can I rectify this? |
'make clean' should clear things up. |
Dude Legend!!! Thanks so much |
For what it's worth: Xcode 9 will be released in a few weeks, and the issue is simple to patch: simply move the full definition of |
I don't think that's the right fix though - it doesn't actually need the definition of the type. It's just trying to print a pointer value, so |
Please try with 72869d5 - it should work around the issue. |
Without this change, running examples under XWayland, SDL and vulkan renderer results in a crash. Credit goes to @pezcode: bkaradzic/bgfx#2593 (comment)
I get the the following error on OS X Sierra:
Clang 9.0.0 detected
Compiling src/devices/machine/diablo_hd.cpp...
In file included from ../../../../../src/devices/machine/diablo_hd.cpp:1:
In file included from ../../../../../src/emu/emu.h:21:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/list:173:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:628:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1301:38: error: incomplete type
'hard_disk_file' used in type trait expression
: public integral_constant<bool, __is_abstract(_Tp)> {};
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:1374:39: note: in instantiation of template
class 'std::__1::is_abstract<hard_disk_file>' requested here
!is_abstract<_T2>::value> {};
^
In file included from ../../../../../src/devices/machine/diablo_hd.cpp:1:
In file included from ../../../../../src/emu/emu.h:29:
In file included from ../../../../../src/emu/emucore.h:38:
In file included from /mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/corestr.h:17:
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:961:98: note: in instantiation of template class
'std::__1::is_convertible<unsigned long long, hard_disk_file>' requested here
{ static constexpr bool value = is_non_const_ptr::value && is_unsigned_ptr::value && std::is_convertible<std::make_unsigned_t<std::str...
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:968:48: note: in instantiation of template class
'util::detail::format_store_integer<hard_disk_file *>::use_unsigned_cast<hard_disk_file *>' requested here
template static std::enable_if_t<use_unsigned_cast::value, bool> apply(U const &value, std::streamoff data)
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1032:3: note: while substituting deduced
template arguments into function template 'apply' [with U = hard_disk_file *]
format_store_integer::apply(*reinterpret_cast<T const *>(value), data);
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1007:31: note: in instantiation of function
template specialization 'util::detail::format_argument<util::basic_ovectorstream >::static_store_integer<hard_disk_file *>' requested here
, m_store_integer_function(&static_store_integer)
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1156:52: note: (skipping 1 context in backtrace;
use -ftemplate-backtrace-limit=0 to see all)
: std::array<format_argument, Count>({ { format_argument(std::forward(args))... } })
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1176:9: note: in instantiation of function
template specialization 'util::detail::format_argument_pack_impl<util::basic_ovectorstream, 2>::format_argument_pack_impl<char const (&)[36],
int &, hard_disk_file *&>' requested here
return format_argument_pack_impl<Stream, sizeof...(Params)>(std::forward(fmt), std::forward(args)...);
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1662:44: note: in instantiation of function
template specialization 'util::detail::make_format_argument_pack<util::basic_ovectorstream, char const (&)[36], int &, hard_disk_file *&>'
requested here
return detail::stream_format(str, detail::make_format_argument_pack(fmt, std::forward(args)...));
^
In file included from ../../../../../src/devices/machine/diablo_hd.cpp:1:
In file included from ../../../../../src/emu/emu.h:117:
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/emu/device.ipp:48:9: note: in instantiation of function template
specialization 'util::stream_format<util::basic_ovectorstream, char [36], int &, hard_disk_file *&>' requested here
util::stream_format(m_string_buffer, std::forward(fmt), std::forward(args)...);
^
../../../../../src/devices/machine/diablo_hd.cpp:123:3: note: in instantiation of function template specialization 'device_t::logerror<char const (&)[36],
int &, hard_disk_file *&>' requested here
logerror(std::forward(fmt), std::forward(args)...);
^
../../../../../src/devices/machine/diablo_hd.cpp:1363:2: note: in instantiation of function template specialization 'diablo_hd_device::logprintf<char const
(&)[36], int &, hard_disk_file *&>' requested here
LOG_DRIVE(0,"[DHD%u] m_disk : %p\n", m_unit, m_disk);
^
../../../../../src/devices/machine/diablo_hd.cpp:65:47: note: expanded from macro 'LOG_DRIVE'
#define LOG_DRIVE(...) do { if (DIABLO_DEBUG) logprintf(VA_ARGS); } while (0)
^
In file included from ../../../../../src/devices/machine/diablo_hd.cpp:7:
In file included from ../../../../../src/devices/machine/diablo_hd.h:12:
In file included from ../../../../../src/devices/imagedev/diablo.h:12:
../../../../../src/lib/util/harddisk.h:24:8: note: forward declaration of 'hard_disk_file'
struct hard_disk_file;
^
In file included from ../../../../../src/devices/machine/diablo_hd.cpp:1:
In file included from ../../../../../src/emu/emu.h:29:
In file included from ../../../../../src/emu/emucore.h:38:
In file included from /mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/corestr.h:17:
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1032:3: error: no matching function for call to
'apply'
format_store_integer::apply(*reinterpret_cast<T const *>(value), data);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1007:31: note: in instantiation of function
template specialization 'util::detail::format_argument<util::basic_ovectorstream >::static_store_integer<hard_disk_file *>' requested here
, m_store_integer_function(&static_store_integer)
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1156:52: note: in instantiation of function
template specialization 'util::detail::format_argument<util::basic_ovectorstream >::format_argument<hard_disk_file *>' requested here
: std::array<format_argument, Count>({ { format_argument(std::forward(args))... } })
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1176:9: note: in instantiation of function
template specialization 'util::detail::format_argument_pack_impl<util::basic_ovectorstream, 2>::format_argument_pack_impl<char const (&)[36],
int &, hard_disk_file *&>' requested here
return format_argument_pack_impl<Stream, sizeof...(Params)>(std::forward(fmt), std::forward(args)...);
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:1662:44: note: in instantiation of function
template specialization 'util::detail::make_format_argument_pack<util::basic_ovectorstream, char const (&)[36], int &, hard_disk_file *&>'
requested here
return detail::stream_format(str, detail::make_format_argument_pack(fmt, std::forward(args)...));
^
In file included from ../../../../../src/devices/machine/diablo_hd.cpp:1:
In file included from ../../../../../src/emu/emu.h:117:
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/emu/device.ipp:48:9: note: in instantiation of function template
specialization 'util::stream_format<util::basic_ovectorstream, char [36], int &, hard_disk_file *&>' requested here
util::stream_format(m_string_buffer, std::forward(fmt), std::forward(args)...);
^
../../../../../src/devices/machine/diablo_hd.cpp:123:3: note: in instantiation of function template specialization 'device_t::logerror<char const (&)[36],
int &, hard_disk_file *&>' requested here
logerror(std::forward(fmt), std::forward(args)...);
^
../../../../../src/devices/machine/diablo_hd.cpp:1363:2: note: in instantiation of function template specialization 'diablo_hd_device::logprintf<char const
(&)[36], int &, hard_disk_file *&>' requested here
LOG_DRIVE(0,"[DHD%u] m_disk : %p\n", m_unit, m_disk);
^
../../../../../src/devices/machine/diablo_hd.cpp:65:47: note: expanded from macro 'LOG_DRIVE'
#define LOG_DRIVE(...) do { if (DIABLO_DEBUG) logprintf(VA_ARGS); } while (0)
^
In file included from ../../../../../src/devices/machine/diablo_hd.cpp:1:
In file included from ../../../../../src/emu/emu.h:29:
In file included from ../../../../../src/emu/emucore.h:38:
In file included from /mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/corestr.h:17:
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:968:83: note: candidate template ignored:
substitution failure [with U = hard_disk_file *]
template static std::enable_if_t<use_unsigned_cast::value, bool> apply(U const &value, std::streamoff data)
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:973:81: note: candidate template ignored:
substitution failure [with U = hard_disk_file *]
template static std::enable_if_t<use_signed_cast::value, bool> apply(U const &value, std::streamoff data)
^
/mame/build/projects/sdl/mame/gmake-osx-clang/../../../../../src/lib/util/strformat.h:978:73: note: candidate template ignored:
substitution failure [with U = hard_disk_file *]
template static std::enable_if_t<disable::value, bool> apply(U const &value, std::streamoff data)
^
2 errors generated.
make[2]: *** [../../../../osx_clang/obj/x64/Release/src/devices/machine/diablo_hd.o] Error 1
make[1]: *** [optional] Error 2
make: *** [macosx_x64_clang] Error 2
The text was updated successfully, but these errors were encountered: