Problem with DragonEgg 3.3rc2 on Fedora 19 Beta

I’m the package maintainer for DragonEgg for Fedora. I’ve just tried to update the DragonEgg package for Fedora 19 beta, which uses gcc 4.8.0.

I had to modify the DragonEgg Makefile because llvm-config --libs is generating the names of the static libraries, while I need to link to the dynamic library (libLLVM-3.3.so). I don’t think this is the cause of my problem, but I suppose I could be wrong.

Anyhow, I have a very simple C program. When I compile it with gcc (on Fedora 19 beta, x86_64), it works fine. When I compile it with gcc -fplugin=dragonegg, I get an executable that doesn’t seem to execute the printf inside the loop.

The C program, executables from gcc and gcc -fplugin=dragonegg, and disassemblies of the .o files can be found here:
http://fedorapeople.org/~brouhaha/dragonegg/

If anyone would care to take a look at this, I can provide account credentials to ssh into the system I’m using.

Thanks!
Eric

Hi Eric,

I'm the package maintainer for DragonEgg for Fedora. I've just tried to update
the DragonEgg package for Fedora 19 beta, which uses gcc 4.8.0.

I had to modify the DragonEgg Makefile because llvm-config --libs is generating
the names of the static libraries, while I need to link to the dynamic library
(libLLVM-3.3.so <http://libLLVM-3.3.so>). I don't think this is the cause of my
problem, but I suppose I could be wrong.

Anyhow, I have a very simple C program. When I compile it with gcc (on Fedora
19 beta, x86_64), it works fine. When I compile it with gcc -fplugin=dragonegg,
I get an executable that doesn't seem to execute the printf inside the loop.

what version of gcc are you loading the plugin into?

Ciao, Duncan.

Hi Eric,

I'm the package maintainer for DragonEgg for Fedora. I've just tried to update
the DragonEgg package for Fedora 19 beta, which uses gcc 4.8.0.

I had to modify the DragonEgg Makefile because llvm-config --libs is generating
the names of the static libraries, while I need to link to the dynamic library
(libLLVM-3.3.so <http://libLLVM-3.3.so>). I don't think this is the cause of my
problem, but I suppose I could be wrong.

Anyhow, I have a very simple C program.

your program has a mistake in it, you should initialize i with i=0 not with i=i
here:

   for (i = i; i <= 30; i++)

Ciao, Duncan.

   When I compile it with gcc (on Fedora

Thanks! I can’t believe I didn’t spot that myself. sorry for wasting your time!

Hi Eric,