First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 179843
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Gentoo Games <games@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Philipp <sefi@s-e-f-i.de>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
devil_void.patch Changes (ILvoid) to (void) patch Philipp 2007-05-26 07:47 0000 49.23 KB Details | Diff
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 179843 depends on: Show dependency tree
Show dependency graph
Bug 179843 blocks: 162167
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)







View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2007-05-26 07:46 0000
DevIL does something like the following:

typedef void ILvoid;
ILvoid some_devil_func(ILvoid);

The last ILvoid is illegal as void is only a special case to describe an
argumentless function in C. C++'s syntax disallows the use of a typedef here to
denote this special case. So every C++ packet that includes any of devil's
headers is affected.
To fix the problem every (ILvoid) must be replaced with (void) before emerging
devil. This could be done with a sed script or a patch which I will add here.

Reproducible: Always

Steps to Reproduce:
1. use gcc-4.2
2. emerge devil.
3. try to compile with g++:
#include <IL/il.h>
int main() {}

------- Comment #1 From Philipp 2007-05-26 07:47:23 0000 -------
Created an attachment (id=120348) [edit]
Changes (ILvoid) to (void)

------- Comment #2 From Attila Fazekas 2007-06-04 12:42:43 0000 -------
I changed typedef to 
#define ILvoid void

------- Comment #3 From Ryan Hill 2007-06-06 03:23:07 0000 -------
might want to change the homepage to http://openil.sourceforge.net/ too (unless
of course you enjoy hentai links). ;)

this patch appears correct.

------- Comment #4 From Mr. Bones. 2007-06-06 03:59:53 0000 -------
In portage.  Thanks for checking it out.

http://www.imagelib.org/ works fine for me so I left that as the homepage.

------- Comment #5 From James Ausmus 2007-08-14 17:16:20 0000 -------
Why did this not cause a revision bump? I'm running into this issue with
media-libs/devil-1.6.7-r1 installed from 2006-11-20, and it is the latest
version available in Portage. I tried to update cegui, but it failed due to the
ILvoid issues mentioned above - I'm now using gcc-4.2.0. As more people switch
to gcc-4.2.x, there are going to be a lot of compile failures due to this - can
the revision be bumped so that this gets picked up in updates, instead of
having to break a compile and have the user try to hunt down the issue, and be
confused as to why it's not already fixed?

-James

------- Comment #6 From Tristan Heaven 2007-08-14 17:21:58 0000 -------
done

------- Comment #7 From Tristan Heaven 2008-02-01 10:29:55 0000 -------
*** Bug 208402 has been marked as a duplicate of this bug. ***

First Last Prev Next    No search results available      Search page      Enter new bug