This is the statement from ISO C++ Standard 14.6.2.4:
Dependent template arguments :
A type template-argument is dependent if the type it specifies
is dependent.An integral non-type template-argument is dependent if the constant
expression it specifies is value dependent.A non-integral non-type template-argument is dependent if its type
is dependent or it has either of the following forms and contains a
nested-name-specifier which specifies a class-name that names a
dependent type.A template template-argument is dependent if it names a template
parameter or is a qualified-id with a nested-name-specifier which
contains a class-name that names a dependent type.
I am unable to understand these points?
Can any one give examples for these statements?
This is what I understand. I have marked the individual code snippets in the code inline marked according to the line numbers in the OP.