]> www.ginac.de Git - ginac.git/blobdiff - ginac/utils.h
Remove iter_swap specializations.
[ginac.git] / ginac / utils.h
index 2f7eb26f70a1b2bdc1d8ce7dd6612291c7bc8204..692c731453fa371f699767f0fa7f7d972d3889bd 100644 (file)
@@ -4,7 +4,7 @@
  *  of any interest to the user of the library. */
 
 /*
- *  GiNaC Copyright (C) 1999-2010 Johannes Gutenberg University Mainz, Germany
+ *  GiNaC Copyright (C) 1999-2015 Johannes Gutenberg University Mainz, Germany
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
@@ -49,7 +49,7 @@ class dunno {};
 unsigned log2(unsigned n);
 
 /** Rotate bits of unsigned value by one bit to the left.
-  * This can be necesary if the user wants to define its own hashes. */
+  * This can be necessary if the user wants to define its own hashes. */
 inline unsigned rotate_left(unsigned n)
 {
        return (n & 0x80000000U) ? (n << 1 | 0x00000001U) : (n << 1);
@@ -108,6 +108,7 @@ inline unsigned golden_ratio_hash(p_int n)
 template <class It>
 int permutation_sign(It first, It last)
 {
+       using std::swap;
        if (first == last)
                return 0;
        --last;
@@ -122,7 +123,7 @@ int permutation_sign(It first, It last)
                bool swapped = false;
                while (i != first) {
                        if (*i < *other) {
-                               std::iter_swap(other, i);
+                               swap(*other, *i);
                                flag = other;
                                swapped = true;
                                sign = -sign;
@@ -143,7 +144,7 @@ int permutation_sign(It first, It last)
                swapped = false;
                while (i != last) {
                        if (*other < *i) {
-                               std::iter_swap(i, other);
+                               swap(*i, *other);
                                flag = other;
                                swapped = true;
                                sign = -sign;