Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 161529 - Internal compiler error when compiling GNUstep Base.
Summary: Internal compiler error when compiling GNUstep Base.
Alias: None
Product: Fedora
Classification: Fedora
Component: gcc4
Version: 4
Hardware: i386
OS: Linux
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact:
: 162782 (view as bug list)
Depends On:
TreeView+ depends on / blocked
Reported: 2005-06-23 23:20 UTC by Jonathan Fischer
Modified: 2007-11-30 22:11 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2005-07-06 20:13:56 UTC

Attachments (Terms of Use)
Preprocessed source code that causes the internal compiler error. (deleted)
2005-06-23 23:23 UTC, Jonathan Fischer
no flags Details

System ID Priority Status Summary Last Updated
GNU Compiler Collection 8081 None None None Never

Description Jonathan Fischer 2005-06-23 23:20:35 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050524 Fedora/1.0.4-4 Firefox/1.0.4

Description of problem:
When attempting to compile GNUstep using GCC 4 on Fedora Core 4, I get an internal compiler error.  The output from the error is below, in the "Actual Results" field.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1.  Using the packaged gnustep-startup from, run InstallGNUstep to build & install the product.


Actual Results:  mframe.m: In function mframe_decode_return:
mframe.m:1579: warning: pointer targets in passing argument 2 of NSGetSizeAndAlignment differ in signedness
mframe.m:1711: internal compiler error: in assign_stack_temp_for_type, at function.c:605
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:> for instructions.
Preprocessed source stored into /tmp/cctt7NR7.out file, please attach this to your bugreport.

Expected Results:  No internal errors.

Additional info:

Comment 1 Jonathan Fischer 2005-06-23 23:23:13 UTC
Created attachment 115908 [details]
Preprocessed source code that causes the internal compiler error.

Comment 2 Dries Verachtert 2005-07-06 19:51:12 UTC
The following in a .c file is enough to get the ICE (it's a part from 
void mframe_decode_return (const char *type, void* buffer, void* retframe) { 
  int size = 1; 
  typedef struct { 
    char  val[size]; 
  } block; 
  inline block retframe_block(void *rframe) 
    __builtin_return (rframe); 
  *(block*)buffer = retframe_block(retframe); 

Comment 3 Dries Verachtert 2005-07-06 19:54:13 UTC
You get an internal compiler error on: 
gcc4 (GCC) 4.0.0 20050406 (Red Hat 4.0.0-0.41.fc3)           (fc3) 
gcc (GCC) 4.0.0 20050519 (Red Hat 4.0.0-8)                   (fc4 x86-64) 
But not on: 
gcc33 (GCC) 3.3.4 20040817 (Red Hat Linux 3.3.4-2)           (fc3) 
gcc32 (GCC) 3.2.3 20030422 (Red Hat Linux 3.2.3-6)           (fc3) 

Comment 4 Jakub Jelinek 2005-07-06 20:13:56 UTC
That's a known problem, and actually not a regression, it is enough to make
small changes to the source and older GCCs will fail the same way.
Nested functions never played well with VLA return types.

Comment 5 Paul Johnson 2005-07-08 18:18:56 UTC
*** Bug 162782 has been marked as a duplicate of this bug. ***

Comment 6 Paul Johnson 2005-07-13 17:48:59 UTC
Hello, Jakub!

When you closed this as "closed upstream," I thought you meant that gcc in
rawhide would be fixed. But I just installed gcc-4.0.1-2 from fedora-devel and I
get the same error compiling mframe.m in the Swarm Simulation libraries.  We
have a copy of mframe.m from GNUstep in there, and that's why you see us
traveling along with GNUstep bugs.  

Can you tell us when/if this bug will be fixed?  

Comment 7 Jakub Jelinek 2005-07-13 17:50:48 UTC
Closing UPSTREAM doesn't mean necessarily the bug is fixed, but that it is
tracked upstream.  When it is fixed upstream, the fix will be propagated to

Note You need to log in before you can comment on or make changes to this bug.