/[svn]/linuxsampler/trunk/src/scriptvm/CoreVMFunctions.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/scriptvm/CoreVMFunctions.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3594 by schoenebeck, Mon Sep 2 09:03:31 2019 UTC revision 3595 by schoenebeck, Tue Sep 3 11:06:33 2019 UTC
# Line 1038  template<class T_array, // T_array is ei Line 1038  template<class T_array, // T_array is ei
1038           class T_accessor> // T_accessor is either IntArrayAccessor or RealArrayAccessor           class T_accessor> // T_accessor is either IntArrayAccessor or RealArrayAccessor
1039  class ArrElemRef : protected ArrElemPOD<T_array> {  class ArrElemRef : protected ArrElemPOD<T_array> {
1040  public:  public:
1041      typedef ScalarNmbrVal<T_value> ScalarNmbrVal;      typedef ::LinuxSampler::ScalarNmbrVal<T_value> ScalarNmbrVal; // GCC 8.x requires this very detailed form of typedef (that is ::LinuxSampler:: as prefix), IMO a GCC bug
1042    
1043      inline ArrElemRef(T_array* a, vmint index) {      inline ArrElemRef(T_array* a, vmint index) {
1044          this->m_array = a;          this->m_array = a;
# Line 1131  class ArrExprIter : public ArrElemPOD<T_ Line 1131  class ArrExprIter : public ArrElemPOD<T_
1131  public:  public:
1132      typedef std::random_access_iterator_tag iterator_category;      typedef std::random_access_iterator_tag iterator_category;
1133      typedef ssize_t difference_type;      typedef ssize_t difference_type;
1134      typedef ArrElemRef<T_array, T_value, T_accessor> ArrElemRef;      typedef ::LinuxSampler::ArrElemRef<T_array, T_value, T_accessor> ArrElemRef; // GCC 8.x requires this very detailed form of typedef (that is ::LinuxSampler:: as prefix), IMO a GCC bug
1135      typedef ArrElemRef reference; // type used by STL for access by reference      typedef ArrElemRef reference; // type used by STL for access by reference
1136      typedef void pointer; // type used by STL for -> operator result, we don't use that operator at all so just void it      typedef void pointer; // type used by STL for -> operator result, we don't use that operator at all so just void it
1137      typedef ScalarNmbrVal<T_value> value_type; // type used by STL for temporary values      typedef ScalarNmbrVal<T_value> value_type; // type used by STL for temporary values
# Line 1212  typedef ArrExprIter<VMIntArrayExpr,vmint Line 1212  typedef ArrExprIter<VMIntArrayExpr,vmint
1212  typedef ArrExprIter<VMRealArrayExpr,vmfloat,RealArrayAccessor> RealArrExprIter;  typedef ArrExprIter<VMRealArrayExpr,vmfloat,RealArrayAccessor> RealArrExprIter;
1213    
1214  // intentionally not a template function to avoid potential clashes with other (i.e. system's) swap() functions  // intentionally not a template function to avoid potential clashes with other (i.e. system's) swap() functions
1215  static inline void swap(IntArrExprIter::ArrElemRef a,  inline void swap(IntArrExprIter::ArrElemRef a,
1216                          IntArrExprIter::ArrElemRef b)                   IntArrExprIter::ArrElemRef b)
1217  {  {
1218      vmint valueA = a.getPrimValue();      vmint valueA = a.getPrimValue();
1219      vmint valueB = b.getPrimValue();      vmint valueB = b.getPrimValue();
# Line 1226  static inline void swap(IntArrExprIter:: Line 1226  static inline void swap(IntArrExprIter::
1226  }  }
1227    
1228  // intentionally not a template function to avoid potential clashes with other (i.e. system's) swap() functions  // intentionally not a template function to avoid potential clashes with other (i.e. system's) swap() functions
1229  static inline void swap(RealArrExprIter::ArrElemRef a,  inline void swap(RealArrExprIter::ArrElemRef a,
1230                          RealArrExprIter::ArrElemRef b)                   RealArrExprIter::ArrElemRef b)
1231  {  {
1232      vmfloat valueA = a.getPrimValue();      vmfloat valueA = a.getPrimValue();
1233      vmfloat valueB = b.getPrimValue();      vmfloat valueB = b.getPrimValue();

Legend:
Removed from v.3594  
changed lines
  Added in v.3595

  ViewVC Help
Powered by ViewVC