267 Commits (14862d0aca4234db36f5e80f3b637a5a898e33ce)

Author SHA1 Message Date
Dulma Rodriguez 6b2b76d956 Translate dynamic arrays to cpp classes
9 years ago
Andrzej Kotulski 590f73b59f Translate functions/methods from headers when they are referenced
9 years ago
Josh Berdine e1020c8ebe Remove -open(Utils) compile flag hack
9 years ago
Andrzej Kotulski 64bb3b62b3 Use variable stmt location info in init_res_trans
9 years ago
Dulma Rodriguez bc3134dd32 Translate initializing arrays of C++ classes
9 years ago
Josh Berdine fd062cf736 Refactor SymExec.ModelBuiltins into toplevel module
9 years ago
Cristiano Calcagno 509a666ee0 Refactor Sil.pvar into a separate module.
9 years ago
Cristiano Calcagno 53702e43e8 Created IR folder for the intermediate representaion files.
9 years ago
Sam Blackshear c03f39f20c Fixing some issues with Obj-C blocks
9 years ago
Josh Berdine 2dcd93204c Refactor SymExec.Builtin into toplevel module
9 years ago
Dulma Rodriguez c0e5365458 Translate delete of arrays with the correct destructor
9 years ago
Dulma Rodriguez 0c5bca7a4b Translate arrays created with new
9 years ago
Dulma Rodriguez c6524d799f Translate C++ constructors after new
9 years ago
Cristiano Calcagno c198d76631 Clean up the Procname module, and remove remaining assert false
9 years ago
Dulma Rodriguez 9f7bfea98f Translate CXXStdInitializerListExpr
9 years ago
Sam Blackshear ab1ac822f6 Replacing Ctuple with Cclosure
9 years ago
Dulma Rodriguez a62ccc7a05 Fixing init list expr when there is no variable or compound literal expression
9 years ago
Dulma Rodriguez 10a14a7324 Translate CXXTypeidExpr
9 years ago
Dino Distefano ce0ae5c821 Refactoring in preparation of implementing C++ lambda
9 years ago
Dulma Rodriguez a4b87a0951 Translate destructor calls
9 years ago
Dulma Rodriguez 91a2eaa5f1 Translate CXXPseudoDestructorExpr
9 years ago
Dulma Rodriguez edbd7854b2 Translate SizeOfPackExpr
9 years ago
Dulma Rodriguez c9e5d27e0d Translate GCCAsmStmt
9 years ago
Dulma Rodriguez 6c567f1104 Translate GenericSelectionExpr
9 years ago
Dulma Rodriguez ef3e516f6f Translate ImplicitValueInitExpr
9 years ago
Dulma Rodriguez d499d5fc8e Translate C++ exceptions
9 years ago
Sam Blackshear 2d89426170 fixing tenv_lookup
9 years ago
Sam Blackshear 337d2cc537 fixing tenv_add to add only struct_typ's
9 years ago
Dulma Rodriguez 379d185d74 Sort the fields in the tenv at the end of translation as some translations need the original order
9 years ago
Cristiano Calcagno f3ba6c3906 Revamped Timeout module to save and restore seconds and symops.
9 years ago
Dino Distefano be8f25c90b Improved/simplified framework for frontend checkers.
9 years ago
Dulma Rodriguez 4264e94565 Fix problems with translation of InitListExpr
9 years ago
Andrzej Kotulski decb263b1d Fix translation when accessing reference type fields
9 years ago
Dulma Rodriguez 06f40efab8 Add extra dereference to the variable of the method call to find null dereferences when a method called with null.
9 years ago
Andrzej Kotulski e4a0e9bbf7 Translate CXXDefaultInitExpr
9 years ago
Dulma Rodriguez 2fb2b3d9e1 Add the virtual flag of C++ methods in method calls
9 years ago
Josh Berdine 77b22ded03 Warn on unused identifiers
9 years ago
Josh Berdine 02056079cf Warn of unused values
9 years ago
Josh Berdine 55cb61dbda Warn of unused open statements
9 years ago
Josh Berdine b155168083 Open Utils implicitly
9 years ago
Josh Berdine 2e4f4a0c5f Warn of label omitted in function application
9 years ago
Dino Distefano c65947439f Implementing translation of CXXForRangeStmt
9 years ago
Andrzej Kotulski 49d7bdb6bd Translate CXXScalarValueInitExpr
9 years ago
Andrzej Kotulski 359ad9dd4b Translate constructor initializer
9 years ago
Andrzej Kotulski 1d6aea0fb9 Add typ to trans_state.var_exp
9 years ago
Andrzej Kotulski 7cabc86f77 Pass return parameter type in context
9 years ago
Andrzej Kotulski 8545a0310e Treat xvalues as they were lvalues
9 years ago
Andrzej Kotulski b08acedf29 Use clang for default argument resolution
9 years ago
Dulma Rodriguez f4bbd44212 Translate dynamic cast for C++
9 years ago
Andrzej Kotulski 262796d3bf Distinguish between C++ and objc class types
9 years ago
Andrzej Kotulski 9d7ab4b9c2 Translate conversion operators
9 years ago
Sam Blackshear 14e934205f implementing dynamic dispatch support for Java interfaces
9 years ago
Andrzej Kotulski 3dcd6490c2 Translate reinterpret_cast and const_cast
9 years ago
Cristiano Calcagno 7673d94600 Distinguish between class kinds: CPP, Java, Objc
9 years ago
Andrzej Kotulski bdab22a093 Support temporary objects (CXXTemporaryObjectExpr)
9 years ago
Andrzej Kotulski 44a6ec4f10 Fix return parameter handling
9 years ago
Andrzej Kotulski e329916e5b Add basic translation of CXXBindTemporaryExpr
9 years ago
Andrzej Kotulski 1fe920c0c5 Cleanup code triggering code translation
9 years ago
Andrzej Kotulski ec80d40bdd Populate return parameter when returning + turn on new feature for C/C++
9 years ago
Andrzej Kotulski 2c8238849d Add return parameter to function/method call
9 years ago
Andrzej Kotulski 58be5d0eb0 Add return parameter to functions returning structs
9 years ago
Cristiano Calcagno 162dc42b5b Use a record for struct types instead of a 7-tuple.
9 years ago
Andrzej Kotulski a317ac38f2 Use init_exp in InitListExpr and CompoundLiteralExpr
9 years ago
Andrzej Kotulski 5eb7d9e994 Add init_pvar to trans_state and use it in c++ constructor
9 years ago
Andrzej Kotulski fcb561a1ee Use Sil.exp instead of var_res_trans to get initialized variable
9 years ago
Jules Villard 59a3b9c22a add temp var from compoundLiteralExpr to the function locals
9 years ago
Jules Villard 7b9b6841d2 translate CompoundLiteralExpr
9 years ago
Dulma Rodriguez 7855d6ecfa Fix the order of the translated stmts inside compound stmt
9 years ago
Dino Distefano d4d5c3bb2f Implemented new check CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK
9 years ago
Andrzej Kotulski df192d06c3 Use ints as clang pointers
9 years ago
Andrzej Kotulski bd935c2347 Add destructor calls on delete expression
9 years ago
jrm 6d91199be7 Generalize the detection of assertion failures to any kind of custom errors defined programatically in the orginal source code
9 years ago
jrm 2e7f5735d3 Extract the naming of types to its own module named Typename
9 years ago
jrm 4143d4eb2d Extract the kind of data structure, Class Struct or Union, into it own module
9 years ago
Andrzej Kotulski 7960798ca8 Deal with default parameter earlier
9 years ago
Andrzej Kotulski 0bf6333708 Remove parent_line_number information from cfg translation
9 years ago
Andrzej Kotulski 6d9c5c684e Fix naming problems with template methods
9 years ago
Sam Blackshear e0cf26e5c3 adding cf_interface flag--prereq for experimenting with dynamic dispatch for interfaces only
9 years ago
Dulma Rodriguez 1e5b8aeee7 Adding builtin setters and using them by skip
9 years ago
Andrzej Kotulski b544be7bef Use PriorityNode.compute_results_to_parent in init_expr_trans
9 years ago
Andrzej Kotulski 84549f691d Support decl_stmt in switch stmt
9 years ago
Andrzej Kotulski a8d5f4241d Put condition node to res_trans_cond
9 years ago
Andrzej Kotulski 92690551a6 Handle lvalues inside conditional operator right + fix init_expr_trans to fix materializeTempExpr not connecting nodes
9 years ago
Dulma Rodriguez 9c9504ba51 Using the link from method decl to property to determine whether the method is accessor
9 years ago
Andrzej Kotulski a1c1b10862 Use priority node for branches inside coditional operator
9 years ago
Andrzej Kotulski d4e76fa9ec Refactor UnaryOperator_trans to use compute_results_to_parent
9 years ago
Andrzej Kotulski 71482fb472 Refactor CompoundBinaryOperator to use same code as BinaryOperator
9 years ago
Dino Distefano 99c491e8c7 Introducing the DIRECT_ATOMIC_PROPERTY_ACCESS
9 years ago
Dulma Rodriguez 12d21c73dd Adding builtins for getters and calling them by skip
9 years ago
Andrzej Kotulski 5a4f5fa444 Refactor BinaryOperator_trans to use compute_results_to_parent
9 years ago
Andrzej Kotulski 60b4f6e766 Refactor PriorityNode.compute_results_to_parent to call collect_res_trans directly
9 years ago
Andrzej Kotulski 35bb8a9a26 Change order in which ids get generated for objcMessageExpr_trans
9 years ago
Andrzej Kotulski 3f9a08f99c Defer cfg node creation for returnStmt and init_expr_trans
9 years ago
Andrzej Kotulski 0d1af3cc46 Don't set succ_nodes for substatements in returnStmt and init_expr_trans
9 years ago
Andrzej Kotulski 1eecdacea6 Ignore type change in UncheckedDerivedToBase cast
9 years ago
Andrzej Kotulski 7389dfe976 Don't crash when method decl is not found
9 years ago
Dulma Rodriguez 0441919a42 Using clang's method resolution if possible
9 years ago
Andrzej Kotulski 81337ce2cb Support MaterializeTemporaryExpr
9 years ago
Dulma Rodriguez 369de5880e Add variable to locals in dispatch functions as usual
9 years ago
Andrzej Kotulski 16cb8e3f30 Translate CXXOperatorCallExpr
9 years ago
Andrzej Kotulski cb42fdcc31 Use fully qualified names for functions
9 years ago
Andrzej Kotulski 9748502a1a Handle C++ static methods
9 years ago
Andrzej Kotulski c2aaf867cd Cleanup handling of namespaces from ocaml code
9 years ago
Andrzej Kotulski 71e424d6ba Use qual_name to extract class name from method decl
9 years ago
Dulma Rodriguez 87a3d693e1 Adding static variables to blocks class to get retain cycles
9 years ago
Dino Distefano 316ad95659 Fixing Bad pointer comparison checker in fast iteration
9 years ago
Andrzej Kotulski c4b237e9f6 Fix type of CXXThisExpr_trans
9 years ago
Andrzej Kotulski 3262640214 Move translation of init_expr to general function
9 years ago
Andrzej Kotulski 1180aabe39 Fix result of returnStmt_trans
9 years ago
Dulma Rodriguez de1a627335 Translate enums as ints and not add them to the tenv
9 years ago
Andrzej Kotulski db35afef1e Handle variable declaration inside condition expression correctly
9 years ago
Andrzej Kotulski 3b4dda102b Change return type of CTrans.loop_instruction
9 years ago
Andrzej Kotulski a9bdf2b291 Translate c++ constructor calls in var initialization
9 years ago
Andrzej Kotulski 088293b6c2 Add pointer type to argument of method call
9 years ago
Andrzej Kotulski 9c578406a1 update clang plugin version
9 years ago
Andrzej Kotulski be07cdda2a Factor out some parts of CXXMemberCallExpr
9 years ago
Andrzej Kotulski 9e39f3bf72 Refactor of declRefExpr_trans & MemberExpr_trans
9 years ago
Andrzej Kotulski 1c80ba8bb7 simplify code handling default paramters
9 years ago
Andrzej Kotulski 453924f303 Add basic translation of constructors
9 years ago
Jules Villard 7d0a7568f3 put Util.list_* functions into an IList module
9 years ago
Andrzej Kotulski 5a07f767bb Handle assignment operations correctly
9 years ago
Andrzej Kotulski b86af1e5d1 Fix type information about reference types in CFGs
9 years ago
Jules Villard 2af1687cd4 add builtin for dictionary literals
9 years ago
Andrzej Kotulski bfe10e3829 Fix handling of C++ references
9 years ago
Dulma Rodriguez ba00f08f00 Remove variable resolution and use pointers to declarations instead
9 years ago
Dulma Rodriguez e49d9d6f4d Adding an outer context to the context in case of blocks
9 years ago
Andrzej Kotulski aa1951cad4 Create generic way of generating extra instructions
9 years ago
Andrzej Kotulski f01a639605 Slight improvement of block function handling
9 years ago
Andrzej Kotulski 4d10c8d9f4 Add support for C++ this expression
9 years ago
Andrzej Kotulski a045886eba Get better language information about functions/methods
9 years ago
Andrzej Kotulski d6b1d422fd Update fcp and remove qual_type type
9 years ago
Dulma Rodriguez 0b0cd0d38d [clang] Using qual names for fields
9 years ago
Dulma Rodriguez e26f9b4dd4 [clang] Removing the use of raw types
9 years ago
Dulma Rodriguez fd853f97ca [clang] C function names depend only on their name (and their file is they are static, and their type if we are in C++)
9 years ago
Dulma Rodriguez 51e0e40bc7 [clang] [2 of 3] Dealing with custom ast expressions and flow of types in the frontend.
9 years ago
Dulma Rodriguez e5f6df74b0 [clang] Add procdescs to cxx method. Forgotten from last commit
10 years ago
Dulma Rodriguez 3cddd0489c [clang] Use the map of pointers to find method declarations and build method signatures
10 years ago
Andrzej Kotulski 394a3b4c29 [CFrontend] Sizeof should have ulong type
10 years ago
Jules Villard cc70507552 [clang] unopen some modules
10 years ago
Andrzej Kotulski a570bf5b85 [CFrontend] Replace names containing Method with ObjCMethod
10 years ago
Andrzej Kotulski 198c3c82e1 [C++ frontend] Handle calling c++ methods
10 years ago
Andrzej Kotulski 7a839984da [C++] Add cpp methods signatures and implementations
10 years ago
Jules Villard 85b0ef7266 [clang] Refactor of creating method signatures. First step to use the map of pointers to find method declarations.
10 years ago
Andrzej Kotulski be0e3c417a Update fcp version
10 years ago
Andrzej Kotulski 1d6873f471 [C++] Handle simple new cases
10 years ago
Andrzej Kotulski 3b22adfc15 [C Frontend][Refactor] Remove code duplication on debug messages
10 years ago
Andrzej Kotulski 5169419216 [C frontend] Improve ObjCIvarRef/Member Exprs
10 years ago
Dulma Rodriguez 732d23ce4d [clang] Add is_instance as part of the type of objc methods
10 years ago
Jules Villard bae8a4dced [whitespace] indent .ml files as well
10 years ago
Jules Villard 6911a1516c [whitespace] ocp-indent the code
10 years ago