vrtc / pjass (public) (License: BSD) (since 2023-08-03) (hash sha1)
pjass is a free Jass scripting language parser. This repository is a fork of lep/pjass. The goal is to add Debian packaging. As of the time of this writing, it works for current stable, that is Debian 12 (bookworm).
List of commits:
Subject Hash Author Date (UTC)
Can now compile on freebsd and linux from one branch. 0772c4bd17dcfc389ca0e887b4bbceda8e46fa8e lep 2017-01-07 21:05:10
More descriptive check for assignment. 474462b44fe20e958e8c6a3b51ba2da9c4a46451 lep 2016-11-24 16:47:15
Actually add all the sources to the release zipball 151ae88aac4c3ac8aae432a4a240239f652fa8f4 lep 2016-11-10 15:30:38
Don't treat ``.'' as a valid real value. 72e5087e22af66de0765c6d4f9ceae154725e2c2 lep 2016-10-24 14:55:02
Also split on \r in flag parser. 519d685ab24864716e3a1ecfd797790a327868ca lep 2016-08-28 12:41:08
Improved errors for function-calls. 5a50178a03c5aa3d153e8699070942327fde0b7b lep 2016-08-27 18:44:01
A very strange error with newlines and comments. d822cacbd889fe723102102c8a09d578d90f013e lep 2016-08-21 09:15:00
Added +nosyntaxerror and +nosemanticerror e755e12b3cab1d5069574e34d22633dd420bb230 lep 2016-05-07 13:42:57
MinGW fixes. f579fad932039f1bca43e7612154f5b7dc4aea4f lep 2016-03-13 19:29:36
Added +shadow description to -h 6a62b1ecf773175992a2a430a178fffb5532e467 lep 2016-03-13 19:35:20
Reduced duplicate code from variable decleration. 01d6f01ebf7c2df9f58aea1bba61bae8a270b520 lep 2016-03-13 19:03:34
Added optional variable shadowing warning. 2a0b36f50d2850c4c2ff09f503e6ffad6abf58d9 lep 2016-03-13 14:30:36
Removed the +s and +e<n> flags. 4ab97e853531f2767136602d88c6a86897089eea lep 2016-03-13 10:52:37
Added help target to Makefile 1af0f62834728baa465d03b355738e64578d9714 lep 2016-03-03 16:02:34
Added help target to Makefile a713b03be873950d11e62a7b9e4f2d9a8d2e0945 lep 2016-03-03 16:02:34
Removed strict downcasting check. 5f6ffd725b2ac9d24eff5917d96ceeeaaf748e5f lep 2016-03-03 16:00:49
Added filterreturnsbool check which can be enabled via //# filter 6828cb5e726e7f57cad0ec3f794209c2012c7908 lep 2016-03-03 15:58:59
Moved code into seperate files. 047c531a1c3affb43f53d102c94e765d772ecff3 lep 2016-02-17 20:57:30
Also pack testfiles into the release zip. e2d8ca45c7175b4f0192ddb6202ae71059369495 lep 2016-02-01 15:15:03
Fixed all Warnings. 981e0b8b51eebb4904a42c58c825fa10185f5d23 lep 2016-02-01 15:12:38
Commit 0772c4bd17dcfc389ca0e887b4bbceda8e46fa8e - Can now compile on freebsd and linux from one branch.
Author: lep
Author date (UTC): 2017-01-07 21:05
Committer name: lep
Committer date (UTC): 2017-01-07 21:05
Parent(s): 474462b44fe20e958e8c6a3b51ba2da9c4a46451
Signer:
Signing key:
Signing status: N
Tree: e61c73ae41ba2ae4f819864a277a72f54735ae48
File Lines added Lines deleted
Makefile 1 1
tests/should-fail/set-type1.j 6 0
tests/should-fail/set-type2.j 7 0
typeandname.c 10 5
File Makefile changed (mode: 100644) (index d85a4fd..5908851)
1 CFLAGS = -O3 -flto -MMD
1 CFLAGS ?= -O3 -flto -MMD
2 2 VERSION := $(shell git rev-parse --short HEAD) VERSION := $(shell git rev-parse --short HEAD)
3 3
4 4 # when testing and releasing, we can't run both in parallel # when testing and releasing, we can't run both in parallel
File tests/should-fail/set-type1.j added (mode: 100644) (index 0000000..8673dab)
1 type unit extends handle
2
3 function test takes nothing returns nothing
4 local unit u
5 set unit u = null
6 endfunction
File tests/should-fail/set-type2.j added (mode: 100644) (index 0000000..b0dfe73)
1
2 type unit extends handle
3
4 function test takes nothing returns nothing
5 local unit u
6 set u unit = null
7 endfunction
File typeandname.c changed (mode: 100644) (index b00c032..711a909)
3 3
4 4 #include "typeandname.h" #include "typeandname.h"
5 5
6 #if !(defined __CYGWIN__ || defined linux)
6 #if defined __FreeBSD__
7 void * _aligned_malloc(size_t size, size_t alignment){
8 return aligned_alloc(alignment, size);
9 }
10 #elif defined linux
11 #include <malloc.h>
12 void * _aligned_malloc(size_t size, size_t alignment){
13 return memalign(alignment, size);
14 }
15 #else !(defined __CYGWIN__ || defined linux)
7 16 extern void * _aligned_malloc(size_t size, size_t alignment); extern void * _aligned_malloc(size_t size, size_t alignment);
8 17 #endif #endif
9 18
 
... ... struct typeandname *newtypeandname(const struct typenode *ty, const char *name)
19 28 struct typenode *newtypenode(const char *typename, const struct typenode *superclass) struct typenode *newtypenode(const char *typename, const struct typenode *superclass)
20 29 { {
21 30 struct typenode *result; struct typenode *result;
22 #if (defined __CYGWIN__ || defined linux)
23 result = memalign(8, sizeof(struct typenode));
24 #else
25 31 result = _aligned_malloc(8, sizeof(struct typenode)); result = _aligned_malloc(8, sizeof(struct typenode));
26 #endif
27 32 result->typename = strdup(typename); result->typename = strdup(typename);
28 33 result->superclass = superclass; result->superclass = superclass;
29 34 return result; return result;
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/vrtc/pjass

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/vrtc/pjass

Clone this repository using git:
git clone git://git.rocketgit.com/user/vrtc/pjass

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main