On Tue, Sep 1, 2015 at 10:10 AM, Albert Freeman <albertwdfree...@gmail.com> wrote: > Clang tryed to declare the non type member of struct module (enum type type) > (in clover/core/module.hpp) instead of a variable of type enum (enum type). > > Signed-off-by: Albert Freeman <albertwdfree...@gmail.com> > ---
Thanks for your first patch :) The subject and commit message don't really match the Mesa styles. We prefix the subject with the area that the code affects -- in this case "clover: " How about clover: Avoid using typename with ... TBD clover/core/module.hpp declares "type" to be "enum type". Using the typename keyword, clang attempted to declare the variable with the same type as "module" instead of "module::argument::type". Just use enum to avoid this. Reviewed by Serge Martin <edb+m...@sigluy.net> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91826 But I'm curious if this code is exposing a bug in clang, relies on a language extension clang doesn't implement, or is simply wrong? Curro (Cc'd) will probably know. > src/gallium/state_trackers/clover/llvm/invocation.cpp | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/gallium/state_trackers/clover/llvm/invocation.cpp > b/src/gallium/state_trackers/clover/llvm/invocation.cpp > index 7c23a27..d74b50d 100644 > --- a/src/gallium/state_trackers/clover/llvm/invocation.cpp > +++ b/src/gallium/state_trackers/clover/llvm/invocation.cpp > @@ -465,7 +465,7 @@ namespace { > const bool is_write_only = access_qual == "write_only"; > const bool is_read_only = access_qual == "read_only"; > > - typename module::argument::type marg_type; > + enum module::argument::type marg_type; > if (is_image2d && is_read_only) { > marg_type = module::argument::image2d_rd; > } else if (is_image2d && is_write_only) { > -- > 2.5.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev