From: Bob F. <bio...@gm...> - 2011-04-05 04:11:08
|
consider the following program, which initializes a static structure containing a function-pointer-valued field.... typedef void (*Fxn)(); struct S { Fxn f; }; void fxn() { } struct S s = { (Fxn)fxn /* raises error when compiled with --model-large !!! */ }; when i compile this code with --model-medium, everything works fine.... but when i compile with --model-large, the initializer causes a compiler error.... note also that the problem goes away when the function cast is removed!!! again, everything works just fine in with --model-medium.... any ideas??? thanks in advance |
From: Krishnendu C. <kri...@gm...> - 2011-04-05 08:35:19
|
Strange :( Same here with sdcc-3.0.0. Should be reported as a bug. However, it is not severe. You can always remove the type-casting and successfully compile your code. Krish On Tue, Apr 5, 2011 at 9:40 AM, Bob Frankel <bio...@gm...> wrote: > consider the following program, which initializes a static structure > containing a function-pointer-valued field.... > > typedef void (*Fxn)(); > > struct S { > Fxn f; > }; > > void fxn() { > } > > struct S s = { > (Fxn)fxn /* raises error when compiled with --model-large !!! > */ > }; > > > when i compile this code with --model-medium, everything works fine.... but > when i compile with --model-large, the initializer causes a compiler > error.... note also that the problem goes away when the function cast is > removed!!! again, everything works just fine in with --model-medium.... > > any ideas??? > > thanks in advance > > ------------------------------------------------------------------------------ > Xperia(TM) PLAY > It's a major breakthrough. An authentic gaming > smartphone on the nation's most reliable network. > And it wants your games. > http://p.sf.net/sfu/verizon-sfdev > _______________________________________________ > Sdcc-user mailing list > Sdc...@li... > https://lists.sourceforge.net/lists/listinfo/sdcc-user > > |