code: def declare_label(self, id_, lineno):
          
          # TODO: consider to make labels private
          id1 = id_
          id_ = str(id_)
  
          if not self.check_is_undeclared(id_, lineno, 'label'):
              entry = self.get_entry(id_)
              syntax_error(lineno, "Label '%s' already used at %s:%i" %
                           (id_, entry.filename, entry.lineno))
              return entry
  
          entry = self.get_entry(id_)
          if entry is not None and entry.declared:
              if entry.is_line_number:
                  syntax_error(lineno, "Duplicated line number '%s'. "
                                       "Previous was at %i" % (entry.name, entry.lineno))
              else:
                  syntax_error(lineno, "Label '%s' already declared at line %i" %
                               (id_, entry.lineno))
              return None
  
          entry = (self.get_entry(id_, scope=self.current_scope) or
                   self.get_entry(id_, scope=self.global_scope) or
                   self.declare(id_, lineno, symbols.LABEL(id_, lineno)))
          if entry is None:
              return None
  
          if not isinstance(entry, symbols.LABEL):
              entry = symbols.VAR.to_label(entry)
  
          if id_[0] == '.':
              id_ = id_[1:]
              # HINT: ??? Mangled name. Just the label, 'cause it starts with '.'
              entry.mangled = '%s' % id_
          else:
              # HINT: Mangled name. Labels are __LABEL__
              entry.mangled = '__LABEL__%s' % entry.name
  
          entry.is_line_number = isinstance(id1, int)
  
          if global_.FUNCTION_LEVEL:
              entry.scope_owner = list(global_.FUNCTION_LEVEL)
  
          self.move_to_global_scope(id_)  # Labels are always global # TODO: not in the future
          entry.declared = True
          entry.type_ = self.basic_types[global_.PTR_TYPE]
          return entry
docs: Declares a label (line numbers are also labels).
              Unlike variables, labels are always global.