Changeset 284

Show
Ignore:
Timestamp:
10/31/05 13:47:33
Author:
ben
Message:

Declarations still have to be at the beginning.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • openpgpsdk/trunk/configure

    r251 r284  
    7676                path => sub { return [split /:/,$ENV{PATH}]; }, 
    7777                time_t => sub { return typeInfo('time_t','time.h'); }, 
    78                 base_cflags => sub { return '-Wall -Werror -W -g' if getKnowledge('cc') eq 'gcc'; } 
     78                base_cflags => \&baseCFlags, 
     79                is_gcc => \&isGCC, 
     80                gcc_major => \&gccMajor, 
     81                gcc_version => \&gccVersion, 
    7982              ); 
    8083 
     
    9295#my $os=`uname -s`; 
    9396 
    94 checkHeaders(\@RHeaders); 
    95  
    9697$Subst{'CC'}=getKnowledge('cc'); 
    9798$Subst{'CFLAGS'}.=' '.getKnowledge('base_cflags'); 
     99 
     100checkHeaders(\@RHeaders); 
    98101 
    99102findHeaders(\@Headers); 
     
    305308} 
    306309 
     310sub baseCFlags { 
     311    my $flags=''; 
     312    if(getKnowledge('is_gcc')) { 
     313        $flags='-Wall -Werror -W -g'; 
     314        my $v=getKnowledge('gcc_major'); 
     315        $flags.=' -Wdeclaration-after-statement' if $v >= 3; 
     316    } 
     317    return $flags; 
     318} 
     319 
     320sub isGCC { 
     321    my $cc=getKnowledge('cc'); 
     322 
     323    my $ret=build("int main()\n{\n#ifndef __GNUC__\n  syntax error\n#endif\n return 0; }\n"); 
     324    trace("isGCC=$ret\n"); 
     325    return $ret; 
     326} 
     327 
     328sub gccVersion { 
     329    return undef if !getKnowledge('is_gcc'); 
     330 
     331    my $cc=getKnowledge('cc'); 
     332    my $vstr=`$cc --version`; 
     333 
     334    my($v)=$vstr =~ /(\d+\.\d+\.\d+)/; 
     335 
     336    trace("gcc version=$v\n"); 
     337 
     338    return $v; 
     339} 
     340 
     341sub gccMajor { 
     342    my $v=getKnowledge('gcc_version'); 
     343    return undef if !defined $v; 
     344 
     345    ($v)=$v =~ /^(\d+)/; 
     346 
     347    trace("gcc major=$v\n"); 
     348 
     349    return $v; 
     350} 
  • openpgpsdk/trunk/src/errors.c

    r283 r284  
    2929    int maxbuf=128; 
    3030    va_list args; 
     31    ops_error_t *err; 
    3132     
    3233    comment=malloc(maxbuf+1); 
     
    4041    // alloc a new error and add it to the top of the stack 
    4142 
    42     ops_error_t *err = malloc(sizeof(ops_error_t)); 
     43    err = malloc(sizeof(ops_error_t)); 
    4344    assert(err); 
    4445