With Juce 2.1.3, I'm currently puzzled as to why juce_data_structures.cpp, juce_events.cpp and juce_gui_basics.cpp refuse to compile with JUCE_DLL_BUILD=1 (VC 2010 project also inherits _WINDLL and _MBCS), while everything is fine for much similar EXE builds.
This last worked without problems with Juce 2.0.32, so the projects should be configured properly.
The errors are related to ContainerDeletePolicy, with the following error variants being reported:
C2248: "juce::ValueTree::SharedObject": can not access private class declared in juce::ValueTree
C2248: "juce::PopupMenu::HelperClasses": can not access private struct declared in juce::PopupMenu
C2248: "juce::MultiTimer::MultiTimerCallback": can not access private struct declared in juce::MultiTimer
(not sure if my translation of the MSVC message to English is correct)
What really bugs me is how this could depend on DLL or not.