View Issue Details

IDProjectCategoryView StatusLast Update
0026262CommunityOCCT:Foundation Classespublic2015-10-23 20:51
Reportersraymond Assigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformMacOSOS 
Product Version6.9.0 
Target Version6.9.1Fixed in Version6.9.1 
Summary0026262: mixing qvector.h and math_Memory.hxx won't compile
DescriptionCompiling a project involving qt5.4 and occt6.9.0, if using a qvector raise this error:

call to 'memmove' is ambiguous
            memmove(i, b, (d->size - offset) * sizeof(T));
            ^~~~~~~

The issue is that qvecor.h (L649) calls memmove coming from string.h (system's header)
Whereas in the file /inc/math_Memory.hxx from occt, this function is also defined for other OS but Windows.
// uniquement parce que memmove n'existe pas sur SUN
#ifndef WNT
void *reverse_move(void *s1, void *s2, int size);

inline void *memmove(void *s1, void *s2, int size) {

/*
     void *result;

     if(s2 < s1) {
       result = reverse_move(s1, s2, size);
     }
     else {
       result = memcpy(s1, s2, size);
     }
     return result;
*/
     return memcpy(s1, s2, size);
   }
#endif

As this definition seems to be intended only for sun and as this OS doesn't seems to be supported anymore, maybe this portion of code should be suppressed. As for now deleting it never have affecter my applications.
Steps To ReproduceN/A
TagsNo tags attached.
Test case number

Activities

git

2015-05-25 11:22

administrator   ~0041479

Branch CR26262 has been created by abv.

SHA-1: 4fa6ee0d3583e8eb97c467f95beb9f4cc29a40b9


Detailed log of new commits:

Author: abv
Date: Mon May 25 11:21:59 2015 +0300

    0026262: mixing qvector.h and math_Memory.hxx won't compile
    
    Files math_Memory.cxx and .hxx removed: function memmove() should be available on all modern platforms in standard C library

abv

2015-05-25 11:23

manager   ~0041480

Please check compilation on all supported compilers (I have checked only VC10 x64)

bugmaster

2015-05-26 10:34

administrator   ~0041538

Fix has been tested on all platforms under support :

http://jenkins-merge.nnov.opencascade.com:8080/job/inv_OCCT_CR26262_Products_master_release/

REsult is OK

git

2015-07-27 13:34

administrator   ~0043504

Branch CR26262 has been deleted by kgv.

SHA-1: 4fa6ee0d3583e8eb97c467f95beb9f4cc29a40b9

Related Changesets

occt: master 51840f69

2015-05-25 08:21:59

abv


Committer: bugmaster Details Diff
0026262: mixing qvector.h and math_Memory.hxx won't compile

Files math_Memory.cxx and .hxx removed: function memmove() should be available on all modern platforms in standard C library
Affected Issues
0026262
mod - src/BlendFunc/BlendFunc_Tensor.cxx Diff File
mod - src/math/FILES Diff File
mod - src/math/math_DoubleTab.cxx Diff File
mod - src/math/math_DoubleTab.lxx Diff File
rm - src/math/math_Memory.cxx Diff File
rm - src/math/math_Memory.hxx Diff File
mod - src/math/math_SingleTab.hxx Diff File

Issue History

Date Modified Username Field Change
2015-05-23 14:17 sraymond New Issue
2015-05-23 14:17 sraymond Assigned To => abv
2015-05-25 11:22 git Note Added: 0041479
2015-05-25 11:22 abv Status new => resolved
2015-05-25 11:22 abv Steps to Reproduce Updated
2015-05-25 11:23 abv Note Added: 0041480
2015-05-25 11:23 abv Assigned To abv => bugmaster
2015-05-25 11:23 abv Status resolved => reviewed
2015-05-25 12:09 kgv Target Version => 7.0.0
2015-05-25 12:15 mkv Assigned To bugmaster => mkv
2015-05-25 13:36 bugmaster Assigned To mkv => bugmaster
2015-05-26 10:34 bugmaster Note Added: 0041538
2015-05-26 10:34 bugmaster Status reviewed => tested
2015-05-29 14:15 bugmaster Changeset attached => occt master 51840f69
2015-05-29 14:15 bugmaster Status tested => verified
2015-05-29 14:15 bugmaster Resolution open => fixed
2015-07-27 13:34 git Note Added: 0043504
2015-08-26 11:11 abv Target Version 7.0.0 => 6.9.1
2015-10-16 14:56 aiv Status verified => closed
2015-10-23 20:51 aiv Fixed in Version => 6.9.1