func: static void goodG2B() int * data ; CWE122_Heap_Based_Buffer_Overflow__c_CWE805_int_loop_34_unionType myUnion ; data = NULL; data = ( int * ) malloc ( 100 * sizeof ( int ) ); myUnion . unionFirst = data; int * data = myUnion . unionSecond ; int source [ 100 ] = { 0 } ; size_t i ; for (i = 0; i < 100; i++) data [ i ] = source [ i ]; free ( data ); 