1
1
Fork 0
mirror of https://github.com/QB64Official/qb64.git synced 2024-07-07 18:00:24 +00:00
Commit graph

63 commits

Author SHA1 Message Date
FellippeHeitor cf99f38bcf Add _CONTINUE, to jump to the end of FOR..NEXT/DO..LOOP/WHILE..WEND blocks. 2017-06-28 22:47:17 -03:00
FellippeHeitor 4a950c7c94 Implements multiple temp folders for Linux/macOS. 2017-05-18 01:08:06 -03:00
FellippeHeitor 0b9f507565 Add "Web" as a valid key for $VERSIONINFO 2017-04-29 17:41:04 -03:00
FellippeHeitor 8d961597d9 Implements $VERSIONINFO metacommand.
Allows embedding meta information on the final binary (Windows only).
2017-04-29 04:09:20 -03:00
FellippeHeitor d3fd0be2a4 [minor] Fix the status message for $EXEICON. 2017-04-29 00:34:16 -03:00
Luke Ceddia 01a697689b Revert "Add QB64's icon to the Windows binary."
This reverts commit cca11e8f90.

This and previous reverts remove ICON-related changes, which were
simply too questionable (in stability terms) this close to a planned
release.
2016-09-04 23:31:28 +10:00
Luke Ceddia 9a0bc93473 Revert "Make $EXEICON errors only a warning when compiling via command line."
This reverts commit 6ac4f79294.
2016-09-04 23:30:59 +10:00
Luke Ceddia 2655a35b3c Revert "Bring back the $EXEICON for Windows binaries."
This reverts commit 2e2a3de2be.
2016-09-04 23:30:50 +10:00
FellippeHeitor 2e2a3de2be Bring back the $EXEICON for Windows binaries. 2016-09-03 14:13:34 -03:00
FellippeHeitor 6ac4f79294 Make $EXEICON errors only a warning when compiling via command line. 2016-09-03 08:46:22 -03:00
FellippeHeitor cca11e8f90 Add QB64's icon to the Windows binary. 2016-09-03 00:53:21 -03:00
FellippeHeitor f829b4b640 Temporary remedy for confusing error messages after internal errors.
Bringing back the old "Compiler error (check for syntax errors)" message.
2016-09-01 23:37:37 -03:00
FellippeHeitor e6425a5f11 Give proper error message when 'internal' folder can't be found. 2016-09-01 21:38:24 -03:00
FellippeHeitor d93a2812bf Fix OPTION _EXPLICIT ignoring variables created with SHARED in SUBs.
Also:
- When a "variable not defined" error is triggered, the expected type is now also reported.
2016-08-27 15:09:15 -03:00
FellippeHeitor 366636e584 Fix to precompiler parser deleting $LET statements in SUBs. 2016-08-24 09:08:42 -03:00
FellippeHeitor 26a6c94f63 Tweaks to $EXEICON implementation
No error message if not Windows, proper error message if icon.o can't be generated.
2016-08-18 07:25:56 -03:00
FellippeHeitor 127c4acd88 Add $EXEICON, which allows to embed an icon in the exe (Windows only).
Also:
- Revamp _ICON so it'll use the embed icon if it's called without parameters. The default QB64 icon is still used otherwise.
- Fix "Creating .EXE..." being printed in the wrong coordinates (IDE)
- Fix the new error message (when Debug is <> 0) so it'll show properly when compiling with -x.
2016-08-18 01:12:08 -03:00
Luke Ceddia 3f3016da6d Make DarkenFGBG a function so it gets treated as an array when IDE support is not compiled in. 2016-08-15 20:58:11 +10:00
Luke Ceddia de14c256d9 When Debug is set, any QB errors will now trigger a more helpful error handler 2016-08-12 11:59:11 +10:00
Luke Ceddia fc05f7d925 Fix parsing of corner-case negative exponents, such as 1-(1+r) ^ -y 2016-08-11 21:40:23 +10:00
Luke Ceddia b17fda7a61 Stop STATIC arrays in subroutines from segfaulting on Linux 2016-08-10 23:44:27 +10:00
FellippeHeitor cedd2c6a47 Replace _KEYCLEAR so that script setup will work on OS X.
Probably for Linux too.
2016-07-18 12:03:29 -03:00
FellippeHeitor c3cb1acae9 Darken all IDE colors while compiling or running attached. 2016-07-17 20:12:59 -03:00
FellippeHeitor c00c92e4a2 Fix to ignore input while the IDE is waiting for execution to end.
Previously, if the IDE had focus while a compiled program was being run (F5), any input on the window would later be processed, messing up the source code sometimes. That's been fixed.
2016-07-17 17:41:30 -03:00
FellippeHeitor a3c4bc4336 Darken the FG color too (while compiling with g++). 2016-07-17 17:40:10 -03:00
FellippeHeitor 99e0b539af Cosmetic: Darken the interface while G++ is being run.
Uses _PALETTECOLOR to change the background of the IDE to a darker shade while external compilation is taking place, to give a sense of temporary unavailability.
2016-07-17 17:17:51 -03:00
FellippeHeitor 90923af3db Add _INCLERRORFILE$, which reports the included file that last errored.
Also:
Change qb64.bas to produce C code that reports INCLUDE file names.
2016-07-08 22:48:00 -03:00
FellippeHeitor c6b05376d4 Minor rewording to command line help 2016-07-02 21:24:22 -03:00
Fellippe Heitor 4550c333b7 Add command line help (-?, /?, -h or -help) 2016-07-02 16:25:21 -03:00
FellippeHeitor 240814c6cc Fix proper detection of output executable being run. 2016-07-02 02:50:43 -03:00
FellippeHeitor bad8133d16 Command line improvements.
- Add -e for compiling with OPTION _EXPLICIT activated from the command line - even if the source file doesn't have the directive.
- Add -o for specifying a different output executable file name.
- More flexible syntax, as switches can come after the file name, making the following acceptable: qb64 filename.bas -x -e -o myprog.exe
2016-07-02 01:32:03 -03:00
FellippeHeitor e70f18178f Broader detection of OPTION _EXPLICIT in code.
- No two OPTION _EXPLICIT can be entered
- You can OPTION _EXPLICIT: DO OTHER STUFF 'and comment on the same line
- Extreme cases of bad formatting like OPTION        _EXPLICIT are fine.
2016-06-30 23:40:46 -03:00
FellippeHeitor 7bb17d3d8d OPTION _EXPLICIT errors report the variable name.
Also:
Allow comments and empty lines before OPTION _EXPLICIT
2016-06-30 05:24:22 -03:00
FellippeHeitor aec3d3b4dd Fix for relative paths (./ or .\) in LIBRARY declarations.
These were having issues when compiling via command line.
2016-06-30 03:58:20 -03:00
FellippeHeitor a7a3b1663d Implements OPTION _EXPLICIT
When you use OPTION _EXPLICIT, all variables and arrays must be defined with DIM (or equivalent statement) before they can be used. QB64's case check already aids in avoiding mistakes on that front, but now you will run into a compiler error if a variable or array is used before being defined.
Because OPTION _EXPLICIT sets a compiler behavior, it must come before any other statements in your code.
As this is a non-QB4.5 feature, the keyword uses an underscore, in order to avoid conflicts with existing code.
2016-06-30 02:50:10 -03:00
FellippeHeitor 5b7411a583 Minor fix to settings output. 2016-06-26 00:37:08 -03:00
Fellippe Heitor 7cf18f13ad Add -s (settings) to command line. 2016-06-26 00:06:34 -03:00
Fellippe Heitor 81a0e7a4b7 Fix to relative paths for console compilation. 2016-06-25 22:36:36 -03:00
FellippeHeitor d8c01d89cb Properly check if the target .EXE can be replaced (no ide compilation). 2016-06-25 16:17:22 -03:00
FellippeHeitor b3c7c03558 Fix for unnecessary terminal window showing up in Windows 2016-06-22 14:05:28 -03:00
FellippeHeitor 22a2115fe8 Fix for relative library paths in Windows. 2016-06-22 01:13:54 -03:00
Fellippe Heitor b8b4b13302 Relative paths for external libraries
External libraries can now sit in the same folder as your source file without the need to specify a full path. You can use .libraryname or ./libraryname with DECLARE LIBRARY statement blocks.
2016-06-21 23:53:43 -03:00
Fellippe Heitor 5e7e37ea0b Save executable with source (Mac, probably Linux too) 2016-06-21 11:59:37 -03:00
FellippeHeitor b7b6c760e1 Console mode compilation (-c, -x) also save EXE to source folder, if set. 2016-06-21 03:54:20 -03:00
FellippeHeitor 8f67d40330 Add "Save EXE in the source folder" to the Run menu.
(Windows only for now)
When active, this new setting will instruct the compiler to save the .EXE in the same folder as the source file. If the current program is not yet saved, the .EXE is placed in the same folder as QB64.EXE, as usual.

