X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=NewQC.md;h=b2fd90d86f6ef9fe3d570b27a6deff7259406322;hb=bdc050ca55521b34b01e750709c6e258da766349;hp=78a9b2c6620071ae7cffc9eabd8d3e5750e3d6c2;hpb=9c8ff5c8ce33f93e5a9ab014e59ec4c7d4a6ad97;p=xonotic%2Fxonotic.wiki.git
diff --git a/NewQC.md b/NewQC.md
index 78a9b2c..b2fd90d 100644
--- a/NewQC.md
+++ b/NewQC.md
@@ -1,11 +1,12 @@
New QC Syntax
=============
-{{\>toc}}
-
It is possible that at some point we decide to switch QC-compiler which requires some changes to the code.
-**For more information see** http://dev.xonotic.org/projects/bocc
+~~For more information see http://dev.xonotic.org/projects/bocc~~
+
+(Update: Blub's bocc compiler didn't make it, but someone else came along, both devs [joined forces](https://github.com/graphitemaster/gmqcc/graphs/contributors) and brought us [GMQCC](https://graphitemaster.github.io/gmqcc/doc.html).
+ This is now the QuakeC compiler used by the Xonotic project.)
Clean syntax:
-------------
@@ -15,16 +16,16 @@ A clean syntax is needed, the current implementation uses the following:
|definition|meaning|
|----------|-------|
-|float foo
|global variable|
-|float .foo
|entity field|
-|.float foo
|fieldpointer|
-|.float .foo
|entity field of type fieldpointer|
-|float foo(void)
|function|
-|float foo\*(void)
|function pointer|
-|.float foo(void)
|function returning a fieldpointer .float|
-|.float foo\*(void)
|function pointer, returning a fieldpointer .float|
-|float .foo(void)
|entity field of type function returning float|
-|.float .foo(void)
|entity field of type function returning fieldpointer|
+|`float foo`|global variable|
+|`float .foo`|entity field|
+|`.float foo`|fieldpointer|
+|`.float .foo`|entity field of type fieldpointer|
+|`float foo(void)`|function|
+|`float foo*(void)`|function pointer|
+|`.float foo(void)`|function returning a fieldpointer .float|
+|`.float foo*(void)`|function pointer, returning a fieldpointer .float|
+|`float .foo(void)`|entity field of type function returning float|
+|`.float .foo(void)`|entity field of type function returning fieldpointer|
Function definitions:
---------------------
@@ -79,10 +80,10 @@ Since menuQC has some funny macro: ACCUMULATE\_FUNCTIONS, it seemed like a nice
Variadic parameters (do not use yet)
------------------------------------
-(This might get changed to be more flexible so do not rely on this syntax...)
+(This might get changed to be more flexible so do not rely on this syntaxâ¦)
-Another "enhancement" is the possibility to have functions with variadic parameter lists. However, the only way to sanely access them (until pointers are allowed) is via a recursive way.
-Here's an example that assumes float parameters and prints them one after the other:
+Another âenhancementâ is the possibility to have functions with variadic parameter lists. However, the only way to sanely access them (until pointers are allowed) is via a recursive way.
+Hereâs an example that assumes float parameters and prints them one after the other:
void printfloats(float count, float first, ...)
{
@@ -97,4 +98,5 @@ Here's an example that assumes float parameters and prints them one after the ot
myprint(count-1, ...);
}
-So myprint(4, 1, 2, 3, 4)
would print "1, 2, 3, 4\\n"
+So `myprint(4, 1, 2, 3, 4)` would print "1, 2, 3, 4\\n"
+