]> granicus.if.org Git - clang/commitdiff
Split buffer overflow test case into two test cases, removing out logic that was...
authorTed Kremenek <kremenek@apple.com>
Wed, 11 Nov 2009 17:17:06 +0000 (17:17 +0000)
committerTed Kremenek <kremenek@apple.com>
Wed, 11 Nov 2009 17:17:06 +0000 (17:17 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86845 91177308-0d34-0410-b5e6-96231b3b80d8

test/Analysis/rdar-6541136-region.c

index a07308f96c419d8bda7408cfa6e408cb1716687e..cb7bf3ac020eb7339fde344074130a439f493027 100644 (file)
@@ -6,17 +6,22 @@ extern kernel_tea_cheese_t _wonky_gesticulate_cheese;
 
 // This test case exercises the ElementRegion::getRValueType() logic.
 
-
-void foo( void )
-{
+void test1( void ) {
   kernel_tea_cheese_t *wonky = &_wonky_gesticulate_cheese;
   struct load_wine *cmd = (void*) &wonky[1];
   cmd = cmd;
   char *p = (void*) &wonky[1];
-  //*p = 1;  // this is also an out-of-bound access.
   kernel_tea_cheese_t *q = &wonky[1];
   // This test case tests both the RegionStore logic (doesn't crash) and
   // the out-of-bounds checking.  We don't expect the warning for now since
   // out-of-bound checking is temporarily disabled.
   kernel_tea_cheese_t r = *q; // expected-warning{{Access out-of-bound array element (buffer overflow)}}
 }
+
+void test1_b( void ) {
+  kernel_tea_cheese_t *wonky = &_wonky_gesticulate_cheese;
+  struct load_wine *cmd = (void*) &wonky[1];
+  cmd = cmd;
+  char *p = (void*) &wonky[1];
+  *p = 1;  // expected-warning{{Access out-of-bound array element (buffer overflow)}}
+}