Mercurial > hg > CbC > CbC_llvm
view clang/test/Analysis/keychainAPI-diagnostic-visitor.m @ 236:c4bab56944e8 llvm-original
LLVM 16
author | kono |
---|---|
date | Wed, 09 Nov 2022 17:45:10 +0900 |
parents | 1d019706d866 |
children |
line wrap: on
line source
// RUN: %clang_analyze_cc1 -triple x86_64-apple-darwin10 -analyzer-checker=osx.SecKeychainAPI -analyzer-output=text -verify %s // This file is for testing enhanced diagnostics produced by the default SecKeychainAPI checker. typedef unsigned int OSStatus; typedef unsigned int SecKeychainAttributeList; typedef unsigned int SecKeychainItemRef; typedef unsigned int SecItemClass; typedef unsigned int UInt32; enum { noErr = 0, GenericError = 1 }; OSStatus SecKeychainItemCopyContent ( SecKeychainItemRef itemRef, SecItemClass *itemClass, SecKeychainAttributeList *attrList, UInt32 *length, void **outData ); void DellocWithCFStringCreate4(void) { unsigned int *ptr = 0; OSStatus st = 0; UInt32 length; char *bytes; char *x; st = SecKeychainItemCopyContent(2, ptr, ptr, &length, (void **)&bytes); // expected-note {{Data is allocated here}} x = bytes; if (st == noErr) // expected-note {{Assuming 'st' is equal to noErr}} // expected-note{{Taking true branch}} x = bytes;; length++; // expected-warning {{Allocated data is not released}} // expected-note{{Allocated data is not released}} }