Index: lib/Lex/Preprocessor.cpp
===================================================================
--- lib/Lex/Preprocessor.cpp	(revision 53785)
+++ lib/Lex/Preprocessor.cpp	(working copy)
@@ -172,7 +172,7 @@
   SourceLocation LogLoc = SourceMgr.getLogicalLoc(Loc);
   llvm::cerr << SourceMgr.getSourceName(LogLoc) << ':'
              << SourceMgr.getLineNumber(LogLoc) << ':'
-             << SourceMgr.getLineNumber(LogLoc);
+             << SourceMgr.getColumnNumber(LogLoc);
   
   SourceLocation PhysLoc = SourceMgr.getPhysicalLoc(Loc);
   if (PhysLoc != LogLoc) {
Index: test/Preprocessor/dumptokens_phyloc.c
===================================================================
--- test/Preprocessor/dumptokens_phyloc.c	(revision 0)
+++ test/Preprocessor/dumptokens_phyloc.c	(revision 0)
@@ -0,0 +1,5 @@
+// RUN: clang -dumptokens %s 2>&1 | grep "PhysLoc=[_.a-zA-Z]*:3:20"
+
+#define TESTPHYLOC 10
+
+TESTPHYLOC
