156 Commits (7ef191f4bebecdc375e9e0dfd625b585a019aef2)

Author SHA1 Message Date
Josh Berdine 8589dc4868 Remove Tstruct in favor of Tvar
8 years ago
Josh Berdine 30b3881e52 Make Typ.struct_typ private and add Typ.mk_struct
8 years ago
Josh Berdine ad31aeb2a2 Expand Tvar to Tstruct as needed
8 years ago
Josh Berdine 8a85919001 Pass tenv to everywhere that matches on Tstruct
8 years ago
Andrzej Kotulski 97fe6275bd Simplify language detection in frontend
8 years ago
Jules Villard 145cb744f6 do not havoc actuals of skip functions with const parameters
9 years ago
Jules Villard 7603395ee9 qual_type fields are namespaced now
9 years ago
Jules Villard 3b3f587652 update fcp to have qualifiers in ValueDecl types
9 years ago
Josh Berdine c147ab4197 Refactor Sil.attribute and associates to PredSymb
9 years ago
Josh Berdine 32146523ca Enable warning: Unexpected documentation comment
9 years ago
Dulma Churchill fb607ef388 Use the block captured variables as mangled
9 years ago
Dulma Churchill 62da495510 Start transitioning logging of frontend bugs into a map of errlogs rather than in procdescs
9 years ago
Andrzej Kotulski b8044c6b65 Use mangled names instead of function type for mangling
9 years ago
Andrzej Kotulski e61b6fe719 Use pointers to decls instead of class names when creating a type
9 years ago
Andrzej Kotulski e46cddb52b Use mangling in function parameters to encode its position
9 years ago
Dulma Churchill c06795e631 Fixing the treatment of annotations in the clang frontend
9 years ago
Josh Berdine bbec166174 Refactor Sil.typ into separate Typ module
9 years ago
Andrzej Kotulski 3699b9c0dc Fix translation of passing struct parameters by value
9 years ago
Josh Berdine 88a2da91fc Add `make -C infer/src test_build` to `make test`
9 years ago
Dulma Churchill 9b1bd712b5 Marking getters/setters as builtins only inside the definition of the class
9 years ago
Josh Berdine 3e2fa59262 Reimplement command line options
9 years ago
Dulma Churchill d73d4ea177 Getting a more precise type when creating ObjC objects
9 years ago
Sam Blackshear c92bbf362b removing need to pass around lists of temporary id's in the frontend
9 years ago
Dino Distefano b7ab1760a6 Translation of lambda [part one]
9 years ago
Cristiano Calcagno 054ad223a8 Fix control-flow graph shape when conditional is last instruction.
9 years ago
Dulma Rodriguez d366bb970b Create the procdescs for frontend checks only when needed
9 years ago
Josh Berdine e1020c8ebe Remove -open(Utils) compile flag hack
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
Cristiano Calcagno c198d76631 Clean up the Procname module, and remove remaining assert false
9 years ago
Sam Blackshear 2d89426170 fixing tenv_lookup
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 b155168083 Open Utils implicitly
9 years ago
Josh Berdine 2e4f4a0c5f Warn of label omitted in function application
9 years ago
Andrzej Kotulski 7cabc86f77 Pass return parameter type in context
9 years ago
Andrzej Kotulski 36fb1f202c Deal with empty parameter names
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
Cristiano Calcagno 7673d94600 Distinguish between class kinds: CPP, Java, Objc
9 years ago
Andrzej Kotulski ec80d40bdd Populate return parameter when returning + turn on new feature for C/C++
9 years ago
Andrzej Kotulski 61de633647 Add information whether translated method has return parameter
9 years ago
Andrzej Kotulski 58be5d0eb0 Add return parameter to functions returning structs
9 years ago
jrm 18668a41ce simplify the API to create procedure descriptions
9 years ago
Cristiano Calcagno 162dc42b5b Use a record for struct types instead of a 7-tuple.
9 years ago
Andrzej Kotulski df192d06c3 Use ints as clang pointers
9 years ago
jrm 9f5159241f Use Typename.t for the type of the supertypes in the defintion of classes.
9 years ago
jrm 467fe385be Use the Mangled module to name the parameters in the procudure description instead of simple string
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 70b003696f Translate bodies of destructors
9 years ago
Andrzej Kotulski 6d9c5c684e Fix naming problems with template methods
9 years ago
Dulma Rodriguez b51da4f050 Remove the concept of generated method from the frontend and proc attributes
9 years ago
Dulma Rodriguez 1e5b8aeee7 Adding builtin setters and using them by skip
9 years ago
Andrzej Kotulski 173ee91844 Support template methods
9 years ago
Dulma Rodriguez c02b3ca034 Add correct ivar name to the getters and save the ivar to the tenv if not available
9 years ago
Dulma Rodriguez 9c9504ba51 Using the link from method decl to property to determine whether the method is accessor
9 years ago
Dulma Rodriguez 37fdeb84bc Moving the property frontend checkers to a dummy procdesc
9 years ago
Sam Blackshear 4dc9dac9e9 getting started on a Nullable annotation checker for obj-c
9 years ago
Dulma Rodriguez 12d21c73dd Adding builtins for getters and calling them by skip
9 years ago
Andrzej Kotulski a06ce9ca0e Don't report null dereference on 'this' in C++ methods
9 years ago
Dulma Rodriguez 0441919a42 Using clang's method resolution if possible
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 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
Andrzej Kotulski 9c578406a1 update clang plugin version
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
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 cb0380eb4e Update version of fcp
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 2a425b8218 Add structured type_ptr
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 e26f9b4dd4 [clang] Removing the use of raw types
9 years ago
Andrzej Kotulski e8949d16e4 [Frontend][C++] Use Sil.class for C++ class/struct/union 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
Cristiano Calcagno ea7c13ff6c [backend][cleanup] Move proc_attributes to a separate module.
9 years ago
Cristiano Calcagno 6f65486942 [backend][cleanup] move fields in common to Cfg.Procdes and Specs.summary to proc_attributes.
10 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
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 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
Dulma Rodriguez 732d23ce4d [clang] Add is_instance as part of the type of objc methods
10 years ago
Sam Blackshear e107058bf6 [Infer] Adding warning to eliminate needless rec keywords, fixing all warnings.
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
Dulma Rodriguez d7655a087e [clang] Adding getters and setters for all the methods
10 years ago
Andrzej Kotulski 687f4958c8 Change procname types for objc/c functions
10 years ago
Dino Distefano 35b7011f81 Treating blocks iterators for NSArray
10 years ago
Cristiano Calcagno 3e199467f4 Complete copyright messages.
10 years ago