Search

VS2012 using custom NATVIS causes LNK1201 by 762James

Closed
as Fixed Help for as Fixed

2
0
Sign in
to vote
Type: Bug
ID: 780157
Opened: 2/27/2013 2:28:22 PM
Access Restriction: Public
0
Workaround(s)
1
User(s) can reproduce this bug

As described in this earlier and extremely well written bug report (http://social.msdn.microsoft.com/Forums/en-US/vsdebug/thread/c118df4d-01b4-4e1f-9cc2-4a7626c9fe93), certain natvis definitions will cause visual studio to maintain an open reference to the pdb file for that project after debugging. This means that after debugging, I will receive LNK1201 until I restart visual studio.

I am now also experiencing the same issue and I do not use 'Synthetic' fields, meaning it wasn't just that.

So either I lose out on all nice visualization I was offered or I am stuck restarting visual studio every time I debug.
Details (expand)

Visual Studio/Team Foundation Server/.NET Framework Tooling Version

Visual Studio 2012

Steps to reproduce



* Create Class
* Create Custom NATVIS for class
* Debug Program, view class instance
* Terminate Application
* Recompile
* LNK1201 until restart of VS2012

Product Language

English

Operating System

Windows 7 SP1

Operating System Language

English

Actual results


LNK1201 after debug with custom NATVIS visualizer.

Expected results


Not getting LNK1201 after debugging with custom NATVIS visualizer.
File Attachments
File Name Submitted By Submitted On File Size  
example.cpp 2/27/2013 210 bytes
example.natvis.xml 2/27/2013 428 bytes
Sign in to post a comment.
Posted by Microsoft on 3/7/2013 at 12:49 PM
A CTP of Visual Studio 2012 Update 2 is available that should fix the issue you describe. You can download it from here: http://www.microsoft.com/en-us/download/details.aspx?id=36833#overview
Posted by 762James on 2/28/2013 at 8:35 AM
Ok, with a bit of testing I have found out that referencing the template parameters using $T1, $T2, etc... seems to trigger this... sometimes. Specifically, something like <DisplayString Name="T1">[{$T1}]</DisplayString> where template parameter 1 is an integer will cause this. Not sure if that applies to other template types as well.
Posted by Microsoft on 2/27/2013 at 11:55 PM
Thanks for your feedback.

We are rerouting this issue to the appropriate group within the Visual Studio Product Team for triage and resolution. These specialized experts will follow-up with your issue.
Posted by Microsoft on 2/27/2013 at 2:50 PM
Thank you for your feedback, we are currently reviewing the issue you have submitted. If this issue is urgent, please contact support directly(http://support.microsoft.com)
Sign in to post a workaround.