Also:
- When "Make EXE only (F11)" is used, the status area will show "Location: " and a link to the folder where the .EXE was saved. Clicking it launches Windows Explorer.
2016-06-21 03:38:42 -03:00
FellippeHeitor f00c584454 Fix to extra console window being shown when no COMMAND$ is provided.
A trailing empty space was the culprit.
2016-04-15 10:01:58 -03:00
FellippeHeitor b243601d5a Add "Modify COMMAND$..." to Run menu.
Allows the user to set parameters to be sent to the current program when ran from inside the IDE using F5 or Ctrl+F5.
2016-04-15 00:47:26 -03:00
FellippeHeitor fca4a96ef3 Remove unnecessary optional parameter in fix_error().
Also:
- "Unhandled error" message now only shows included line number when it's > 0.
- qb64.bas adds include line number to every evnt() call.
2016-03-23 08:29:32 -03:00
FellippeHeitor e891ce0891 Extended error reporting, pointing to included lines.
The "Unhandled error" message will now display "Line: #### (included line: ####)" with the line number in the included file that generated the error. 0 will be reported if the error wasn't in an included line.

Also:
- Add function _INCLERRORLINE, which returns a value greater than zero when _ERRORLINE points to an $INCLUDEd file.
2016-03-23 07:45:51 -03:00
FellippeHeitor 3557828e95 Fix $precompiler layout.
$ELSEIF FLAG THEN was being turned into $ELSEIF IF FLAG THEN THEN when a precompiler condition had already been met in an $IF block before the current $ELSEIF.
2016-03-20 22:19:35 -03:00