FLTK logo

STR #2439

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 Home  |  Articles & FAQs  |  Bugs & Features  |  Documentation  |  Download  |  Screenshots  ]
 

Return to Bugs & Features | Roadmap 1.3 | SVN ⇄ GIT ]

STR #2439

Application:FLTK Library
Status:1 - Closed w/Resolution
Priority:4 - High, e.g. key functionality not working
Scope:2 - Specific to an operating system
Subsystem:Test Framework
Summary:Building fltk 1.3.x r7817 core dumps the SGI compiler
Version:1.3-current
Created By:greg.ercolano
Assigned To:matt
Fix Version:1.3.0 (SVN: v7828)
Update Notification:

Receive EMails Don't Receive EMails

Trouble Report Files:

No files


Trouble Report Comments:


Name/Time/Date Text  
 
#1 greg.ercolano
09:43 Nov 11, 2010
Compiler dies (segfaults!) while building the text editor test program. I turned off '.SILENT' so that the compiler flags can be seen. All errors included (including "remarks")
----
echo Compiling editor.cxx...
Compiling editor.cxx...
"../FL/Fl_Browser_.H", line 141: remark(3201): parameter "item" was never
          referenced
    virtual const char *item_text(void *item) const { return 0L; }
                                        ^

"../FL/Fl_Browser_.H", line 147: remark(3201): parameter "a" was never
          referenced
    virtual void item_swap(void *a,void *b) { }
                                 ^

"../FL/Fl_Browser_.H", line 147: remark(3201): parameter "b" was never
          referenced
    virtual void item_swap(void *a,void *b) { }
                                         ^

"../FL/Fl_Browser_.H", line 154: remark(3201): parameter "index" was never
          referenced
    virtual void *item_at(int index) const { return 0L; }
                              ^

"../FL/Fl_Native_File_Chooser_FLTK.H", line 83: remark(1201): trailing comma
          is nonstandard
      PREVIEW        = 0x0004,          ///< enable preview mode
                             ^

