Clang-KeyPathValidator icon indicating copy to clipboard operation
Clang-KeyPathValidator copied to clipboard

Early exploration in a clang plugin for checking Cocoa KVC/KVO key paths

Results 9 Clang-KeyPathValidator issues
Sort by recently updated
recently updated
newest added

http://llvm.org/docs/CommandGuide/lit.html http://llvm.org/docs/TestingGuide.html

(Related to #5) Can the plugin add _only_ the key path warnings, instead of overwriting all diagnostics? Can we compile / run the verification as a separate pass without the...

Currently warnings only show when explicitly building. Does creating an `xcspec` and/or `xcplugin` improve this? http://railsware.com/blog/2014/02/28/creation-and-using-clang-plugin-with-xcode/

The analyzer can perform more detailed analysis, possibly checking some forms of non-literal key paths. Can we validate this? ``` NSString *s = @"key"; [self valueForKey:s]; ``` Can we validate...

Is this possible without generating a ton of spurious warnings?

Like this does: https://github.com/jmah/Clang-OrphanedKPA

https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/KeyValueCoding/Articles/DataTypes.html#//apple_ref/doc/uid/20002171-SW2

Methods should be decorated with two types of attributes: 1. Argument n is a key path relative to the receiver (e.g. `valueForKeyPath:`) 2. Argument n is a key path relative...