You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is not a Mach7 bug per se, likely an Apple one, but this tracks the fact that the use of __builtin_assume is currently commented out for clang. This started happening after installing Xcode 7.0.1 but I seem to have the same issue now while trying this on Ubuntu (see build log)
The reduced repro is:
typedef long intptr_t;
namespace mch {
template <typename T> class vtblmap
{
struct A
{
bool is_full() ;
};
public:
T& update(intptr_t );
intptr_t get_vtbl;
void get( )
{
update(get_vtbl);
}
A* descriptor;
};
template <typename T> T& vtblmap<T>::update(intptr_t vtbl)
{
__builtin_assume(descriptor->is_full()) ; // Comment this out for the linker error to disappear
}
struct type_switch_info ;
class B {
public:
static long choose( )
{
vtblmap<type_switch_info> a;
a.get();
}
};
}
template< class S, class T> void lift_ex2(int , S , T )
{
mch::B::choose;
}
int b, c ;
void my_g( )
{
lift_ex2(c,b,my_g);
}
The text was updated successfully, but these errors were encountered:
This is not a Mach7 bug per se, likely an Apple one, but this tracks the fact that the use of __builtin_assume is currently commented out for clang. This started happening after installing Xcode 7.0.1 but I seem to have the same issue now while trying this on Ubuntu (see build log)
The reduced repro is:
The text was updated successfully, but these errors were encountered: