[cfe-dev] printf

Kim Gadecki via cfe-dev cfe-dev at lists.llvm.org
Wed Sep 27 13:34:54 PDT 2017


Hello,

I've been working on a run time linking system for C++ in windows x86 
which uses clang and llvm. As part of the run time linking system some 
system libraries like printf are linked into code which is loaded into 
memory dynamically at run time (the address of the external function is 
written in at the call site as you would expect for function 
relocations). I ran into a problem where printf stopped working 
correctly in the dynamically linked code. I recently updated llvm to the 
latest repo version and printf has somehow started working again. I 
don't understand how this is possible. Because as far as I know, the 
system function printf has nothing to do with the version of llvm or 
clang being used and I didn't change anything else. printf is imported 
from msvcrt.lib. How can the integrity of this function in the library 
msvcrt be affected by updating the llvm/clang code? I'm sure that it 
isn't possible. Anyone have any ideas or theories about how this could 
have happened?

Cheers,

Kim




More information about the cfe-dev mailing list