; RUN: analyze %s -datastructure-gc -dsgc-dspass=td -dsgc-check-flags=X:GM %G = internal global int 5 implementation internal void %leaf(int *%X) { store int 0, int* %X ret void } internal void %leaf2(int* %X) { ret void } internal void %intermediate(void(int*)* %Fn, int* %Ptr) { call void %Fn(int* %Ptr) ret void } int %main() { call void %intermediate(void(int*)* %leaf, int* %G) call void %intermediate(void(int*)* %leaf2, int* %G) call void %intermediate(void(int*)* %leaf, int* %G) call void %intermediate(void(int*)* %leaf2, int* %G) ret int 0 }