Custom Query (146 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (13 - 15 of 146)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Ticket Owner Reporter Resolution Summary
#24 Rob Schluntz <rschlunt@…> pabuhr fixed Non-compatible safety conversion (like C++), prevent void * to T *
Description
forall( otype T ) T * realloc( T *ptr, size_t n ) {
    return (T *)(void *)realloc( ptr, sizeof(T) );
}
int fred() {
    int *i;
    double *d;
    // need to change CFA so that T *p = void *p disallowed
    i = realloc( d, 2 );
}
#25 pabuhr wontfix Problem with opaque type definition.
Description

Fix or remove.

otype U = int *;  // not working

cfa test.c
CFA Version 1.0.0 (debug)
*CFA assertion error* "returnVals.front()->get_name() != """ from program "cfa-cpp" in "void InitTweak::ReturnFixer::premutate(ReturnStmt*)" at line 143 in file "InitTweak/GenInit.cc": Function ?=? has unnamed return value

Stack back trace for: /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp
(0) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : InitTweak::ReturnFixer::premutate(ReturnStmt*)+0x319 [0x548f39]
(1) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : PassVisitor<InitTweak::ReturnFixer>::mutate(ReturnStmt*)+0x39 [0x552839]
(2) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : void PassVisitor<InitTweak::ReturnFixer>::handleStatementList<PassVisitor<InitTweak::ReturnFixer>::mutateStatementList(std::__cxx11::list<Statement*, std::allocator<Statement*> >&)::{lambda(Statement*&)#1}>(std::__cxx11::list<Statement*, std::allocator<Statement*> >&, PassVisitor<InitTweak::ReturnFixer>::mutateStatementList(std::__cxx11::list<Statement*, std::allocator<Statement*> >&)::{lambda(Statement*&)#1})+0x142 [0x557392]
(3) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : PassVisitor<InitTweak::ReturnFixer>::mutate(CompoundStmt*)+0x37 [0x5577c7]
(4) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : Mutator::mutate(FunctionDecl*)+0x71 [0x653901]
(5) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : PassVisitor<InitTweak::ReturnFixer>::mutate(FunctionDecl*)+0x45 [0x559cf5]
(6) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : InitTweak::ReturnFixer::makeReturnTemp(std::__cxx11::list<Declaration*, std::allocator<Declaration*> >&)+0xa5 [0x5484b5]
(7) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : InitTweak::genInit(std::__cxx11::list<Declaration*, std::allocator<Declaration*> >&)+0x9 [0x549a19]
(8) /u/pabuhr/software/cfa-cc/lib/cfa/cfa-cpp : main(/*unknown*/)+0x5f4 [0x4b0874]
#26 pabuhr fixed Implicit conversion from zero_t do not work.
Description
struct foo;
void ?{}( foo *&, zero_t z ) {}
int fred() {
    foo * h;
    if (h) {} 
}

should convert to:

if (h != ?{}(temp, 0), temp ) { ... }

Instead converts to:

if ( ((int )(__h__P4sfoo_2!=((struct foo *)0))) ) {}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Note: See TracQuery for help on using queries.