[LLVMbugs] [Bug 6594] New: False error: template argument for template type parameter must be a type
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri Mar 12 05:40:40 PST 2010
http://llvm.org/bugs/show_bug.cgi?id=6594
Summary: False error: template argument for template type
parameter must be a type
Product: clang
Version: trunk
Platform: Macintosh
OS/Version: MacOS X
Status: NEW
Severity: normal
Priority: P
Component: C++
AssignedTo: unassignedclangbugs at nondot.org
ReportedBy: Fons.Rademakers at cern.ch
CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com
Created an attachment (id=4491)
--> (http://llvm.org/bugs/attachment.cgi?id=4491)
Source file exhibiting the problem
The attached aap.cxx compiles fine with g++ (and for that matter any other know
compiler), but not with clang++. Do:
clang++ -c aap.cxx
In file included from cint/reflex/src/ClassBuilder.cxx:16:
include/Reflex/Builder/ClassBuilder.h:465:63: error: template argument for
template type parameter must be a type
fClassBuilderImpl.AddFunctionMember(nam, FunctionDistiller<F>...
^
In file included from cint/reflex/src/ClassBuilder.cxx:16:
In file included from include/Reflex/Builder/ClassBuilder.h:20:
include/Reflex/Builder/TypeBuilder.h:931:20: note: template parameter is
declared here
template <typename S> class FunctionDistiller;
^
In file included from cint/reflex/src/ClassBuilder.cxx:16:
include/Reflex/Builder/ClassBuilder.h:461:54: warning: unused parameter
'stubFP'
[-Wunused-parameter]
StubFunction stubFP,
^
include/Reflex/Builder/ClassBuilder.h:462:47: warning: unused parameter
'stubCtx' [-Wunused-parameter]
void* stubCtx,
^
include/Reflex/Builder/ClassBuilder.h:463:53: warning: unused parameter
'params'
[-Wunused-parameter]
const char* params,
^
include/Reflex/Builder/ClassBuilder.h:464:54: warning: unused parameter
'modifiers' [-Wunused-parameter]
unsigned int modifiers) {
^
include/Reflex/Builder/ClassBuilder.h:561:63: error: template argument for
template type parameter must be a type
fClassBuilderImpl.AddFunctionMember(nam, FunctionDistiller<F>...
^
In file included from cint/reflex/src/ClassBuilder.cxx:16:
In file included from include/Reflex/Builder/ClassBuilder.h:20:
include/Reflex/Builder/TypeBuilder.h:931:20: note: template parameter is
declared here
template <typename S> class FunctionDistiller;
^
In file included from cint/reflex/src/ClassBuilder.cxx:16:
include/Reflex/Builder/ClassBuilder.h:557:35: warning: unused parameter
'stubFP'
[-Wunused-parameter]
StubFunction stubFP,
^
include/Reflex/Builder/ClassBuilder.h:558:28: warning: unused parameter
'stubCtx' [-Wunused-parameter]
void* stubCtx,
^
include/Reflex/Builder/ClassBuilder.h:559:34: warning: unused parameter
'params'
[-Wunused-parameter]
const char* params,
^
include/Reflex/Builder/ClassBuilder.h:560:35: warning: unused parameter
'modifiers' [-Wunused-parameter]
unsigned int modifiers) {
^
12 diagnostics generated.
(proof) [343] g++ -g -m64 -pipe -W -Wall -Woverloaded-virtual -fsigned-char
-fno-common -Iinclude -D_REENTRANT -pthread -o cint/reflex/src/ClassBuilder.o
-c cint/reflex/src/ClassBuilder.cxx
(proof) [344] clang++ -g -m64 -pipe -W -Wall -Woverloaded-virtual -fsigned-char
-fno-common -Iinclude -D_REENTRANT -pthread -E -o aap.cxx
cint/reflex/src/ClassBuilder.cxx
(proof) [345] clang++ -c aap
clang: error: no such file or directory: 'aap'
clang: error: no input files
(proof) [346] clang++ -c aap.cxx
In file included from cint/reflex/src/ClassBuilder.cxx:1:
In file included from cint/reflex/src/ClassBuilder.cxx:16:
include/Reflex/Builder/ClassBuilder.h:465:63: error: template argument for
template type parameter must be a type
fClassBuilderImpl.AddFunctionMember(nam, FunctionDistiller<F>...
^
In file included from cint/reflex/src/ClassBuilder.cxx:1:
In file included from cint/reflex/src/ClassBuilder.cxx:16:
In file included from include/Reflex/Builder/ClassBuilder.h:20:
include/Reflex/Builder/TypeBuilder.h:931:20: note: template parameter is
declared here
template <typename S> class FunctionDistiller;
^
In file included from cint/reflex/src/ClassBuilder.cxx:1:
In file included from cint/reflex/src/ClassBuilder.cxx:16:
include/Reflex/Builder/ClassBuilder.h:561:63: error: template argument for
template type parameter must be a type
fClassBuilderImpl.AddFunctionMember(nam, FunctionDistiller<F>...
^
In file included from cint/reflex/src/ClassBuilder.cxx:1:
In file included from cint/reflex/src/ClassBuilder.cxx:16:
In file included from include/Reflex/Builder/ClassBuilder.h:20:
include/Reflex/Builder/TypeBuilder.h:931:20: note: template parameter is
declared here
template <typename S> class FunctionDistiller;
^
4 diagnostics generated.
No errors compiling with g++.
Cheers, Fons.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list