=Bugs and Gotchas= 
//The Community//
[[toc|flat]]
----



|| - || Unary minus is not supported, use 0-x || [[libertybasicbugs/Unary minus not supported|Info]] ||
|| = || Comparing two floats x.x y.y is problematic || [[libertybasicbugs/Incorrect floating point value|Gotcha]] ||
|| !insert || Texteditor !insert command requires a locally scoped string || [[libertybasicbugs/TEXTEDITOR !insert|Bug]] ||
|| % || If this appears in front of a using() number its too big to fit || [[lbpe/FastFAQ#Fast%20FAQ:-Using():|Info]] ||
|| * || A missing * in a maths statement is not caught, always insert * || [[libertybasicbugs/Missing * not caught in expressions|Info]] ||
|| , || Missing , are sometimes not reported, check , are inserted || [[libertybasicbugs/Missing commas are not reported|Info]] ||
|| Beep || Beep is not supported by modern BIOS, use Playwave instead || [[libertybasicbugs/BEEP|Info]] ||
|| Box graphics || Box draws one pixel short || [[libertybasicbugs/Line and Box draw one pixel short|Info]] ||
|| Branch labels || A [Branch Label] should not head up another [Branch Label] || [[libertybasicbugs/Branch Labels|Bug]] ||
|| Button || Button anchor values result in misplaced buttons || [[libertybasicbugs/Button anchor misplacement|Bug]] ||
|| Calldll || Calldll return types USHORT and WORD are broken || [[libertybasicbugs/CALLDLL return types 'ushort' and 'word' are broken|Bug]] ||
|| Close || Random file's close command cannot use a Handle$ variable || [[libertybasicbugs/Handle variables do not work with RANDOM files|Bug]] ||
|| Data || If you precede the data statement with line numbers it will fail || [[libertybasicbugs/DATA|Bug]] ||
|| Error message || Attempted to kill non-existant file || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Attempted%20to%20kill%20non-existant%20file|Gotcha]] ||
|| Error message || Stack Overflow || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Stack%20Overflow|Gotcha]] ||
|| Error message || Collection is empty || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Collection%20is%20empty|Gotcha]] ||
|| Error message || Argument must be a collection || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Argument%20must%20be%20a%20collection|Gotcha]] ||
|| Error message || Index (n) is outside collection bounds || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Index%20(nnn)%20is%20outside%20collection%20bounds|Gotcha]] ||
|| Error message || Invalid Branch Label [xyz] || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Invalid%20branch%20label%20%5Bxyz%5D|Gotcha]] ||
|| Error message || Float invalid op || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Float%20invalid%20op|Info]] ||
|| Error message || System Primitive Failed || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-System%20Primitive%20Failed|Gotcha]] ||
|| Error message || File is literally invisible || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Open%20file,%20the%20file%20is%20literally%20invisible|Gotcha]] ||
|| Error message || Error Opening file || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Open%20file%20gives%20Error%20Opening%20File|Gotcha]] ||
|| Error message || File System Access Denied || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Open%20file%20gives%20File%20System%20Access%20Denied|Gotcha]] ||
|| Error message || Problem creating file || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Creating%20an%20.exe%20gives%20Problem%20Creating%20File|Gotcha]] ||
|| Error message || OS Error cannot find file || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Creating%20an%20.exe%20gives%20OS%20Error%20cannot%20find%20file|Gotcha]] ||
|| Error message || String can't hold string || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-String%20can't%20hold%20string|Info]] ||
|| Error message || A non-continuable protection violation has occurred || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-Protection%20violation|Gotcha]] ||
|| Error message || IsEmpty || [[lbpe/FastFAQ#Fast%20FAQ:-Liberty%20Runtime%20Errors:-IsEmpty|Gotcha]] ||
|| Field || Random file's field command cannot use a Handle$ variable || [[libertybasicbugs/Handle variables do not work with RANDOM files|Bug]] ||
|| File Association || Associating liberty.exe to .bas files needs manual fix on upgrade || [[libertybasicbugs/File Association .bas|Info]] ||
|| For Next || Incorrectly allows a string variable as a loop counter || [[libertybasicbugs/FOR-allows string index variable|Bug]] ||
|| For Next || Do not use a global variable as a loop counter || [[libertybasicbugs/FOR-global loop counter|Info]] ||
|| For Next || Don't jump out a for next loop, leave using exit for || [[libertybasicbugs/Jumping out of a nested FOR loop|Gotcha]] ||
|| For Next || A STRUCT variable cannot be used as a loop counter || [[libertybasicbugs/Structure member cannot be used as FOR variable|Info]] ||
|| Function || Arrays are global by default and available inside functions || [[http://libertybasicbugs.wikispaces.com/Arrays+Not+Passed+to+Subs%20|Info]] ||
|| Function || Global variables need not be passed to functions || [[http://libertybasicbugs.wikispaces.com/FUNCTION+with+GLOBAL+parameter%20|Info]]  ||
|| Get || Random file's get command cannot use a Handle$ variable || [[http://libertybasicbugs.wikispaces.com/Handle+variables+do+not+work+with+RANDOM+files%20|Bug]] ||
|| Handle$ || Handle$ variables do not work with RAF files || [[http://libertybasicbugs.wikispaces.com/Handle+variables+do+not+work+with+RANDOM+files%20|Bug]] ||
|| Horizscrollbar || Large graphics need special preparation || [[http://libertybasicbugs.wikispaces.com/Scrollbars-Graphics-Distorted%20|Bug]] ||
|| IDE || IDE-editor - Undo feature does not work + some quirks || [[http://libertybasicbugs.wikispaces.com/Environment%20|Bug]] ||
|| Inkey$ || The help file reference listing Virtual Key Codes is erroneous || http://libertybasicbugs.wikispaces.com/HELPFILE-virtual+key+codes ||
|| Input var$;val || Input cannot use a var$ as a prompt, it needs to be literal || http://libertybasicbugs.wikispaces.com/INPUT-variable+as+prompt ||
|| Inputcsv || Does not deal with embeded quotes correctly || http://libertybasicbugs.wikispaces.com/INPUTCSV+does+not+accept+embedded+quotes ||
|| Line graphics || Line and Lineto draw one pixel short, just set the last pixel || http://libertybasicbugs.wikispaces.com/Line+and+Box+draw+one+pixel+short ||
|| Listbox || Changes to font size after creation breaks scroll range || http://libertybasicbugs.wikispaces.com/Listbox+horizontal+scroll+range ||
|| lof() || Lof() function reports incorrect files size for files > 4Gb || http://libertybasicbugs.wikispaces.com/lof%28%29+reports+wrong+file+size+for+large+files ||
|| Mainwin || Mainwin permanently alters width, reset to 80 using preferences || http://libertybasicbugs.wikispaces.com/MAINWIN+changes+preferences ||
|| Mid$() || Mid$() reads a string fragment, it cannot assign a string fragment || http://libertybasicbugs.wikispaces.com/MID-can+not+assign+value ||
|| middleButtonMove || middleButtonMove event is broken || http://libertybasicbugs.wikispaces.com/middleButtonMove+event ||
|| Pie graphics || Pie and Piefilled drawing distorted || http://libertybasicbugs.wikispaces.com/Pie+and+Piefilled+drawing+distorted ||
|| Piefilled graphics || Pie and Piefilled drawing distorted || http://libertybasicbugs.wikispaces.com/Pie+and+Piefilled+drawing+distorted ||
|| Printerdialog || Printerdialog is broken an API alternative is available || http://libertybasicbugs.wikispaces.com/PRINTERDIALOG-broken+for+XP+and+higher ||
|| Prompt || If you use prompt when a timer is running Liberty will crash || http://libertybasicbugs.wikispaces.com/Timer+and+Prompt+conflict ||
|| Put || Random file's put command cannot use a Handle$ variable || http://libertybasicbugs.wikispaces.com/Handle+variables+do+not+work+with+RANDOM+files ||
|| Put || Attempting to write to record 0 erronously creates a 4Gb file || http://libertybasicbugs.wikispaces.com/PUT+%E2%80%93+attempt+to+write+record+0+writes+4Gb+file ||
|| Redim || Redim acts on an existing array a(x,y) x,y cannot change || http://libertybasicbugs.wikispaces.com/Redim++fails+to+redimension+an+array ||
|| Rnd(0) || Rnd(0) has a slight bias, improved routines are available || http://libertybasicbugs.wikispaces.com/Improved+RND%28%29+function ||
|| Sort || Sort a(),r,c,col if r is less than c sorting breaks above col is >r || http://libertybasicbugs.wikispaces.com/Sort ||
|| Sort || Sorting is not in ASCII order it is dictionary order but flawed || http://libertybasicbugs.wikispaces.com/SORT-fails+to+provide+dictionary+order ||
|| STRUCT || STRUCT keyword is case sensitive || http://libertybasicbugs.wikispaces.com/STRUCT-keyword+is+case+sensitive ||
|| STRUCT double || STRUCT member of type double crashes if you assign and integer || http://libertybasicbugs.wikispaces.com/STRUCT-DOUBLE+crashes+then+assigning+integer ||
|| STRUCT Variable || STRUCT variable cannot be used as a For loop counter || http://libertybasicbugs.wikispaces.com/Structure+member+cannot+be+used+as+FOR+variable ||
|| Sub || Arrays are global by default and available inside Subs || http://libertybasicbugs.wikispaces.com/Arrays+Not+Passed+to+Subs ||
|| Sub || Global variables need not be passed to Subs || http://libertybasicbugs.wikispaces.com/FUNCTION+with+GLOBAL+parameter ||
|| Texteditor || The !insert command must use a locally scoped string || http://libertybasicbugs.wikispaces.com/TEXTEDITOR+%21insert ||
|| Texteditor || The undo feature is broken || http://libertybasicbugs.wikispaces.com/TEXTEDITOR+-+Undo+feature+doesn%27t+work ||
|| Time$() || Time$() arguments are case sensitive, lower case || http://libertybasicbugs.wikispaces.com/TIME-arguments+are+case+sensitive ||
|| Timer || If you use prompt when a timer is running Liberty will crash || http://libertybasicbugs.wikispaces.com/Timer+and+Prompt+conflict ||
|| Timer || If a timer is set you must consider where the scope is when it fires || http://libertybasicbugs.wikispaces.com/TIMER-sub+as+event+handler ||
|| Timer || Timer events repeat, you must turn them off asap || FastFAQ ||
|| Timer || Only a timer encased entirely within a sub will work || FastFAQ ||
|| Trapclose || Trapclose is broken for windows of type text || http://libertybasicbugs.wikispaces.com/TRAPCLOSE+does+not+work+correctly+in+text+window ||
|| Using || Using is accurate to 16 digits, beyond that is garbage || http://libertybasicbugs.wikispaces.com/USING+loses+accuracy+after+16+digits ||
|| Using() || If a % appears the number is too big to fit in the format || http://lbpe.wikispaces.com/FastFAQ#Fast FAQ:-Using(): ||
|| Vertscrollbar || Large graphics need special preparation || http://libertybasicbugs.wikispaces.com/Scrollbars-Graphics-Distorted ||
|| Virtual Key Code || The help file reference listing Virtual Key Codes is erroneous || http://libertybasicbugs.wikispaces.com/HELPFILE-virtual+key+codes ||
|| Window type Dialog || Dialog windows may position incorrectly if DPI is not 96 || http://libertybasicbugs.wikispaces.com/DIALOG-wrong+position ||
|| Window type Text || Trapclose is broken for windows of type text || http://libertybasicbugs.wikispaces.com/TRAPCLOSE+does+not+work+correctly+in+text+window ||

----
[[toc|flat]]