"../FL/Fl_Device.H", line 272: remark(3201): parameter "rgb" was never
          referenced
    virtual   void draw(Fl_RGB_Image * rgb,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                       ^

"../FL/Fl_Device.H", line 272: remark(3201): parameter "XP" was never
          referenced
    virtual   void draw(Fl_RGB_Image * rgb,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                               ^

"../FL/Fl_Device.H", line 272: remark(3201): parameter "YP" was never
          referenced
    virtual   void draw(Fl_RGB_Image * rgb,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                       ^

"../FL/Fl_Device.H", line 272: remark(3201): parameter "WP" was never
          referenced
    virtual   void draw(Fl_RGB_Image * rgb,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                               ^

"../FL/Fl_Device.H", line 272: remark(3201): parameter "HP" was never
          referenced
    virtual   void draw(Fl_RGB_Image * rgb,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                       ^

"../FL/Fl_Device.H", line 272: remark(3201): parameter "cx" was never
          referenced
    virtual   void draw(Fl_RGB_Image * rgb,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                               ^

"../FL/Fl_Device.H", line 272: remark(3201): parameter "cy" was never
          referenced
    virtual   void draw(Fl_RGB_Image * rgb,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                                       ^

"../FL/Fl_Device.H", line 278: remark(3201): parameter "pxm" was never
          referenced
    virtual   void draw(Fl_Pixmap * pxm,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                    ^

"../FL/Fl_Device.H", line 278: remark(3201): parameter "XP" was never
          referenced
    virtual   void draw(Fl_Pixmap * pxm,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                            ^

"../FL/Fl_Device.H", line 278: remark(3201): parameter "YP" was never
          referenced
    virtual   void draw(Fl_Pixmap * pxm,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                    ^

"../FL/Fl_Device.H", line 278: remark(3201): parameter "WP" was never
          referenced
    virtual   void draw(Fl_Pixmap * pxm,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                            ^

"../FL/Fl_Device.H", line 278: remark(3201): parameter "HP" was never
          referenced
    virtual   void draw(Fl_Pixmap * pxm,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                    ^

"../FL/Fl_Device.H", line 278: remark(3201): parameter "cx" was never
          referenced
    virtual   void draw(Fl_Pixmap * pxm,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                            ^

"../FL/Fl_Device.H", line 278: remark(3201): parameter "cy" was never
          referenced
    virtual   void draw(Fl_Pixmap * pxm,int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                                    ^

"../FL/Fl_Device.H", line 284: remark(3201): parameter "bm" was never
          referenced
    virtual void draw(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) {};
                                 ^

"../FL/Fl_Device.H", line 284: remark(3201): parameter "XP" was never
          referenced
    virtual void draw(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) {};
                                         ^

"../FL/Fl_Device.H", line 284: remark(3201): parameter "YP" was never
          referenced
    virtual void draw(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                 ^

"../FL/Fl_Device.H", line 284: remark(3201): parameter "WP" was never
          referenced
    virtual void draw(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                         ^

"../FL/Fl_Device.H", line 284: remark(3201): parameter "HP" was never
          referenced
    virtual void draw(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                 ^

"../FL/Fl_Device.H", line 284: remark(3201): parameter "cx" was never
          referenced
    virtual void draw(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                         ^

"../FL/Fl_Device.H", line 284: remark(3201): parameter "cy" was never
          referenced
    virtual void draw(Fl_Bitmap *bm, int XP, int YP, int WP, int HP, int cx, int cy) {};
                                                                                 ^

"../FL/Fl_Device.H", line 330: warning(1682): overloaded virtual function
          "Fl_Graphics_Driver::draw" is only partially overridden in class
          "Fl_Xlib_Graphics_Driver"
  class Fl_Xlib_Graphics_Driver : public Fl_Graphics_Driver {
        ^

"../FL/fl_draw.H", line 60: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void   fl_color(Fl_Color c) {fl_graphics_driver->color(c); } // select indexed color
                ^

"../FL/fl_draw.H", line 73: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void   fl_color(uchar r, uchar g, uchar b) {fl_graphics_driver->color(r,g,b); } // select actual color
                ^

"../FL/fl_draw.H", line 92: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_push_clip(int x, int y, int w, int h) {fl_graphics_driver->push_clip(x,y,w,h); }
              ^

"../FL/fl_draw.H", line 98: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_push_no_clip() {fl_graphics_driver->push_no_clip(); }
              ^

"../FL/fl_draw.H", line 106: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_pop_clip() {fl_graphics_driver->pop_clip(); }
              ^

"../FL/fl_draw.H", line 117: remark(1169): external/internal linkage conflict
          with previous declaration
  inline int fl_not_clipped(int x, int y, int w, int h) {return fl_graphics_driver->not_clipped(x,y,w,h); }
             ^

"../FL/fl_draw.H", line 132: remark(1169): external/internal linkage conflict
          with previous declaration
  inline int fl_clip_box(int x , int y, int w, int h, int& X, int& Y, int& W, int& H)
             ^

"../FL/fl_draw.H", line 153: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_point(int x, int y) { fl_graphics_driver->point(x,y); }
              ^

"../FL/fl_draw.H", line 183: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_line_style(int style, int width=0, char* dashes=0) {fl_graphics_driver->line_style(style,width,dashes); }
              ^

"../FL/fl_draw.H", line 207: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_rect(int x, int y, int w, int h) { fl_graphics_driver->rect(x,y,w,h); }
              ^

"../FL/fl_draw.H", line 212: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_rectf(int x, int y, int w, int h) { fl_graphics_driver->rectf(x,y,w,h); }
              ^

"../FL/fl_draw.H", line 229: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_line(int x, int y, int x1, int y1) {fl_graphics_driver->line(x,y,x1,y1); }
              ^

"../FL/fl_draw.H", line 233: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_line(int x, int y, int x1, int y1, int x2, int y2) {fl_graphics_driver->line(x,y,x1,y1,x2,y2); }
              ^

"../FL/fl_draw.H", line 239: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_loop(int x, int y, int x1, int y1, int x2, int y2) {fl_graphics_driver->loop(x,y,x1,y1,x2,y2); }
              ^

"../FL/fl_draw.H", line 243: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_loop(int x, int y, int x1, int y1, int x2, int y2, int x3, int y3)
              ^

"../FL/fl_draw.H", line 250: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_polygon(int x, int y, int x1, int y1, int x2, int y2) {fl_graphics_driver->polygon(x,y,x1,y1,x2,y2); }
              ^

"../FL/fl_draw.H", line 254: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_polygon(int x, int y, int x1, int y1, int x2, int y2, int x3, int y3)
              ^

"../FL/fl_draw.H", line 261: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_xyline(int x, int y, int x1) {fl_graphics_driver->xyline(x,y,x1);}
              ^

"../FL/fl_draw.H", line 265: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_xyline(int x, int y, int x1, int y2) {fl_graphics_driver->xyline(x,y,x1,y2);}
              ^

"../FL/fl_draw.H", line 270: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_xyline(int x, int y, int x1, int y2, int x3) {fl_graphics_driver->xyline(x,y,x1,y2,x3);}
              ^

"../FL/fl_draw.H", line 276: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_yxline(int x, int y, int y1) {fl_graphics_driver->yxline(x,y,y1);}
              ^

"../FL/fl_draw.H", line 280: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_yxline(int x, int y, int y1, int x2) {fl_graphics_driver->yxline(x,y,y1,x2);}
              ^

"../FL/fl_draw.H", line 285: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_yxline(int x, int y, int y1, int x2, int y3) {fl_graphics_driver->yxline(x,y,y1,x2,y3);}
              ^

"../FL/fl_draw.H", line 310: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_arc(int x, int y, int w, int h, double a1, double a2) {fl_graphics_driver->arc(x,y,w,h,a1,a2); }
              ^

"../FL/fl_draw.H", line 323: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_pie(int x, int y, int w, int h, double a1, double a2) {fl_graphics_driver->pie(x,y,w,h,a1,a2); }
              ^

"../FL/fl_draw.H", line 338: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_begin_points() {fl_graphics_driver->begin_points(); }
              ^

"../FL/fl_draw.H", line 342: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_begin_line() {fl_graphics_driver->begin_line(); }
              ^

"../FL/fl_draw.H", line 346: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_begin_loop() {fl_graphics_driver->begin_loop(); }
              ^

"../FL/fl_draw.H", line 350: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_begin_polygon() {fl_graphics_driver->begin_polygon(); }
              ^

"../FL/fl_draw.H", line 355: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_vertex(double x, double y) {fl_graphics_driver->vertex(x,y); }
              ^

"../FL/fl_draw.H", line 364: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_curve(double X0, double Y0, double X1, double Y1, double X2, double Y2, double X3, double Y3)
              ^

"../FL/fl_draw.H", line 374: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_arc(double x, double y, double r, double start, double end) {fl_graphics_driver->arc(x,y,r,start,end); }
              ^

"../FL/fl_draw.H", line 382: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_circle(double x, double y, double r) {fl_graphics_driver->circle(x,y,r); }
              ^

"../FL/fl_draw.H", line 386: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_end_points() {fl_graphics_driver->end_points(); }
              ^

"../FL/fl_draw.H", line 390: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_end_line() {fl_graphics_driver->end_line(); }
              ^

"../FL/fl_draw.H", line 394: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_end_loop() {fl_graphics_driver->end_loop(); }
              ^

"../FL/fl_draw.H", line 398: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_end_polygon() {fl_graphics_driver->end_polygon(); }
              ^

"../FL/fl_draw.H", line 413: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_begin_complex_polygon() {fl_graphics_driver->begin_complex_polygon(); }
              ^

"../FL/fl_draw.H", line 420: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_gap() {fl_graphics_driver->gap(); }
              ^

"../FL/fl_draw.H", line 424: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_end_complex_polygon() {fl_graphics_driver->end_complex_polygon(); }
              ^

"../FL/fl_draw.H", line 434: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_transformed_vertex(double xf, double yf) {fl_graphics_driver->transformed_vertex(xf,yf); }
              ^

"../FL/fl_draw.H", line 451: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_font(Fl_Font face, Fl_Fontsize size) { fl_graphics_driver->font(face,size); }
              ^

"../FL/fl_draw.H", line 557: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_draw(const char* str, int n, int x, int y) {fl_graphics_driver->draw(str,n,x,y); }
              ^

"../FL/fl_draw.H", line 562: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_draw(int angle,const char* str, int n, int x, int y) {fl_graphics_driver->draw(angle,str,n,x,y); }
              ^

"../FL/fl_draw.H", line 566: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_rtl_draw(const char* str, int n, int x, int y) {fl_graphics_driver->rtl_draw(str,n,x,y); }
              ^

"../FL/fl_draw.H", line 617: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_draw_image(const uchar* buf, int X,int Y,int W,int H, int D=3, int L=0)
              ^

"../FL/fl_draw.H", line 624: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_draw_image_mono(const uchar* buf, int X,int Y,int W,int H, int D=1, int L=0)
              ^

"../FL/fl_draw.H", line 659: remark(1169): external/internal linkage conflict
          with previous declaration
  inline void fl_draw_image(Fl_Draw_Image_Cb cb, void* data, int X,int Y,int W,int H, int D=3)
              ^

Signal: Segmentation fault in Front End Driver phase.
Error: Signal Segmentation fault in phase Front End Driver -- processing aborted
CC ERROR:  /usr/lib32/cmplrs/fecc died due to signal 4
CC ERROR:  core dumped
gmake[1]: *** [editor.o] Error 32
gmake[1]: Leaving directory `/usr/local/src/fltk-1.3.x-svn/test'
gmake: *** [all] Error 1
/usr/local/src/fltk-1.3.x-svn
huron 17#
 
 
#2 matt
11:44 Nov 11, 2010
editor.cxx in the test phase contains a lot of UTF-8 characters inside a text string. It seems that the compiler does not know how to deal with 8 bit characters. Just remove the text from editor.cxx and you will be fine. It will go anyway as soon as I get confirmation that Fl_TExt_* stuff runs.  
 
#3 greg.ercolano
12:44 Nov 11, 2010
Wow, yep -- that was it.

IMPORTANT NOTE: I found I couldn't just #ifdef away the utf8 text..
it still crashed even when it was #ifdef'ed out.
I had to actually /delete/ the utf8 code from editor.cxx
to prevent the crashes.

Apparently it's the C pre-processor was crashing (or some
intermediate phase thereof), and not the compiler itself.

Maybe there's a flag for '--dont-segfault-on-nonascii-strings' ;)

I'll leave this open until the official release builds OK
(ie. when the UTF8 text is removed).
 
 
#4 matt
07:58 Nov 14, 2010
Fixed in Subversion repository.  
     

Return to Bugs & Features ]

 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.