URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.dg/] [template/] [sfinae26.C] - Rev 801
Go to most recent revision | Compare with Previous | Blame | View Log
// Origin: PR c++/46170
// { dg-do compile }
namespace util {
struct option_value {
};
template <class T> struct options_map_impl {
typedef T options_struct_type;
typedef bool (*opt_func)(const option_value&, options_struct_type&);
template <class V, V K> static bool set_member_constant(const option_value&,
options_struct_type&, V options_struct_type::*);
template <class V, V options_struct_type::*mem, V K> static bool
set_member_constant(const option_value& opt, options_struct_type& t) {
return set_member_constant<V,K>(opt, t, mem);
}
};
}
struct cflat_options {
bool show_precharges;
};
typedef util::options_map_impl<cflat_options> options_map_impl_type;
class register_options_modifier {
typedef options_map_impl_type::opt_func modifier_type;
public: register_options_modifier();
register_options_modifier(const char* Mode, const modifier_type COM,
const char* h);
};
static const register_options_modifier
cflat_opt_mod_show_precharges("precharges",
&options_map_impl_type::set_member_constant<bool,
&cflat_options::show_precharges, true>, "show precharge expressions"),
cflat_opt_mod_no_show_precharges("no-" "precharges",
&options_map_impl_type::set_member_constant<bool,
&cflat_options::show_precharges, false>, "hide precharge expressions");
Go to most recent revision | Compare with Previous | Blame | View Log