Index: src/devices/pic/pic/pic_prog_specific.h
===================================================================
--- src/devices/pic/pic/pic_prog_specific.h	(revision 1487)
+++ src/devices/pic/pic/pic_prog_specific.h	(revision 1490)
@@ -36,7 +36,7 @@
 class PicDeviceSpecific : public DeviceSpecific
 {
 public:
-  PicDeviceSpecific(Programmer::Base &base) : DeviceSpecific(base) {}
+  PicDeviceSpecific(::Programmer::Base &base) : DeviceSpecific(base) {}
   const Pic::Data &device() const { return static_cast<const Pic::Data &>(*_base.device()); }
   Result eraseRange(Pic::MemoryRangeType type);
   bool erase(bool isProtected);
@@ -78,7 +78,7 @@
   };
 
 public:
-  PicHardware(Programmer::Base &base, Port::Base *port) : Hardware(base, port) {}
+  PicHardware(::Programmer::Base &base, Port::Base *port) : Hardware(base, port) {}
   const Pic::Data &device() const { return static_cast<const Pic::Data &>(*_base.device()); }
   virtual bool readVoltages(VoltagesData &) { return true; }
   virtual Pic::TargetMode getTargetMode() { return Pic::TargetInProgramming; }
Index: src/piklab/project_manager.cpp
===================================================================
--- src/piklab/project_manager.cpp	(revision 1487)
+++ src/piklab/project_manager.cpp	(revision 1490)
@@ -526,7 +526,7 @@
     return;
   }
   PURL::FileProperties properties = PURL::DATA[type].properties;
