path: root/parse/use.c
AgeCommit message (Collapse)Author
2015-12-22Fix several typos in usefile generation.Ori Bernstein
2015-12-22Make traits work across files.Ori Bernstein
This bumps ABI, and contains a hack.
2015-12-15Add support for traits with aux types.Ori Bernstein
This is not final syntax, but it seems to work.
2015-12-14Initial support for void as an expression.Ori Bernstein
2015-11-17MEGAPATCH: Tabification.Ori Bernstein
Tabs > spaces. By 4 spaces, to be precise. Let's use them.
2015-10-02Propagate extra libraries through the system.Ori Bernstein
2015-10-01Don't double-insert namespaces.Ori Bernstein
updatens() was changed at some point to register the namespace. We don't need to put it in again after we call it, and in fact, we crash if we do.
2015-09-27Bump ABI version. Also, improve errors about it.Ori Bernstein
We now say which version we got, which version we expected, and only warn in mbld. This means that we can probably build newer usefiles with older mblds.
2015-09-24Make global imports actually global.Ori Bernstein
2015-09-24Put the closure at the function level.Ori Bernstein
2015-09-18Print which usefile got the ABI version mismatch.Ori Bernstein
2015-08-23Refactor the substituition of the early coalesces.Ori Bernstein
2015-07-14Remove debug print.Ori Bernstein
2015-07-14Regenerate bootstrap for linux.Ori Bernstein
2015-07-13Correctly deduplicate types.Ori Bernstein
2015-07-09Refactor namespaces.Ori Bernstein
We no longer store subnamespaces in the stab node; now they're a part of the file.
2015-06-28Implement '__init__' functions.Ori Bernstein
2015-06-26Fix a few misc memory bugs.Ori Bernstein
2015-06-15Start working on __init__, check types.Ori Bernstein
This change both checks the types of main(), and of __init__. __init__ is not yet implemented.
2015-05-17Fix builds for libdate.Ori Bernstein
Turns out we were merging things wrongly.
2015-05-03Fix exports of specialized types.Ori Bernstein
We had some bugs when exporting a type that had a specialization, eg, if a function specialized std.htab, so that one of it's args was: std.htab(byte[:], byte[:]) would conflict with the very generic definition it was using in some circumstances.
2015-04-23Give more useful error on failing to find matching pkg.Ori Bernstein
It used to be that to find the matching use package, you had to poke around in a debugger with trial and error.
2015-03-26Change ABI version.Ori Bernstein
2015-03-26akeOri Bernstein
2015-03-10Implement type description dumping.Ori Bernstein
2015-03-09Put a version in the usefile.Ori Bernstein
Give an error instead of a crash on version changes.
2015-03-09Make type substitution more robust.Ori Bernstein
Break out Tyname into Tygeneric and Tyname. Tygeneric acts like a function returning a fully substituted Tyname.
2015-02-09Print error when we can't find symtab to merge into.Ori Bernstein
2015-01-20Add missing stdarg.h includes.Ori Bernstein
2014-12-21Traits seem to be working. Whee!Ori Bernstein
2014-12-21Traits are more worky.Ori Bernstein
2014-12-21Make our type ids more stable across files.Ori Bernstein
Some sort of id string based on the actual type, not the hash of the string representation.
2014-12-20Tag exported symbols from traits.Ori Bernstein
We weren't treating them as exported, which caused errors when trying to import them, obviously.
2014-12-18Get rid of the 'exports' stab.Ori Bernstein
This should simplify a number of chunks of code.
2014-12-13Add plan9 instruction formats.Ori Bernstein
Work towards a plan9 port. This commit also fixes a bug with strings that contain '\0'. The commits got tangled, and I'm too lazy to detangle them.
2014-10-07Keep track of source files as well as line numbers.Ori Bernstein
This makes our error messages better *AND* makes it easier to provide good debug info later.
2014-10-07Add support for storing file ids.Ori Bernstein
2014-10-07Write out all important attrs on decls in usefiles.Ori Bernstein
2014-10-07Usefiles record whether a variable is a noret var.Ori Bernstein
2014-10-06Split libstd into libstd and libsys.Ori Bernstein
2014-10-04Start work of porting to Plan 9.Ori Bernstein
We're missing getopt, but everything else seems to work as far as compiling goes. Remaining work: - Converting assembly syntax - Invoking plan9 executables correctly
2014-09-17Add support for 'pkglocal' keyword.Ori Bernstein
pkglocal makes the export only available within the package.
2014-09-06Error on declared but unimplemented functions.Ori Bernstein
2014-05-21Add itop and ptoi functons.Ori Bernstein
Slightly (but not much) nicer than casting. The only feature I really miss from C++ in C: Generics.
2014-05-20Tag exported types in traits.Ori Bernstein
We used to fail because not all types were exported from a trait.
2014-05-19Insert the decl as a decl, not an impl.Ori Bernstein
2014-05-19Use the correct sybmol writing function to write.Ori Bernstein
2014-05-19Pickle/unpickle Nimpl.Ori Bernstein
We currently seem broken on the type ids.
2014-05-19Try to iterate over types.Ori Bernstein
Currently attempts to double specialize, but it's a step forward.
2014-05-15Actually write out impls to usefiles.Ori Bernstein