157 Commits (18782be7c9d0584c1bf5cb2493d6d5b0fa75c265)

Author SHA1 Message Date
Dulma Churchill a2ee69975a [clang] Remove support for logging lint issues in procdescs
9 years ago
Josh Berdine 8589dc4868 Remove Tstruct in favor of Tvar
9 years ago
Josh Berdine 30b3881e52 Make Typ.struct_typ private and add Typ.mk_struct
9 years ago
Josh Berdine ad31aeb2a2 Expand Tvar to Tstruct as needed
9 years ago
Josh Berdine 8a85919001 Pass tenv to everywhere that matches on Tstruct
9 years ago
Andrzej Kotulski 97fe6275bd Simplify language detection in frontend
9 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
10 years ago
Andrzej Kotulski 1c80ba8bb7 simplify code handling default paramters
10 years ago
Andrzej Kotulski 453924f303 Add basic translation of constructors
10 years ago
Jules Villard 7d0a7568f3 put Util.list_* functions into an IList module
10 years ago
Dulma Rodriguez ba00f08f00 Remove variable resolution and use pointers to declarations instead
10 years ago
Dulma Rodriguez e49d9d6f4d Adding an outer context to the context in case of blocks
10 years ago
Andrzej Kotulski aa1951cad4 Create generic way of generating extra instructions
10 years ago
Andrzej Kotulski cb0380eb4e Update version of fcp
10 years ago
Andrzej Kotulski f01a639605 Slight improvement of block function handling
10 years ago
Andrzej Kotulski 4d10c8d9f4 Add support for C++ this expression
10 years ago
Andrzej Kotulski 2a425b8218 Add structured type_ptr
10 years ago
Andrzej Kotulski a045886eba Get better language information about functions/methods
10 years ago
Andrzej Kotulski d6b1d422fd Update fcp and remove qual_type type
10 years ago
Dulma Rodriguez e26f9b4dd4 [clang] Removing the use of raw types
10 years ago
Andrzej Kotulski e8949d16e4 [Frontend][C++] Use Sil.class for C++ class/struct/union types
10 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++)
10 years ago
Dulma Rodriguez 51e0e40bc7 [clang] [2 of 3] Dealing with custom ast expressions and flow of types in the frontend.
10 years ago
Cristiano Calcagno ea7c13ff6c [backend][cleanup] Move proc_attributes to a separate module.
10 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