| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Operation "modularize Chawan somewhat" part 3
|
|
|
|
|
|
|
|
| |
TODO: find the exact flags we need instead of -fpermissive.
See also:
https://todo.sr.ht/~bptato/chawan/12
https://forum.nim-lang.org/t/11587
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I wish they didn't change this. unsafeAddr may be a confusing name,
but it's more powerful than addr. Merging them violates the principle
of least power.
e.g. say I get n thru a param, and shadow it
proc x(n: int) =
var n = n + 1
a screen or two later I call
mutates_variable_in_c(addr i)
then later I no longer need to add 1, so I remove the var line.
In Nim 1.6 the compiler refuses to compile, I can instantly find the
bug. In 2.0 it does... whatever?? Maybe for an int it "works", for an
object it likely doesn't. Certainly not something I'd enjoy debugging.
|
|
|
|
|
|
| |
The API is horrid :( but at least it copies less.
TODO: think of a better API.
|
|
|
|
|
|
|
| |
We do not use threads at the moment, so there's no need to link to
pthreads either.
(Also, add nim.cfg to the cha target in the Makefile.)
|
|
|
|
| |
much better
|
|
|
|
|
| |
* bindings/quickjs: importc and use correct pointer types
* add constcharp module for when it is unavoidable
|
| |
|
|
|
|
| |
agh... it didn't work with GCC
|
|
|
|
|
|
|
| |
Needed to get Chawan to compile on FreeBSD...
(clang 16 makes passing incompatible pointer types an error, but that
breaks our C bindings.)
|
|
|
|
| |
Operation "modularize Chawan somewhat" part 2
|
|
|
|
| |
Operation "modularize Chawan somewhat" part 1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Import punycode, as it has been removed from stdlib.
* Fix some syntax errors
* Apparently you can no longer compare distinct pointers with nil.
Add explicit comparisons with typeof(nil) instead.
* htmlparser: rename _ to other, as semantics of _ have changed.
(Quite a shame, it looked better with _. Oh well.)
* Explicitly specify mm:refc, as the browser OOMs with orc for
some reason.
Confirmed to compile & run on 2.0.0, 1.6.14, 1.6.12, 1.6.10 and 1.6.8.
(<1.6.8 it's broken & wontfix.)
|
| |
|
| |
|
| |
|
|
|