Boriel Basic Forum
FASTCALL warnings - Printable Version

+- Boriel Basic Forum (https://forum.boriel.com)
+-- Forum: Compilers and Computer Languages (https://forum.boriel.com/forumdisplay.php?fid=12)
+--- Forum: ZX Basic Compiler (https://forum.boriel.com/forumdisplay.php?fid=11)
+---- Forum: Wishlist (https://forum.boriel.com/forumdisplay.php?fid=14)
+---- Thread: FASTCALL warnings (/showthread.php?tid=476)



FASTCALL warnings - einar - 2012-07-19

Hi,

Whenever compiling any ZX BASIC program that uses the latest BIFROST* interface library, it will always produce the following warnings:

Code:
bifrost.bas:92: warning: FUNCTION 'BIFROSTfindAttr' declared as FASTCALL with 2 parameters
bifrost.bas:177: warning: SUB 'BIFROSTshowTile' declared as FASTCALL with 3 parameters
bifrost.bas:201: warning: SUB 'BIFROSTshowTilePos' declared as FASTCALL with 2 parameters
bifrost.bas:231: warning: SUB 'BIFROSTfillTileAttr' declared as FASTCALL with 3 parameters
In general, these warnings are very useful to notify the user about possible problems on the code. But in the cases when they were already validated (such as above where FASTCALL is used intentionally for performance reasons), they become a disadvantage: the user will always see warnings in every compilation and will soon start to ignore them completely, thus not paying attention anymore to new warnings that may appear about real problems in his/her own code.

I suggest a new directive to allow ignoring such warnings inside an specific library. The idea is that a library file could use something like this:

Code:
#pragma push(fastcall_warning)
#pragma fastcall_warning = false
...
#pragma pop(fastcall_warning)
Makes sense?


Re: FASTCALL warnings - boriel - 2012-07-19

Definitely! In fact, I'm implementing some enable/disable Warning flags (such as "Unused function", which is very handy for libraries, or this one).
They're on the way! Smile


Re: FASTCALL warnings - einar - 2012-07-19

boriel Wrote:Definitely! In fact, I'm implementing some enable/disable Warning flags (such as "Unused function", which is very handy for libraries, or this one).
They're on the way! Smile
Thank you!


Re: FASTCALL warnings - einar - 2013-08-15

I could not find any information in ZX BASIC wiki about warning flags or pragma directives... so I'm wondering if this feature has been implemented already?


Re: FASTCALL warnings - boriel - 2013-08-16

einar Wrote:I could not find any information in ZX BASIC wiki about warning flags or pragma directives... so I'm wondering if this feature has been implemented already?
Sorry, I'm afraid not. :oops:
I stopped any further development on version 1.x.
Also I'm currently on vacation :roll:


Re: FASTCALL warnings - einar - 2013-08-16

No problem, thanks for the reply.

Enjoy your vacation! Smile


Re: FASTCALL warnings - boriel - 2014-01-30

Einar, hope you're still alive :|
Now that ZX BASIC 1.4 is out, I think we can start adding this feature. :wink:


Re: FASTCALL warnings - einar - 2014-02-12

boriel Wrote:Now that ZX BASIC 1.4 is out, I think we can start adding this feature. :wink:

Excellent!