| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
| |
Previously had char fixed to signed char, this is not useful on ARM as it does
not align with the host type. Instead, decide at runtime (or probably compile
time) if char is signed or not. Also use CHAR_MIN and CHAR_MAX, for the
min/max.
|
|
|
|
|
| |
Now need to convert the buffer to a string before passing to functions that
expect string.
|
|
|
|
|
| |
The -fPIE option is now the default and it needs to be turned off when making
simple progs that use .rodata and .text.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Moved make of src/include/ragel to configure script. Expect colm 0.14.7.
|
|
|
|
| |
This version of colm includes a critical fix for big-endian system. Fixes #61.
|
|
|
|
|
| |
Latest colm includes bugfixes for refcounting, which fixes a ragel issue with
includes #58.
|
|
|
|
| |
also expect colm 0.14.4, the latest release
|
| |
|
|
|
|
| |
Switching to major.minor.point format and will build some momentum around that.
|
| |
|
|
|
|
| |
Some codegen files have moved to colm, where they will be reused.
|
|
|
|
| |
Need to use unsigned min/max fields for unsigned types. Fixed size.
|
|
|
|
|
|
| |
* Checkout, build and install colm first, use when configuring ragel.
* Include test dir in SUBDIRS of main Makefile.
* Replaced colm-suite-* paths with ragel-*.
|
|\
| |
| | |
common: Fix ambiguous CHAR_MIN/MAX definition
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
According to C/C++ standards, char is implementation-defined whether
it could hold negative values.
See: http://www.cplusplus.com/reference/climits/
In ragel char is treated as a signed value with range as [-128, 127].
This means that the CHAR_MIN/CHAR_MAX should be replaced with a more
accurate definition to align across different systems and library implementations.
Change-Id: I10668f2d2550b603101dc68f4cc1121035022abd
Signed-off-by: Jun He <jun.he@linaro.org>
|
|/ |
|
| |
|
| |
|
|
|
|
|
| |
Moved param check code to mainline as part of trimming down common file.
NameInst structs live in libfsm and can be removed from ragel.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Plan is to give colm language-independent code generation features taken from
ragel. We first merged ragel and colm, and then forked ragel off, leaving
behind what will go into colm. Ragel gets a dependency on the colm package.
|
| |
|
|\
| |
| | |
add flag to support standalone executables
|
|/ |
|
| |
|
|
|
|
|
|
|
|
| |
Rather than using the --transform argument to tar to remove the .pack extension
from the individual files when creating the tarball, simply rename the files
after unpacking. The individual files will then live in the tarball with the
.pack extension, but that's okay. The --transform argument is not available on
osx tar.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Changed the calling convention for colm-wrap (formerly colm-pack) so that we
can substitute the colm program, once packing is implemented there. Makes the
new wrapper args compatible with the existing args for the colm binary.
refs #85
|
|
|
|
|
| |
Sending a newline means a missing ; results in the error getting attributed to
the next line. refs #103
|
|
|
|
| |
refs #103
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The colm language has an ambiguity between literal concatenations and distinct
statements, where the first ends in string/accum/cons/pat and the second is a
bare send. For example:
match P
"a b c d"
"e f g h"
Warn on some of these by checking for an outdent (relative to the first
component) on top level concatenations. If the user does not outdent between
separate intended statements we cannot help with this check.
refs #95
|
|
|
|
|
|
|
| |
In 900189a4d23f0180970f22479f44377973a2d330 we added an option to hack the
parsing of hex literals to allow ranges that cross zero. This was necessary
when alphtype was signed. Moving to an unsigned type eliminates the need for
this.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Switching to unsigned so we can reference chars with the high bit set in the
way that is common when discussing utf and unicode: using hex chars. Negative
values are really uncomfortable and don't lend themselves to specifying ranges.
This change is for the parser and stream/input code only. The collected tree
data still uses char, which makes it convenient to extract the data from a
top-down or bottom-up load. If we change the tree type we need to cast the
pointers all over the loading code.
refs #104 refs #97 refs #81
|
|
|
|
|
| |
We eliminated the use of this field some time ago, but never removed the field
from the struct.
|
| |
|
|
|
|
| |
refs #97
|
|
|
|
| |
refs #97
|
|
|
|
| |
refs #97
|
|\
| |
| |
| |
| | |
Pushing forward with the literal-concatenation patch. This brings back lists of
literals strings at the top level of strings, constructors and patterns.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit brings back string concatenations in match/cons/string literals at
the top level. It does not bring back concatenation of [] lists. For example,
you can write:
match Foo
"hi
"there
BUT NOT:
match Foo
[Hi] [There]
The concatenation (of both forms) was removed when bare sends were added, due
to the ambiguity created. However, removing these concatenations has proven
quite annoying.
This change re-introduces the ambiguity, which maybe we should do something
about by detecting when it is likely via mis-alignments of the strings, or
making some other change to sends.
refs #95
|
| | |
|