This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

c++/6432: __builtin_apply() rejected by g++ - per PR 102



>Number:         6432
>Category:       c++
>Synopsis:       __builtin_apply() rejected by g++ - per PR 102
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    unassigned
>State:          open
>Class:          rejects-legal
>Submitter-Id:   net
>Arrival-Date:   Tue Apr 23 16:46:02 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Colin McCormack
>Release:        gcc version 2.95.4 20011002 (Debian prerelease)
>Organization:
>Environment:
System: Linux colin.sharedtech.dyndns.org 2.4.18-686 #2 Wed Mar 20 20:21:31 EST 2002 i686 unknown
Architecture: i686

	
host: i686-pc-linux-gnu
build: i686-pc-linux-gnu
target: i686-pc-linux-gnu
>Description:
g++ rejects all possible constructions of __builtin_apply() by requiring the second argument to be of an impossible type, with an error: argument passing to `void * ()(unsigned int)' from `void *'.  Please note the impossible type `void * () (unsigned int)'

>How-To-Repeat:
run g++ over the following code:
----
extern void fn1();
void fn (int b){
   __builtin_apply( (void (*)())fn1,
                   __builtin_apply_args(),
                   32);
}
----
NB: this bug was reported in Problem Report 102 on March 12th 2000, and was closed in error.  The bug is, and has been, causing my GPL'd project a great deal of difficulty, and its fix should be straight forward.
>Fix:
There is no fix or workaround possible within g++

>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]