polserver/testsuite/escript/oper/oper007.src
Kevin Eady 3ccf701ce9
Format testsuite scripts, pol-core support modules (#713)
* Format escript testsuite

* Manual formatting for escript testsuite
- Add format-off to places where formatter does what it should, but we don't like the results
- Manually change places where formatter outputs weird things _without_ format-off, so next format-all would show changes if not fixed

* Update .err files; add update_err.py helper script

Use the format `:line:col: message` for all .err file checks. This
allows us to change the file names without needing to edit the .err
contents.

Note that `in/inc0{1,2}.err` need have error messages between POSIX and
Windows, so their messages are a bit more "generic" than the other errs.

* Format pol testsuite

* Manual formatting for pol testsuite

* Format pol-core modules

* Manual formatting for pol-core modules

* Additional format pol-core modules

Use FormatterLineWidth=10000 since module functions must be on one line
because of the parse_modules target

* Address Discord comments

- Support multi-line module function declarations in parse_modules

* Format on df07831
2024-10-04 10:29:55 +02:00

71 lines
1.4 KiB
Text

// do crazy senseless stuff
// nothing should crash
program foo()
var a;
var test := { a, struct, dictionary, array, "", 1, 1.0 };
foreach t1 in test
foreach t2 in test
print( !t1 );
print( ~t1 );
print( -t1 );
print( +t1 );
print( t1 * t2 );
print( t2 * t1 );
print( t1 / t2 );
print( t2 / t1 );
print( t1 + t2 );
print( t2 + t1 );
print( t1 - t2 );
print( t2 - t1 );
print( t1 % t2 );
print( t2 % t1 );
print( t1 & t2 );
print( t2 & t1 );
print( t1 ^ t2 );
print( t2 ^ t1 );
print( t1 | t2 );
print( t2 | t1 );
print( t1 >> t2 );
print( t2 >> t1 );
print( t1 << t2 );
print( t2 << t1 );
PlusEqual( t1, t2 );
PlusEqual( t2, t1 );
MinusEqual( t1, t2 );
MinusEqual( t2, t1 );
TimesEqual( t1, t2 );
TimesEqual( t2, t1 );
DivEqual( t1, t2 );
DivEqual( t2, t1 );
ModulusEqual( t1, t2 );
ModulusEqual( t2, t1 );
endforeach
endforeach
endprogram
function PlusEqual( t1, t2 )
var t := t1;
t += t2;
print( t );
endfunction
function MinusEqual( t1, t2 )
var t := t1;
t -= t2;
print( t );
endfunction
function TimesEqual( t1, t2 )
var t := t1;
t *= t2;
print( t );
endfunction
function DivEqual( t1, t2 )
var t := t1;
t /= t2;
print( t );
endfunction
function ModulusEqual( t1, t2 )
var t := t1;
t %= t2;
print( t );
endfunction