------- Comment #4 from pinskia at gcc dot gnu dot org 2006-09-01 22:24 ------- (In reply to comment #3) > There shouldn't be a NON_LVALUE_EXPR here at all; non-type template parameters > are lvalues only if they have reference type.
fold produces it because maybe_lvalue_p returns true for Language specific trees and fold is folding (template_parameter+1)-1. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28886