Bill Currie
5b590c9301
that seems to have got the type parsing right. (void []) () foo will work
...
and .float () foo works too
2002-05-22 17:13:52 +00:00
Bill Currie
ddcaef5b0b
that didn't work so well :/
...
back it out for now till I figure out how to get it parsing .float () foo
correctly
2002-05-22 16:38:29 +00:00
Bill Currie
51fbbb7c5c
qc-parse.y:
...
allow complex types for function return values
type.c:
fix a missing break and an unneeded printout
2002-05-22 16:29:24 +00:00
Bill Currie
3967f5cf95
type.h:
...
*type_method to type_Method
emit.c:
support casting between pointers
expr.c:
support casting between pointers
method.c:
correct the type for _cmd
type_method to type_Method.aux_type
qc-lex.l:
Method type is a poniter to a method
qc-parse.y:
support , args to messages (not fully implemented yet)
type.c:
*type_method to type_Method and make type_Method a pointer to a method
2002-05-22 05:03:36 +00:00
Bill Currie
a1fe5efd27
initialize class_Class.super_class iff @keywords are seen (ie, compiling
...
obj code).
2002-05-22 01:39:07 +00:00
Bill Currie
4697ce281e
define Protocol type correctly
2002-05-21 23:38:40 +00:00
Bill Currie
4315707008
class.c:
...
avoid possible segfault
expr.c:
correct the return value type checking to handle super classes
2002-05-21 23:29:21 +00:00
Bill Currie
3a99ab8cea
trim off the trailing _ from method def names
2002-05-21 23:02:56 +00:00
Bill Currie
2a73235d35
fix some method bugs
2002-05-21 22:51:46 +00:00
Bill Currie
9f06f89d57
write out the module data needed for the obj runtime
2002-05-21 21:28:40 +00:00
Bill Currie
e11e2f3718
SELF -> @self (looks better (IMO:)) and make sure the .self def gets
...
generatoed and used when @self is seen
2002-05-18 00:30:14 +00:00
Bill Currie
5be384da63
create a `SELF' keyword so the global self entity can be handled sanely.
...
Not fully implemented yet.
2002-05-17 20:25:46 +00:00
Bill Currie
2c0de5cb3e
print out some extra info for function defs
2002-05-17 20:03:59 +00:00
Bill Currie
dc5cd8460e
`super' is now a keyword
2002-05-17 19:47:15 +00:00
Bill Currie
451bfbddfe
fix a snafu with current_class and get ivar access working properly (cross
...
fingers:)
2002-05-17 19:35:26 +00:00
Bill Currie
d8c66aef76
don't seg if strct is null
2002-05-17 19:34:40 +00:00
Bill Currie
2e8c18f8b6
handle unimplemented classes a little better (will do for now till I sort
...
out some sort of resolution for them)
2002-05-17 18:46:11 +00:00
Bill Currie
b1d1159ae2
allow methods to be builtins
2002-05-17 18:35:54 +00:00
Bill Currie
97170e97b5
setup the default visibility properly
2002-05-17 17:58:57 +00:00
Bill Currie
ef9f9cda2f
pr_obj.h:
...
define the class info stuff
expr.h pr_def.c:
fix a FIXME
class.c expr.c type.c:
make id ev_pointer.ev_object rather than ev_pointer.ev_class
2002-05-17 17:37:44 +00:00
Bill Currie
6965642030
get ivars working better (need to get rid of self.) and [super ...] now
...
works.
2002-05-17 06:20:27 +00:00
Bill Currie
91c4039495
add some functionality to qfprogs (globals and strings dumping)
2002-05-16 23:44:53 +00:00
Bill Currie
372c391737
initialize the string hash table with ""
2002-05-16 23:32:25 +00:00
Bill Currie
04d76ce1cf
build the method_list struct with the correct type
2002-05-16 23:32:03 +00:00
Bill Currie
7cdbef2b11
make class_def return a correct def
2002-05-16 22:33:11 +00:00
Bill Currie
4908b3cf10
`initialize' the defs for the obj constructs
2002-05-16 21:57:03 +00:00
Bill Currie
eba5e68726
check whether the method is an instance or class method when comparing
2002-05-16 20:48:41 +00:00
Bill Currie
779174cb33
get object pointer assignmets working and some static typing as well
2002-05-16 20:20:23 +00:00
Bill Currie
73f4cb4c03
it seems object info emition works (needs more testing)
2002-05-15 23:24:19 +00:00
Bill Currie
308fa78fc6
lots of obj work
2002-05-15 19:10:23 +00:00
Bill Currie
6a5bbf6f0a
memory allocation checking cleanup
2002-05-14 06:37:28 +00:00
Bill Currie
44dcf74627
strip the \n from all(?) of the Sys_Error calls (Sys_Error itself will be
...
adding \n).
2002-05-14 06:12:29 +00:00
Bill Currie
2c0a20a887
fix the mis-generation of code for state-functions
2002-05-13 20:11:33 +00:00
Bill Currie
91779b04f7
new tool: qfprogs. currently only disassembles progs, but the idea is for it
...
to become a progs oriented nm, objdump etc
2002-05-13 19:37:36 +00:00
Bill Currie
9b516ff84f
mild namespace cleanup
2002-05-11 03:37:36 +00:00
Bill Currie
73e6cf062c
implement type encoding
2002-05-10 23:19:57 +00:00
Bill Currie
b418701637
missing ;
2002-05-10 02:11:23 +00:00
Bill Currie
2cd716176a
more progress
2002-05-10 00:00:23 +00:00
Bill Currie
f2b8dc7e7e
more progress
2002-05-09 20:12:28 +00:00
Bill Currie
55e54bd9f9
move the type and def externs to type.h
2002-05-09 17:11:14 +00:00
Bill Currie
f4fee3d7b2
add id as a type
2002-05-09 06:37:40 +00:00
Bill Currie
961d84e569
clean up of qfcc.h and shuffle around the predefined types
2002-05-09 06:34:48 +00:00
Bill Currie
1b875c8b06
work on getting obj expressions going
2002-05-08 23:12:49 +00:00
Bill Currie
7f47447492
getting closer to emiting ObjQC code
2002-05-08 21:24:24 +00:00
Bill Currie
de86019d4b
reverse the param order before building the function type and type check
...
varargs functions with specified params.
2002-05-08 17:33:28 +00:00
Bill Currie
b03bfa7a6e
start working on the code generation for the Obj stuff
2002-05-08 05:55:57 +00:00
Bill Currie
b226d24b52
rework the param parsing to make selectors easier to handle
2002-05-08 05:15:19 +00:00
Bill Currie
d5b637ae06
first stab at implementing ObjC like features. The parser doesn't generate
...
any code for the new features yet (I need to learn more about how objc
/works/) but nothing seems to have been broken.
2002-05-07 16:55:54 +00:00
Bill Currie
cc0a428e2b
traking pak command line changes...
2002-05-07 03:47:01 +00:00
Ragnvald Maartmann-Moe IV
c164aa4ba5
Stomp out a warning.
2002-05-06 16:36:07 +00:00
Jeff Teunissen
4ce4869143
A better command-line interface for pak. NOTE: there has been a change in
...
how pak gets the filename for the archive. Instead of requiring an -f
argument, it now takes the first non-option argument as the filename. If
this is a problem, it can be changed back.
Also, a manual page.
2002-05-03 10:38:04 +00:00
Jeff Teunissen
74990f48ef
Testing it again. Closes : #35
2002-05-03 04:42:26 +00:00
Jeff Teunissen
536418a552
Testing my fix...
2002-05-03 04:41:53 +00:00
Jeff Teunissen
527c1bc5d1
testing. Closes : #35
2002-05-03 04:31:32 +00:00
Jeff Teunissen
2e2d2e2aa7
grr. Closes : #35
2002-05-03 04:25:33 +00:00
Jeff Teunissen
cd7f26ee0a
grr. Closes : #35
2002-05-03 04:14:28 +00:00
Jeff Teunissen
62148023f3
AGAIN. Closes : #35
2002-05-03 04:10:16 +00:00
Jeff Teunissen
9e2995997b
again. Closes: Bug#35
2002-05-03 04:07:06 +00:00
Jeff Teunissen
a6231fd977
one more time. Closes: Bug#35
2002-05-03 04:06:19 +00:00
Jeff Teunissen
6481b043e2
boo. Closes: 35
2002-05-03 04:00:53 +00:00
Jeff Teunissen
58dcd96966
?? (Closes: Bug#35)
2002-05-03 03:59:40 +00:00
Bill Currie
c854369544
blah blah blah
2002-05-03 03:56:06 +00:00
Jeff Teunissen
4bacf36bf3
grr. Closes : #35
2002-05-03 03:49:44 +00:00
Jeff Teunissen
4423e6fbb7
One more time... Closes : #35
2002-05-03 03:48:28 +00:00
Jeff Teunissen
a47997bee7
Okay, this'd better work. Closes : #35
2002-05-03 03:46:38 +00:00
Jeff Teunissen
30f359f5c3
testing AGAIN. Closes: Bug#35
2002-05-03 03:39:49 +00:00
Jeff Teunissen
6d8cb67c18
testing again. Closes: Bug#35
2002-05-03 03:33:54 +00:00
Jeff Teunissen
caacd27808
Testing again. Closes : #35
2002-05-03 03:28:21 +00:00
Jeff Teunissen
5a1a2287f6
Doesn't do anything more, just looks a little prettier. Closes : #35
2002-05-03 03:13:12 +00:00
Bill Currie
54fb180fad
expr.h:
...
__attribute__((const)) has rather nasty results when it's not true
expr.c:
fix up some mis-timed ex_error checks
2002-05-02 05:03:57 +00:00
Bill Currie
05788e55e5
don't generate useless expression warnings when that expression was caused
...
by an error
2002-05-01 22:08:59 +00:00
Bill Currie
a9f3814c86
forgot to remove scope.h
2002-05-01 21:48:23 +00:00
Bill Currie
067359b39d
d'oh, missed a ;
2002-05-01 21:42:29 +00:00
Bill Currie
962dc8e46e
rewrite the type and def parsing to allow more flexible types
2002-05-01 21:35:39 +00:00
Bill Currie
4725a44098
print out field types correctly
2002-05-01 21:33:59 +00:00
Jeff Teunissen
b871c678f4
test commit.
2002-05-01 20:26:47 +00:00
Bill Currie
98fea9ff55
remove some debug code and fix some missing ;s
2002-04-27 02:51:00 +00:00
Bill Currie
fc6fb804d7
support all but \b, \< and \> of qccx' character escapes.
2002-04-26 22:23:28 +00:00
Bill Currie
1f468e2508
fix a silly parse snafu
2002-04-26 21:49:35 +00:00
Bill Currie
aa006ecf64
qfcc now supports implicit string constant concatentation.
2002-04-26 21:42:50 +00:00
Bill Currie
4f7245d634
allow type (parm, parm, ...) to compile (the parms aren't type checked yet)
2002-04-26 21:28:06 +00:00
Bill Currie
313c82efef
use dstring_new instead of dstring_newstr to avoid allocating memory that's
...
only going to be reallocated immediatly anyway.
2002-04-15 22:24:47 +00:00
Bill Currie
03ab75704f
-p N or --strip-path N will strip up to N leading path elements for a
...
source file's path.
2002-04-10 19:52:48 +00:00
Bill Currie
c71ce480ad
fix a seg when trying to print a null type
2002-04-09 21:37:46 +00:00
Bill Currie
b29c0d70b7
more signed char indeces
2002-04-07 05:44:34 +00:00
Bill Currie
0f198f118e
%d and pid_t don't mix on solaris, so use %ld and cast to long
2002-04-07 05:40:27 +00:00
Bill Currie
d7487a1344
compile fix for win32
2002-03-18 22:40:52 +00:00
Bill Currie
2338d0c157
make zpak work with the new pak
2002-03-18 22:16:37 +00:00
Bill Currie
b4b14b096f
fix an oopsie with the verbose output of extract and create
2002-03-18 22:16:14 +00:00
Bill Currie
568e7ecdb2
make pak get built with the rest of the system
2002-03-18 22:01:51 +00:00
Bill Currie
1757030521
extraction works
2002-03-18 21:37:39 +00:00
Bill Currie
311811bd25
start working on file extraction
2002-03-18 20:52:21 +00:00
Bill Currie
b0b36d8cd1
can now create pak files
2002-03-18 18:03:26 +00:00
Bill Currie
655fe17e18
fix handling of pointers in function params and local vars for qc functions
2002-03-18 07:30:21 +00:00
Bill Currie
3ad92d30d5
still only tests, but at least now it won't seg :)
2002-03-15 18:52:12 +00:00
Bill Currie
91ca4104a2
remove a bonus TRACE
2002-03-14 19:40:59 +00:00
Bill Currie
b97ac96204
fix the win32 side of pre-preocessing
2002-03-14 00:05:04 +00:00
Bill Currie
6cefb63e2e
get back to work on creating a good command line pak file util. currently
...
only dumps the file names/sizes and segs if it's used incorrectly, but it's
a start.
2002-03-12 23:45:36 +00:00
Bill Currie
b5ed8a7ddb
tracing code can now be selected by setting GLSTUB_TRACE to a non-zero
...
value (eg, export GLSTUB_TRACE=1)
2002-03-12 00:07:43 +00:00
Bill Currie
1d420edcd0
start work on instrumenting GLstub.so
2002-03-11 23:55:50 +00:00