mirror of
https://github.com/ganelson/inform.git
synced 2024-06-26 04:00:43 +03:00
commit
73fbe6c357
6
inform7/.gitignore
vendored
6
inform7/.gitignore
vendored
|
@ -44,6 +44,12 @@ Tests/Test Inter/_Inter_Binary/
|
|||
Tests/Test Externals/_Build/
|
||||
Tests/Test Externals/_Executables/
|
||||
Tests/Test Externals/_Textual/
|
||||
Tests/Test Makes/Eg?-C/Eg?
|
||||
Tests/Test Makes/Eg?-C/Eg?-I.[co]
|
||||
Tests/Test Makes/Eg?-C/Eg?-C.o
|
||||
Tests/Test Makes/Eg?-C/actual_output.txt
|
||||
Tests/Test Makes/Eg?-C/build_log.txt
|
||||
Tests/Test Makes/Eg?-C/inform7_symbols.h
|
||||
Tests/Test Maps/_Maps_Actual/
|
||||
Tests/Test Problems/_Results_Actual/
|
||||
Tests/Documentation/
|
||||
|
|
|
@ -198,7 +198,7 @@ typedef struct i7_property_set {
|
|||
i7word_t address[I7_MAX_PROPERTY_IDS];
|
||||
i7word_t len[I7_MAX_PROPERTY_IDS];
|
||||
} i7_property_set;
|
||||
i7_property_set i7_properties[];
|
||||
extern i7_property_set i7_properties[];
|
||||
|
||||
i7word_t i7_prop_addr(i7process_t *proc, i7word_t K, i7word_t obj, i7word_t pr);
|
||||
i7word_t i7_prop_len(i7process_t *proc, i7word_t K, i7word_t obj, i7word_t pr);
|
||||
|
|
|
@ -4,11 +4,15 @@
|
|||
-set CCOMPILER 'set-me-to-some-c-compiler-please'
|
||||
-set CLINKER 'set-me-to-some-c-linker-please'
|
||||
-set EXESUFFIX ''
|
||||
-set MAKEFLAGS '-s'
|
||||
-if MacOS -set CCOMPILER 'clang -g -std=c11 -ferror-limit=10000 -Wno-unused-value -c'
|
||||
-if MacOS -set CLINKER 'clang -g -ferror-limit=10000'
|
||||
-if Windows -set CCOMPILER 'x86_64-w64-mingw32-clang -g -std=c11 -ferror-limit=10000 -Wno-unused-value -c'
|
||||
-if Windows -set CLINKER 'x86_64-w64-mingw32-clang -g -ferror-limit=10000'
|
||||
-if Windows -set EXESUFFIX '.exe'
|
||||
-if linux -set CCOMPILER 'gcc -g -std=c11 -fmax-errors=10000 -c'
|
||||
-if linux -set CLINKER 'gcc -g -lm'
|
||||
-if linux -set MAKEFLAGS '-s --no-print-directory'
|
||||
|
||||
-case [Diagnostics] 'inform7/Tests/GenerateDiagnostics-G.txt'
|
||||
-cases [Main] 'inform7/Tests/Test Cases'
|
||||
|
@ -530,7 +534,7 @@
|
|||
|
||||
step: make -C $MAKERSPACE >$LOG 2>&1
|
||||
or: 'failed to build example make' $LOG
|
||||
step: make -C $MAKERSPACE -s run >$RLOG 2>&1
|
||||
step: make -C $MAKERSPACE `$$MAKEFLAGS run >$RLOG 2>&1
|
||||
or: 'failed to run example make' $RLOG
|
||||
|
||||
match text: $RLOG $ILOG
|
||||
|
|
|
@ -1105,6 +1105,7 @@ void ImperativeSubtrees::unroll_says(parse_node *cb_node, wording W, int depth)
|
|||
case '[': sqb++; if (sqb > 1) @<Issue problem message for nested substitution@>; break;
|
||||
case ']': sqb--; if (sqb < 0) @<Issue problem message for unopened substitution@>; break;
|
||||
case ':': if ((k>0) && (Characters::isdigit(p[k-1])) && (Characters::isdigit(p[k+1]))) break;
|
||||
/* fall through */
|
||||
case ';':
|
||||
if (sqb > 0) @<Issue PM_TSWithPunctuation problem@>;
|
||||
break;
|
||||
|
|
|
@ -33,6 +33,12 @@ Tests/Test Inter/_Inter_Binary/
|
|||
Tests/Test Externals/_Build/
|
||||
Tests/Test Externals/_Executables/
|
||||
Tests/Test Externals/_Textual/
|
||||
Tests/Test Makes/Eg?-C/Eg?
|
||||
Tests/Test Makes/Eg?-C/Eg?-I.[co]
|
||||
Tests/Test Makes/Eg?-C/Eg?-C.o
|
||||
Tests/Test Makes/Eg?-C/actual_output.txt
|
||||
Tests/Test Makes/Eg?-C/build_log.txt
|
||||
Tests/Test Makes/Eg?-C/inform7_symbols.h
|
||||
Tests/Test Maps/_Maps_Actual/
|
||||
Tests/Test Problems/_Results_Actual/
|
||||
Tests/Documentation/
|
||||
|
|
|
@ -484,6 +484,7 @@ example. (See below.)
|
|||
case FILTER_DEFER:
|
||||
EmitCode::inv(POSTINCREMENT_BIP);
|
||||
EmitCode::down();
|
||||
if (Q_sp <= 0) internal_error("Q stack underflow");
|
||||
EmitCode::ref_symbol(K_value, qcn_s[Q_sp-1]);
|
||||
EmitCode::up();
|
||||
break;
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
-if Windows -set CCOMPILER 'x86_64-w64-mingw32-clang -g -std=c11 -ferror-limit=10000 -Wno-unused-value -c'
|
||||
-if Windows -set CLINKER 'x86_64-w64-mingw32-clang -g -ferror-limit=10000'
|
||||
-if Windows -set EXESUFFIX '.exe'
|
||||
-if linux -set CCOMPILER 'gcc -g -std=c11 -fmax-errors=10000 -c'
|
||||
-if linux -set CLINKER 'gcc -g -lm'
|
||||
|
||||
-cases [Valid] 'inter/Tests/Valid'
|
||||
-cases [Invalid] 'inter/Tests/Invalid'
|
||||
|
|
|
@ -808,7 +808,7 @@ typedef struct i7_property_set {
|
|||
i7word_t address[I7_MAX_PROPERTY_IDS];
|
||||
i7word_t len[I7_MAX_PROPERTY_IDS];
|
||||
} i7_property_set;
|
||||
i7_property_set i7_properties[];
|
||||
extern i7_property_set i7_properties[];
|
||||
|
||||
i7word_t i7_prop_addr(i7process_t *proc, i7word_t K, i7word_t obj, i7word_t pr);
|
||||
i7word_t i7_prop_len(i7process_t *proc, i7word_t K, i7word_t obj, i7word_t pr);
|
||||
|
|
|
@ -5,10 +5,10 @@
|
|||
set: $A = $PATH/_Results_Actual/$CASE.txt
|
||||
set: $I = $PATH/_Results_Ideal/$CASE.txt
|
||||
|
||||
set: $K1 = inform7/internal/Inter/BasicInformKit/kinds/Macros.neptune
|
||||
set: $K2 = inform7/internal/Inter/BasicInformKit/kinds/Protocols.neptune
|
||||
set: $K3 = inform7/internal/Inter/BasicInformKit/kinds/Core.neptune
|
||||
set: $K4 = inform7/internal/Inter/BasicInformKit/kinds/Punctuation.neptune
|
||||
set: $K1 = inform7/Internal/Inter/BasicInformKit/kinds/Macros.neptune
|
||||
set: $K2 = inform7/Internal/Inter/BasicInformKit/kinds/Protocols.neptune
|
||||
set: $K3 = inform7/Internal/Inter/BasicInformKit/kinds/Core.neptune
|
||||
set: $K4 = inform7/Internal/Inter/BasicInformKit/kinds/Punctuation.neptune
|
||||
|
||||
mkdir: $PATH/_Results_Actual
|
||||
step: services/calculus-test/Tangled/calculus-test -load $K1 -load $K2 -load $K3 -load $K4 -interpret $PATH/$CASE.txt >$A 2>&1
|
||||
|
|
|
@ -147,7 +147,7 @@ kind *Latticework::j_or_m(kind *K1, kind *K2, int direction) {
|
|||
int a2 = KindConstructors::arity(K2->construct);
|
||||
if ((a1 > 0) || (a2 > 0)) {
|
||||
if (K2->construct != con) return K_value;
|
||||
kind *ka[MAX_KIND_CONSTRUCTION_ARITY];
|
||||
kind *ka[MAX_KIND_CONSTRUCTION_ARITY] = { NULL, };
|
||||
for (int i=0; i<a1; i++)
|
||||
if (con->variance[i] == COVARIANT)
|
||||
ka[i] = Latticework::j_or_m(K1->kc_args[i], K2->kc_args[i], direction);
|
||||
|
|
|
@ -5,10 +5,10 @@
|
|||
set: $A = $PATH/_Results_Actual/$CASE.txt
|
||||
set: $I = $PATH/_Results_Ideal/$CASE.txt
|
||||
|
||||
set: $K1 = inform7/internal/Inter/BasicInformKit/kinds/Macros.neptune
|
||||
set: $K2 = inform7/internal/Inter/BasicInformKit/kinds/Protocols.neptune
|
||||
set: $K3 = inform7/internal/Inter/BasicInformKit/kinds/Core.neptune
|
||||
set: $K4 = inform7/internal/Inter/BasicInformKit/kinds/Punctuation.neptune
|
||||
set: $K1 = inform7/Internal/Inter/BasicInformKit/kinds/Macros.neptune
|
||||
set: $K2 = inform7/Internal/Inter/BasicInformKit/kinds/Protocols.neptune
|
||||
set: $K3 = inform7/Internal/Inter/BasicInformKit/kinds/Core.neptune
|
||||
set: $K4 = inform7/Internal/Inter/BasicInformKit/kinds/Punctuation.neptune
|
||||
|
||||
mkdir: $PATH/_Results_Actual
|
||||
step: services/kinds-test/Tangled/kinds-test -load $K1 -load $K2 -load $K3 -load $K4 -interpret $PATH/$CASE.txt >$A 2>&1
|
||||
|
|
|
@ -319,7 +319,7 @@ int Vocabulary::hash_code_from_word(wchar_t *text) {
|
|||
wchar_t *p = text;
|
||||
switch(*p) {
|
||||
case '-': if (p[1] == 0) break; /* an isolated minus sign is an ordinary word */
|
||||
/* and otherwise fall into... */
|
||||
/* and otherwise fall through to... */
|
||||
case '0': case '1': case '2': case '3': case '4':
|
||||
case '5': case '6': case '7': case '8': case '9':
|
||||
/* the first character may prove to be the start of a number: is this true? */
|
||||
|
|
Loading…
Reference in a new issue