Sei Lisa
7283842b3a
Make an error message more explicit.
...
Resolving some constant function calls may generate tabs, e.g. llUnescapeURL("%09"). That can't be pasted into a script, and a warning is emitted. The warning text was misleading, making one think that something went wrong when all that happened is that an optimization couldn't be applied. Rewrite the text of the warning to be clearer about what the problem is.
2016-03-30 18:29:11 +02:00
Sei Lisa
b0e5a50a59
Fix discrepancy with LSL in llCSV2List.
...
In LSL, llCSV2List eats the very first space in the string if there's one. This patch implements that behaviour.
2016-03-25 20:52:48 +01:00
Sei Lisa
14f70c93b4
Fix bug in llCSV2List when there's no space after comma but there's a space in the value.
...
E.g. llCSV2List(",A B") produced ["", "B"].
2016-03-25 20:44:59 +01:00
Sei Lisa
daae0ec518
New upstream version of builtins.txt
2016-01-22 20:56:20 +01:00
Sei Lisa
661853be53
Fix llRot2Axis to negate the axis when s is negative.
2016-01-22 20:54:43 +01:00
Sei Lisa
144fa5b00e
New upstream version of builtins.txt
2016-01-16 05:39:52 +01:00
Sei Lisa
c555a01a48
It's possible to enter Infinity as a float constant, so do that rather than the (float)"inf" kludge. It remains for NaN though.
2016-01-06 01:21:04 +01:00
Sei Lisa
881a33a427
Remove unnecessary line
2016-01-03 01:30:22 +01:00
Sei Lisa
cfb9dee941
Parse_unary_postfix_expression shouldn't accept the token (i.e. advance to the next) if it's not processed. This caused a mismatch between the reported syntax error and the position where it should have been detected. Fixed.
...
Added corresponding regression test.
2016-01-03 01:29:57 +01:00
Sei Lisa
ceb442e931
Improve error reporting, by printing the errored line and a caret (^), taking care to display the beginning of the token the error is at.
2016-01-02 03:39:47 +01:00
Sei Lisa
f97cef2a38
Add -T / --timestamp option to insert the generation timestamp
2015-12-25 19:04:24 +01:00
Sei Lisa
5a2c7278cd
New upstream version of builtins.txt
2015-12-16 01:03:14 +01:00
Sei Lisa
9469855769
Document the internal behaviour of run_time_permissions under LSO
2015-12-11 02:28:51 +01:00
Sei Lisa
91201f1e30
Remove old TODO and add new one.
...
Identifiers can be equal if they belong to different syntactic scopes. That will allow better reuse and less creation of new identifiers, most notably as function and event parameter names.
The implementation would require a stack of counters where the current value is pushed when entering a new scope, and popped when exiting, rather than using a single counter for the whole program.
2015-12-09 05:11:53 +01:00
Sei Lisa
055663b79d
Another str -> repr change affecting a float.
2015-12-09 03:43:59 +01:00
Sei Lisa
025f0f8440
str() doesn't return a fully-expanded float. repr() does.
2015-12-09 03:37:01 +01:00
Sei Lisa
6ec2667bf3
Refine comments
2015-09-24 22:02:46 +02:00
Sei Lisa
57cacf29bb
Return a float when typecasting returns zero (fixes inconsistent type)
2015-09-22 14:14:26 +02:00
Sei Lisa
aee638e900
Return denormals as 0 in (float)"number". Found by Pedro Oval.
2015-09-21 21:15:48 +02:00
Sei Lisa
2d72b8e198
Fix llList2CSV with -nan in vector and quaternion (with test case).
2015-09-09 18:14:27 +02:00
Sei Lisa
2044f888d4
Fix bug where (typecast)[single_expr] was output as (typecast)(list)single_expr, producing a syntax error in the output for lack of extra parentheses.
2015-09-09 04:14:55 +02:00
Sei Lisa
6b7b366f63
Fix llRot2Euler exception
2015-09-08 03:47:00 +02:00
Sei Lisa
bc4f574b33
Managed to deal with the '-nan' case in llList2CSV. Add test cases.
2015-09-07 02:56:44 +02:00
Sei Lisa
0122d6ed70
On second thought, disable explicitcast for list+nonlist and nonlist+list entirely, as they are not the same as list+(list)nonlist and (list)nonlist+list anyway.
2015-09-05 03:09:46 +02:00
Sei Lisa
d8649deebd
nonlist + list was returning the type of the nonlist element. Fixed and added a
...
regression test.
Funnily enough, it was correct if explicit cast was active. Removed from explicit cast now that it's active for all.
2015-09-04 05:56:05 +02:00
Sei Lisa
aa74e6ed64
Sadly, Python can't represent -nan, even though llList2CSV can display it. Add a note to that effect.
2015-09-04 05:46:18 +02:00
Sei Lisa
15f1a07a72
There were more translated events. After an exhaustive analysis this is the definitive list.
2015-08-21 03:35:20 +02:00
Sei Lisa
e264260477
Two events produce different internal names than the event name itself. This was causing the reused names for these events to increase memory usage instead of reducing it. Fixed.
2015-08-21 01:20:28 +02:00
Sei Lisa
f8a6d3d86c
Reorganize so that warningPass is always set at least once when constfold is set.
2015-08-19 05:41:21 +02:00
Sei Lisa
8a8e255239
Tidy up the code a bit more after that last fix.
2015-08-18 21:16:46 +02:00
Sei Lisa
ed6603c3cd
Remove unused import.
2015-08-17 05:21:34 +02:00
Sei Lisa
6b2c5b7e39
Fix preprocessor piping. Found by SungAli, diagnosed by SungAli and Sei Lisa.
2015-08-17 04:56:32 +02:00
Sei Lisa
cd9bfd426e
Update list of pre-allocated keywords.
2015-07-26 00:13:00 +02:00
Sei Lisa
1636e56266
The llGetListLength optimization can be applied to arbitrary expressions.
2015-07-13 07:16:32 +02:00
Sei Lisa
d35ab22c42
New upstream version of builtins.txt.
2015-07-09 21:22:02 +02:00
Sei Lisa
1a67db64dc
Get rid of builtins.txt.dat by adding a parameter to the parser ctor.
2015-07-09 20:35:14 +02:00
Sei Lisa
1160fea8cf
Fix extendedtypecast problem with negative constants after typecasts.
2015-06-23 06:54:04 +02:00
Sei Lisa
4cc268b574
Fix parenthesizing of expressions having ~ or !
2015-06-17 18:30:32 +02:00
Sei Lisa
f5d150f7c9
Fix typo in IsBool and add coverage test. Report and fix by Code Violet.
2015-06-17 02:51:46 +02:00
Sei Lisa
52ebe20a67
Refine a comment
2015-06-17 02:31:58 +02:00
Sei Lisa
e35431cecf
Forgot to truncate llSqrt to F32.
2015-06-16 04:41:36 +02:00
Sei Lisa
bfabcd16db
Fix parser bug where list = anytype was accepted. Fix also the test suite.
2015-06-16 04:16:59 +02:00
Sei Lisa
cdc3a63179
Fix problem due to not copying a node. It still needs more analysis, but this patch is an improvement in that it fixes known problematic cases and doesn't seem to introduce new ones.
2015-06-14 05:11:32 +02:00
Sei Lisa
aaa8d3b7f4
Fix crash when a global was optimized out and another global depended on it.
2015-06-14 03:36:54 +02:00
Sei Lisa
e1d0753fec
When a state is removed, remove its global declaration too.
2015-06-13 02:19:15 +02:00
Sei Lisa
8ca88013a8
Minor fixes (remove deprecated .message, delete a variable at the right point, delete another variable)
2015-06-04 22:57:13 +02:00
Sei Lisa
d8629f9200
Update behaviour of llListFindList for LSO.
2015-05-24 04:22:31 +02:00
Sei Lisa
aad73fb71d
Added command line option to display the preprocessor output.
...
Will help identify the source line until preprocessor line tracking is implemented.
2015-05-06 02:45:37 +02:00
Sei Lisa
7d0ee20058
Option -p needs an argument.
2015-05-05 22:50:28 +02:00
Sei Lisa
faf296fa74
Fix bug with scripts that have UTF-8 characters.
...
The parser expects bytes, not unicode.
2015-05-03 05:19:14 +02:00