--- David Abrahams <[EMAIL PROTECTED]> wrote:

> You can do that, but IIUC it won't get you where Genny's trying to go:
> namely that if static_log2 happens to get adjusted so its parameter is
> an unsigned long long constant, you can detect that without causing an
> error.

No. Because in the real code I would have written:

  // actually in namespace detail
  typedef unsigned long static_log2_arg_type; // (*)


  template <static_log2_arg_type N>
  struct static_log2 {};

  template <class T>
  struct argument_type;

  template < static_log2_arg_type x > // ***
  struct argument_type< static_log2<x> > {
     typedef static_log2_arg_type type;
  };

and the only point subject to modification would have been (*). My problem was
just that I don't like to specify a value when retrieving the argument type.

Genny.


__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to