Compilation fix 5

This commit is contained in:
Nekotekina 2014-09-02 01:41:36 +04:00
parent 73555c1df1
commit 51ea1e3bed
3 changed files with 9 additions and 9 deletions

View file

@ -61,25 +61,25 @@ namespace vm
//BE reference to LE data //BE reference to LE data
template<typename T, typename AT = u32> struct brefl : public _ref_base<T, typename to_be_t<AT>::type> template<typename T, typename AT = u32> struct brefl : public _ref_base<T, typename to_be_t<AT>::type>
{ {
using _ref_base::operator=; using _ref_base<T, typename to_be_t<AT>::type>::operator=;
}; };
//BE reference to BE data //BE reference to BE data
template<typename T, typename AT = u32> struct brefb : public _ref_base<typename to_be_t<T>::type, typename to_be_t<AT>::type> template<typename T, typename AT = u32> struct brefb : public _ref_base<typename to_be_t<T>::type, typename to_be_t<AT>::type>
{ {
using _ref_base::operator=; using _ref_base<typename to_be_t<T>::type, typename to_be_t<AT>::type>::operator=;
}; };
//LE reference to BE data //LE reference to BE data
template<typename T, typename AT = u32> struct lrefb : public _ref_base<typename to_be_t<T>::type, AT> template<typename T, typename AT = u32> struct lrefb : public _ref_base<typename to_be_t<T>::type, AT>
{ {
using _ref_base::operator=; using _ref_base<typename to_be_t<T>::type, AT>::operator=;
}; };
//LE reference to LE data //LE reference to LE data
template<typename T, typename AT = u32> struct lrefl : public _ref_base<T, AT> template<typename T, typename AT = u32> struct lrefl : public _ref_base<T, AT>
{ {
using _ref_base::operator=; using _ref_base<T, AT>::operator=;
}; };
namespace ps3 namespace ps3
@ -87,13 +87,13 @@ namespace vm
//default reference for HLE functions (LE reference to BE data) //default reference for HLE functions (LE reference to BE data)
template<typename T, typename AT = u32> struct ref : public lrefb<T, AT> template<typename T, typename AT = u32> struct ref : public lrefb<T, AT>
{ {
using _ref_base::operator=; using lrefb<T, AT>::operator=;
}; };
//default reference for HLE structures (BE reference to BE data) //default reference for HLE structures (BE reference to BE data)
template<typename T, typename AT = u32> struct bref : public brefb<T, AT> template<typename T, typename AT = u32> struct bref : public brefb<T, AT>
{ {
using _ref_base::operator=; using brefb<T, AT>::operator=;
}; };
} }

View file

@ -11,7 +11,7 @@
SysCallBase sys_semaphore("sys_semaphore"); SysCallBase sys_semaphore("sys_semaphore");
s32 sys_semaphore_create(vm::ptr<be_t<u32>> sem, mem_ptr_t<sys_semaphore_attribute> attr, int initial_count, int max_count) s32 sys_semaphore_create(vm::ref<u32> sem, mem_ptr_t<sys_semaphore_attribute> attr, int initial_count, int max_count)
{ {
sys_semaphore.Warning("sys_semaphore_create(sem_addr=0x%x, attr_addr=0x%x, initial_count=%d, max_count=%d)", sys_semaphore.Warning("sys_semaphore_create(sem_addr=0x%x, attr_addr=0x%x, initial_count=%d, max_count=%d)",
sem.addr(), attr.GetAddr(), initial_count, max_count); sem.addr(), attr.GetAddr(), initial_count, max_count);
@ -38,7 +38,7 @@ s32 sys_semaphore_create(vm::ptr<be_t<u32>> sem, mem_ptr_t<sys_semaphore_attribu
} }
u32 id = sys_semaphore.GetNewId(new Semaphore(initial_count, max_count, attr->protocol, attr->name_u64), TYPE_SEMAPHORE); u32 id = sys_semaphore.GetNewId(new Semaphore(initial_count, max_count, attr->protocol, attr->name_u64), TYPE_SEMAPHORE);
*sem = id; sem = id;
sys_semaphore.Notice("*** semaphore created [%s] (protocol=0x%x): id = %d", sys_semaphore.Notice("*** semaphore created [%s] (protocol=0x%x): id = %d",
std::string(attr->name, 8).c_str(), (u32)attr->protocol, id); std::string(attr->name, 8).c_str(), (u32)attr->protocol, id);

View file

@ -38,7 +38,7 @@ struct Semaphore
}; };
// SysCalls // SysCalls
s32 sys_semaphore_create(vm::ptr<be_t<u32>> sem, mem_ptr_t<sys_semaphore_attribute> attr, int initial_count, int max_count); s32 sys_semaphore_create(vm::ref<u32> sem, mem_ptr_t<sys_semaphore_attribute> attr, int initial_count, int max_count);
s32 sys_semaphore_destroy(u32 sem_id); s32 sys_semaphore_destroy(u32 sem_id);
s32 sys_semaphore_wait(u32 sem_id, u64 timeout); s32 sys_semaphore_wait(u32 sem_id, u64 timeout);
s32 sys_semaphore_trywait(u32 sem_id); s32 sys_semaphore_trywait(u32 sem_id);