bugfix: don't process arguments that are to be passed to the produced exe

This commit is contained in:
Araq 2011-11-30 19:51:51 +01:00
commit ab5621a62b
4 changed files with 29 additions and 18 deletions

View file

@ -349,8 +349,7 @@ input management. To start Nimrod in interactive mode use the command
``nimrod i``. To quit use the ``quit()`` command. To determine whether an input
line is an incomplete statement to be continued these rules are used:
1. The line ends with ``[-+*/\\<>!\?\|%&$@~,;:=#^]\s*$`` (operator symbol
followed by optional whitespace).
1. The line ends with ``[-+*/\\<>!\?\|%&$@~,;:=#^]\s*$`` (operator symbol followed by optional whitespace).
2. The line starts with a space (indentation).
3. The line is within a triple quoted string literal. However, the detection
does not work if the line contains more than one ``"""``.
@ -402,6 +401,12 @@ However it is not efficient to do:
.. code-block:: Nimrod
var s = varA # assignment has to copy the whole string into a new buffer!
For ``let`` symbols a copy is not always necessary:
.. code-block:: Nimrod
let s = varA # may only copy a pointer if it safe to do so
The compiler optimizes string case statements: A hashing scheme is used for them
if several different string constants are used. So code like this is reasonably
efficient: