A vulnerability was found in gcc. There is a variable ksize storing the amount of allocated memory for the array ktypevec. ksize being zero (0) indicates that some memory must be allocated upon the first write. When more memory is needed, both ksize and the memory are doubled during reallocation. At some point the memory for the array is freed (in squangle_mop_up) but the value of ksize remains. Since ksize is not 0, there is no indication that new memory must be allocated when there is another write to the array. This allows a malicious attacker to write arbitrary content to freed memory. External references: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70481 Upstream fix: https://gcc.gnu.org/ml/gcc-patches/2016-03/msg01687.html http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-4488