This is the mail archive of the gcc-help@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]

gcc-4.4 objc internal compiler error


Hi,

When trying the following example with an arm_wince gcc-4.4 cross-compiler,
I get an internal
compiler error :

#import <stdio.h>
#import <objc/Object.h>
#import <objc/NXConstStr.h>

int main( int argc, const char *argv[] ) 
{
  int result = 0;

  @try {
    printf("in @try\n");
    if (argc > 1) {
      @throw @"Throw !";
      //[NSException exceptionWithName:@"Trwoing a test exception"
reason:@"Testing the @throw directive." userInfo:nil];

    }
  } 
  @catch (id except) {
    result = 1;
    printf("in @catch\n");
  }
    @finally {
    result += 2;
    }
  return result;
}

objc_try_catch.m: In function 'main':
objc_try_catch.m:25: internal compiler error: in gen_eh_region, at
except.c:425
Please submit a full bug report,
with preprocessed source if appropriate.

The problem seems to be caused by an assert checking doing-seh 

static struct eh_region *
gen_eh_region (enum eh_region_type type, struct eh_region *outer)
{
  struct eh_region *new_eh;

#ifdef ENABLE_CHECKING
  gcc_assert (doing_eh (0));
#endif

 DO I need to pass special arguments when building objc cross compiler ?


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