-  Group grp;
+  Group grp = Nb_Groups;
   switch (origin) {
     case Intrinsic: grp = group(type); break;
     case Generated: grp = GeneratedGroup; break;
Index: src/piklab/prog_config_widget.cpp
===================================================================
--- src/piklab/prog_config_widget.cpp	(revision 1487)
+++ src/piklab/prog_config_widget.cpp	(revision 1490)
@@ -104,10 +104,10 @@
   _stack->setMargin(10);
   tw->addTab(_stack, i18n("Specific"));
   uint current = 0;
-  for (uint i=0; i<Programmer::lister().nbGroups(); i++) {
-    const Programmer::Group &group = Programmer::lister().group(i);
+  for (uint i=0; i< ::Programmer::lister().nbGroups(); i++) {
+    const ::Programmer::Group &group = ::Programmer::lister().group(i);
     _combo->insertItem(group.label());
-    Programmer::ConfigWidget *pcw = static_cast<const Programmer::GroupUI *>(group.gui())->createConfigWidget(_stack);
+    ::Programmer::ConfigWidget *pcw = static_cast<const ::Programmer::GroupUI *>(group.gui())->createConfigWidget(_stack);
     pcw->loadConfig();
     _stack->addWidget(pcw, i);
     GlobalConfig config;
@@ -125,7 +125,7 @@
   ::BusyCursor bc; // can take a few seconds to connect programmer...
   Port::Description pd = _portSelector->portDescription();
   uint i = _combo->currentItem();
-  bool ok = static_cast<Programmer::ConfigWidget *>(_stack->widget(i))->setPort(pd);
+  bool ok = static_cast< ::Programmer::ConfigWidget *>(_stack->widget(i))->setPort(pd);
   _portSelector->setStatus(pd.type, ok ? i18n("Connection: Ok") : i18n("Connection: Error"));
 }
 
@@ -141,12 +141,12 @@
   uint i = _combo->currentItem();
   static_cast<ConfigWidget *>(_stack->widget(i))->saveConfig();
   GlobalConfig config;
-  config.writeProgrammerGroup(Programmer::lister().group(i));
+  config.writeProgrammerGroup(::Programmer::lister().group(i));
 }
 
 void Programmer::SelectConfigWidget::programmerChanged(int i)
 {
-  _portSelector->setGroup(Programmer::lister().group(i));
+  _portSelector->setGroup(::Programmer::lister().group(i));
   _stack->raiseWidget(_stack->widget(i));
   QTimer::singleShot(0, this, SLOT(portChanged()));
 }
Index: src/piklab/gui_prog_manager.cpp
===================================================================
--- src/piklab/gui_prog_manager.cpp	(revision 1487)
+++ src/piklab/gui_prog_manager.cpp	(revision 1490)
@@ -26,10 +26,10 @@
   if ( !Manager::internalInitProgramming(debugging) ) return false;
   if ( !debugging && _programmer->isInDebugging() ) {
     if ( !askContinue(i18n("The selected operation will stop the debugging session. Continue?")) ) return false;
-    if ( !Debugger::manager->halt() ) return false;
+    if ( !::Debugger::manager->halt() ) return false;
   }
   if ( debugging && !_programmer->isInDebugging() ) {
-    if ( Debugger::manager->coff()==0 && !Debugger::manager->init() ) {
+    if ( ::Debugger::manager->coff()==0 && !::Debugger::manager->init() ) {
       sorry(i18n("Cannot start debugging without a coff file. Please compile the project."));
       return false;
     }
@@ -53,11 +53,11 @@
 
 void Programmer::GuiManager::showAdvancedDialog()
 {
-  const Programmer::GroupUI *groupui = static_cast<const Programmer::GroupUI *>(group().gui());
+  const ::Programmer::GroupUI *groupui = static_cast<const ::Programmer::GroupUI *>(group().gui());
   const Device::Data *data = Main::deviceData();
   if ( data && !group().isSupported(data->name()) ) data = 0;
   createProgrammer(data);
-  Programmer::AdvancedDialog *dialog = groupui->createAdvancedDialog(*_programmer, &Main::toplevel());
+  ::Programmer::AdvancedDialog *dialog = groupui->createAdvancedDialog(*_programmer, &Main::toplevel());
   Q_ASSERT(dialog);
   dialog->updateDisplay();
   dialog->exec();
@@ -66,6 +66,6 @@
 
 Port::Description Programmer::GuiManager::portDescription() const
 {
-  Programmer::GroupConfig config(group());
+  ::Programmer::GroupConfig config(group());
   return config.portDescription();
 }
Index: src/piklab/port_selector.cpp
===================================================================
--- src/piklab/port_selector.cpp	(revision 1487)
+++ src/piklab/port_selector.cpp	(revision 1490)
@@ -43,7 +43,8 @@
     _combos[i] = 0;
     _status[i] = 0;
     if ( !group.isPortSupported(Port::Type(i)) ) continue;
-    Port::Description pd(Port::Type(i), config.portDevice(Port::Type(i)));
+    Port::Type ptype = Port::Type(i);
+    Port::Description pd(ptype, config.portDevice(ptype));
     addPortType(pd);
   }
   _bgroup->setButton(config.portType());
Index: src/piklab-prog/cli_interactive.cpp
===================================================================
--- src/piklab-prog/cli_interactive.cpp	(revision 1487)
+++ src/piklab-prog/cli_interactive.cpp	(revision 1490)
@@ -174,7 +174,8 @@
         bool ok;
         ulong address = fromAnyLabel(words[2], &ok);
         if ( !ok ) return errorExit(i18n("Number format not recognized"), ARG_ERROR);
-        Breakpoint::Data data(PURL::Url(), address);
+        PURL::Url dummy;
+        Breakpoint::Data data(dummy, address);
         if ( Breakpoint::list().contains(data) ) return okExit(i18n("Breakpoint already set at %1").arg(toHexLabel(address, nbChars(Number::Hex, address))));
         Breakpoint::list().append(data);
         Breakpoint::list().setAddress(data, address);
Index: src/piklab-prog/cli_prog_manager.cpp
===================================================================
--- src/piklab-prog/cli_prog_manager.cpp	(revision 1487)
+++ src/piklab-prog/cli_prog_manager.cpp	(revision 1490)
@@ -19,7 +19,7 @@
   Log::Base *log = const_cast<Log::Base *>(static_cast<const Log::Base *>(this));
   if ( CommandLine::_port.isEmpty() ) {
     log->log(Log::Information, i18n("Using port from configuration file."));
-    Programmer::GroupConfig config(group());
+    ::Programmer::GroupConfig config(group());
     return config.portDescription();
   }
   if ( CommandLine::_port=="usb" ) return Port::Description(Port::USBType, QString::null);
@@ -42,10 +42,10 @@
 {
   if ( !Manager::internalInitProgramming(debugging) ) return false;
   if ( !debugging && _programmer->isInDebugging() ) {
-    if ( !Debugger::manager->halt() ) return false;
+    if ( !::Debugger::manager->halt() ) return false;
   }
   if ( debugging && !_programmer->isInDebugging() ) {
-    if ( Debugger::manager->coff()==0 && !Debugger::manager->init() ) log(Log::Warning, i18n("Starting debug session without coff file (no source file information)."));
+    if ( ::Debugger::manager->coff()==0 && !::Debugger::manager->init() ) log(Log::Warning, i18n("Starting debug session without coff file (no source file information)."));
     if ( !(group().properties() & Programmer::Software) ) log(Log::Warning, i18n("Starting debugging session with device memory in an unknown state. You may want to reprogram the device."));
   }
   return true;
Index: src/progs/gui/prog_group_ui.cpp
===================================================================
--- src/progs/gui/prog_group_ui.cpp	(revision 1487)
+++ src/progs/gui/prog_group_ui.cpp	(revision 1490)
@@ -100,7 +100,7 @@
     s = i18n("This device has no calibration information.");
   else if ( !_base.group().isSupported(data->name()) ) s = i18n("The selected device is not supported by this programmer.");
   else {
-    const Programmer::PicBase &pbase = static_cast<const Programmer::PicBase &>(_base);
+    const ::Programmer::PicBase &pbase = static_cast<const ::Programmer::PicBase &>(_base);
     _calEditor = new StandaloneMemoryCalibrationEditor(pbase.deviceMemory(), _calibrationContainer);
     connect(_calEditor, SIGNAL(updateCalibration()), SLOT(updateCalibration()));
     connect(_calEditor, SIGNAL(regenerate()), SLOT(regenerateCalibration()));
@@ -167,7 +167,7 @@
 void Programmer::AdvancedDialog::updateCalibration()
 {
   ::BusyCursor bc;
-  if ( ensureConnected() ) static_cast<Programmer::PicBase &>(_base).readCalibration();
+  if ( ensureConnected() ) static_cast< ::Programmer::PicBase &>(_base).readCalibration();
   updateDisplay();
 }
 
Index: src/progs/gui/prog_group_ui.h
===================================================================
--- src/progs/gui/prog_group_ui.h	(revision 1487)
+++ src/progs/gui/prog_group_ui.h	(revision 1490)
@@ -76,12 +76,12 @@
 class GroupUI : public ::GroupUI
 {
 public:
-  virtual Programmer::ConfigWidget *createConfigWidget(QWidget *parent) const = 0;
+  virtual ::Programmer::ConfigWidget *createConfigWidget(QWidget *parent) const = 0;
   virtual bool hasAdvancedDialog() const = 0;
   virtual AdvancedDialog *createAdvancedDialog(Base &base, QWidget *parent) const = 0;
 };
 
-inline const Programmer::GroupUI &groupui(const Programmer::Base &base) { return static_cast<const Programmer::GroupUI &>(*base.group().gui()); }
+inline const ::Programmer::GroupUI &groupui(const ::Programmer::Base &base) { return static_cast<const ::Programmer::GroupUI &>(*base.group().gui()); }
 
 } // namespace
 
Index: src/progs/base/prog_specific.h
===================================================================
--- src/progs/base/prog_specific.h	(revision 1487)
+++ src/progs/base/prog_specific.h	(revision 1490)
@@ -22,11 +22,11 @@
 class DeviceSpecific : public Log::Base
 {
 public:
-  DeviceSpecific(Programmer::Base &base);
+  DeviceSpecific(::Programmer::Base &base);
   virtual bool setTargetPowerOn(bool on) = 0;
 
 protected:
-  Programmer::Base &_base;
+  ::Programmer::Base &_base;
 
   virtual bool setPowerOff() = 0;
   virtual bool setPowerOn() = 0;
@@ -36,7 +36,7 @@
 class Hardware : public Log::Base
 {
 public:
-  Hardware(Programmer::Base &base, Port::Base *port);
+  Hardware(::Programmer::Base &base, Port::Base *port);
   virtual ~Hardware();
   Port::Description portDescription() const { return _port->description(); }
   bool connectHardware();
@@ -46,7 +46,7 @@
 
 protected:
   Port::Base       *_port;
-  Programmer::Base &_base;
+  ::Programmer::Base &_base;
 
   virtual bool internalConnectHardware() = 0;
   virtual void internalDisconnectHardware() {}
Index: src/progs/base/prog_group.cpp
===================================================================
--- src/progs/base/prog_group.cpp	(revision 1487)
+++ src/progs/base/prog_group.cpp	(revision 1490)
@@ -36,7 +36,7 @@
   return base;
 }
 
-Debugger::Base *Programmer::Group::createDebugger(Programmer::Base &base) const
+Debugger::Base *Programmer::Group::createDebugger(::Programmer::Base &base) const
 {
   ::Debugger::Base *dbase = createDebuggerBase(base);
   if (dbase) {
Index: src/progs/base/generic_prog.h
===================================================================
--- src/progs/base/generic_prog.h	(revision 1487)
+++ src/progs/base/generic_prog.h	(revision 1490)
@@ -50,7 +50,7 @@
   const Device::Data *device() const { return _device; }
   const Group &group() const { return _group; }
   Hardware *hardware() { return _hardware; }
-  Debugger::Base *debugger() { return _debugger; }
+  ::Debugger::Base *debugger() { return _debugger; }
   virtual uint maxNbBreakpoints() const { return 1; }
   virtual uint runUpdateWait() const { return 300; }
 
@@ -91,7 +91,7 @@
   Hardware           *_hardware;
   DeviceSpecific     *_specific;
   const Device::Data *_device;
-  Debugger::Base     *_debugger;
+  ::Debugger::Base     *_debugger;
   State               _state;
   enum TargetPowerState { FromConfig, SelfPowered, NotSelfPowered };
   TargetPowerState    _targetPowerState;
Index: src/progs/manager/prog_manager.cpp
===================================================================
--- src/progs/manager/prog_manager.cpp	(revision 1487)
+++ src/progs/manager/prog_manager.cpp	(revision 1490)
@@ -75,7 +75,7 @@
 
 void Programmer::Manager::endProgramming()
 {
-  Debugger::manager->update();
+  ::Debugger::manager->update();
   setState(Idle);
 }
 
@@ -123,11 +123,11 @@
 {
   if ( !initProgramming(false) ) return false;
   _programmer->disconnectHardware();
-  if ( !Debugger::manager->prepareDebugging() ) return false;
+  if ( !::Debugger::manager->prepareDebugging() ) return false;
   bool ok = _programmer->connectDevice();
   if ( ok && (group().properties() & Software) && (group().properties() & Debugger) ) {
     ok = _programmer->debugger()->init();
-    if (ok) Debugger::manager->update();
+    if (ok) ::Debugger::manager->update();
   }
   endProgramming();
   return ok;
@@ -155,7 +155,7 @@
 {
   bool debugger = group().isDebugger();
   if ( !initProgramming(debugger) ) return false;
-  bool ok = (debugger ? Debugger::manager->run() : _programmer->run());
+  bool ok = (debugger ? ::Debugger::manager->run() : _programmer->run());
   setState(Idle);
   return ok;
 }
@@ -164,7 +164,7 @@
 {
   bool debugger = group().isDebugger();
   if (!debugger) log(Log::Information, i18n("Stop."));
-  bool ok = (debugger ? Debugger::manager->halt() : _programmer->stop());
+  bool ok = (debugger ? ::Debugger::manager->halt() : _programmer->stop());
   if (debugger) setState(Idle);
   else endProgramming();
   return ok;
@@ -174,10 +174,10 @@
 {
   bool ok;
   if (group().isDebugger()) {
-    if ( _programmer->state()==Programmer::NotConnected || _programmer->state()==Programmer::Stopped ) return step();
+    if ( _programmer->state()==::Programmer::NotConnected || _programmer->state()==::Programmer::Stopped ) return step();
     if ( !initProgramming(true) ) return false;
     log(Log::Information, i18n("Reset."));
-    ok = Debugger::manager->reset();
+    ok = ::Debugger::manager->reset();
     setState(Idle);
   } else {
     log(Log::Information, i18n("Restart..."));
@@ -192,7 +192,7 @@
 bool Programmer::Manager::step()
 {
   if ( !initProgramming(true) ) return false;
-  bool ok = Debugger::manager->step();
+  bool ok = ::Debugger::manager->step();
   setState(Idle);
   return ok;
 }
