View Issue Details

IDProjectCategoryView StatusLast Update
0005212ScribusInternalpublic2008-05-01 09:08
Reportercbradney Assigned Tocbradney  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version1.3.4cvs 
Fixed in Version1.3.5svn 
Summary0005212: Issues with dereferencing type-punned pointer
DescriptionScribus/scribus/scimage.cpp:741: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/smtextstylewidgets.cpp:33: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/smtextstylewidgets.cpp:38: warning: dereferencing type-punned pointer will break strict-aliasing rules

Scribus/scribus/plugins/scriptplugin/cmddoc.cpp: In function 'PyObject* scribus_opendoc(PyObject*, PyObject*)':
Scribus/scribus/plugins/scriptplugin/cmddoc.cpp:154: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmddoc.cpp:155: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmddoc.cpp: In function 'PyObject* scribus_savedocas(PyObject*, PyObject*)':
Scribus/scribus/plugins/scriptplugin/cmddoc.cpp:180: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmddoc.cpp:181: warning: dereferencing type-punned pointer will break strict-aliasing rules
[ 95%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdgetprop.o
[ 95%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdgetsetprop.o
Scribus/scribus/plugins/scriptplugin/cmdgetsetprop.cpp: In function 'PyObject* scribus_setproperty(PyObject*, PyObject*, PyObject*)':
Scribus/scribus/plugins/scriptplugin/cmdgetsetprop.cpp:377: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmdgetsetprop.cpp:379: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmdgetsetprop.cpp:391: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmdgetsetprop.cpp:393: warning: dereferencing type-punned pointer will break strict-aliasing rules
[ 95%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdmani.o
[ 95%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdmisc.o
Scribus/scribus/plugins/scriptplugin/cmdmisc.cpp: In function 'PyObject* scribus_renderfont(PyObject*, PyObject*, PyObject*)':
Scribus/scribus/plugins/scriptplugin/cmdmisc.cpp:139: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmdmisc.cpp:140: warning: dereferencing type-punned pointer will break strict-aliasing rules
[ 95%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdobj.o
[ 95%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdpage.o
Scribus/scribus/plugins/scriptplugin/cmdpage.cpp: In function 'PyObject* scribus_savepageeps(PyObject*, PyObject*)':
Scribus/scribus/plugins/scriptplugin/cmdpage.cpp:59: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/cmdpage.cpp:60: warning: dereferencing type-punned pointer will break strict-aliasing rules
[ 96%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdsetprop.o
[ 96%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdtext.o
[ 96%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/cmdutil.o
[ 96%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/guiapp.o
[ 96%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/objimageexport.o
Scribus/scribus/plugins/scriptplugin/objimageexport.cpp: In function 'PyObject* ImageExport_save(ImageExport*)':
Scribus/scribus/plugins/scriptplugin/objimageexport.cpp:159: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/objimageexport.cpp:160: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/objimageexport.cpp: In function 'PyObject* ImageExport_saveAs(ImageExport*, PyObject*)':
Scribus/scribus/plugins/scriptplugin/objimageexport.cpp:188: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/objimageexport.cpp:189: warning: dereferencing type-punned pointer will break strict-aliasing rules
[ 96%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/objpdffile.o
[ 96%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/objprinter.o
[ 97%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/pconsole.o
[ 97%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/runscriptdialog.o
[ 97%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/scriptercore.o
[ 97%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/scripterprefsgui.o
[ 97%] Building CXX object scribus/plugins/scriptplugin/CMakeFiles/scriptplugin.dir/scriptplugin.o
Scribus/scribus/plugins/scriptplugin/scriptplugin.cpp: In function 'void initscribus(ScribusMainWindow*)':
Scribus/scribus/plugins/scriptplugin/scriptplugin.cpp:497: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/scriptplugin.cpp:499: warning: dereferencing type-punned pointer will break strict-aliasing rules
Scribus/scribus/plugins/scriptplugin/scriptplugin.cpp:501: warning: dereferencing type-punned pointer will break strict-aliasing rules
TagsNo tags attached.
Patch

Relationships

related to 0005211 closedfschmid Issues with dereferencing type-punned pointer 

Activities

cbradney

2007-01-23 20:41

administrator   ~0014969

Warnings are gone from scimage and friends in 1.3.x too. Need to check for more

subik

2007-02-25 11:33

manager   ~0015394

It looks like Python code is causing this. PyDevels advice: "use -fno-strict-aliasing to the compiler flags,
when compiling with gcc-3.3 or up". No real fix due their "compiler independency"

cbradney

2007-02-25 12:53

administrator   ~0015397

Yeah, which we arent going to do at this point, as a distro can override them anyway. Need to find a better solution when we rewrite scripter

subik

2008-04-09 07:23

manager   ~0019424

the scripter is fixed as is possible now. Remaining 6(?) warnings cannot be fixed in this code (read: I don't know how to do it). Let's hope the new scripting will be done in this year's GSoC ;)

cbradney

2008-04-13 11:33

administrator   ~0019468

subik, can we use PyObject_IsTrue(objValue) to clean these last ones up in cmdgetsetprop.cpp?

subik

2008-04-14 08:42

manager   ~0019484

Last edited: 2008-04-14 08:43

cbradney: you're right. It should be fixed now.

There are 3 occurences left:

scriptplugin.cpp: PyModule_AddObject(m, (char*)"Printer", (PyObject *) &Printer_Type);

etc. - it's the "(PyObject *) &Printer_Type"

cbradney

2008-04-14 19:19

administrator   ~0019486

If PrinterType is PyTypeObject, is that cast even correct? http://docs.python.org/ext/dnt-basics.html indicates it is.. :(

cbradney

2008-04-17 22:01

administrator   ~0019502

I going to resolve this - we are using the documented methods, and there only 4 left. We will just have to hope scripterng fixes them in a different way to our current implementation.

Issue History

Date Modified Username Field Change
2007-01-21 14:01 cbradney New Issue
2007-01-21 14:02 cbradney Relationship added related to 0005211
2007-01-23 20:41 cbradney Note Added: 0014969
2007-02-25 11:33 subik Note Added: 0015394
2007-02-25 12:53 cbradney Note Added: 0015397
2008-04-09 07:23 subik Note Added: 0019424
2008-04-13 11:33 cbradney Note Added: 0019468
2008-04-14 08:42 subik Note Added: 0019484
2008-04-14 08:43 subik Note Edited: 0019484
2008-04-14 19:19 cbradney Note Added: 0019486
2008-04-17 22:01 cbradney Status new => resolved
2008-04-17 22:01 cbradney Fixed in Version => 1.3.5svn
2008-04-17 22:01 cbradney Resolution open => fixed
2008-04-17 22:01 cbradney Assigned To => cbradney
2008-04-17 22:01 cbradney Note Added: 0019502
2008-05-01 09:08 cbradney Status resolved => closed