171 Commits (523c2f539b8fc93525a76c4f374dbb64dcdde79b)

Author SHA1 Message Date
Jeremy Dubreil 4bca15afff [infer][backend] Add the distinction between models and regular procedure as part of the attributes
8 years ago
Josh Berdine 7834c95bc8 Silence deprecation warnings
8 years ago
Josh Berdine e438314776 Divide Utils into Utils, Pp, and IStd
8 years ago
Josh Berdine de2e6c9d88 Core.Std.Option
8 years ago
Cristiano Calcagno c5159bae1c [IR] Move Procdesc module to a separate file.
8 years ago
Cristiano Calcagno e933ee958a [IR] Rearrange the cfg module to make nodes, procd descs, and cfgs independent types.
8 years ago
Josh Berdine e747d21e0c [refactor] Rename CTypes and CTypes_decl modules
8 years ago
Cristiano Calcagno 3fb8801b6c [IR] Change cfg representation so the node number is per-procedure and not per-cfg
8 years ago
Cristiano Calcagno ecda199e9d [IR] Clean up unused parts of Cfg
8 years ago
Jules Villard 5fe40bae12 [siof] check origin of globals and complain if potential siof
8 years ago
Jules Villard c53bfe3159 [clang] rewrite plugin attachment logic in OCaml
8 years ago
Jules Villard d9f83094b5 [clang] do not depend on Config.clang_lang and Config.source_file
8 years ago
Dulma Churchill befab1007b [clang] Migrating clang logging to the Logging module
8 years ago
Josh Berdine 44e2c32524 [IR] Refactor annotation types into separate module
8 years ago
Dulma Churchill a2ee69975a [clang] Remove support for logging lint issues in procdescs
8 years ago
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
8 years ago
Jules Villard 7603395ee9 qual_type fields are namespaced now
8 years ago
Jules Villard 3b3f587652 update fcp to have qualifiers in ValueDecl types
8 years ago
Josh Berdine c147ab4197 Refactor Sil.attribute and associates to PredSymb
8 years ago
Josh Berdine 32146523ca Enable warning: Unexpected documentation comment
8 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