The PDB files are regenerated everytime you compile in Debug mode. Therefore, they will be out of date. I beleive if there is a version update with the compile, then the system will recognize they are out of date. They contain the symbols, making it easier to debug since you Program can still be debugged, but you will see the IL code, and there will be no way to associate to the original source file.
From the microsoft site:
The .PDB extension stands for "program database." It holds the new format for storing debugging information that was introduced in Visual C++ version 1.0. In the future, the .PDB file will also hold other project state information. One of the most important motivations for the change in format was to allow incremental linking of debug versions of programs, a change first introduced in Visual C++ version 2.0.
Note: the location of the Microsoft site with this information is
http://support.microsoft.com/kb/121366[
^]
There are quite a few other places to get information. The actual format of the PDB file is actually a microsoft secret, so you must use Microsoft tools to get visibility into this format.