Skip to content

First commit of d5.11.9-ZZYYXX-20231117_17-53 branch #173

First commit of d5.11.9-ZZYYXX-20231117_17-53 branch

First commit of d5.11.9-ZZYYXX-20231117_17-53 branch #173

GitHub Actions / m3tests (I386_LINUX, gcc) succeeded Nov 20, 2023 in 1s

m3tests (I386_LINUX, gcc) ✅

Tests failed

❌ m3-sys/m3tests/m3tests-results.xml

292 tests were completed in NaNms with 287 passed, 5 failed and 0 skipped.

Test suite Passed Failed Skipped Time
m3tests 287✅ 5❌ NaNms

❌ m3tests

✅ p293: Mutex unlocked in event of exception within LOCK
✅ p292: Correct CG type of struct for record temps
✅ p291: No internal folding of non-constant record constructors
✅ p289: cross-unit access to constant array constructors
✅ p288: field default constant constructors
✅ p287: constant constructors
✅ p286: Order of compilation error with array constructor parameter.
✅ p283: Long.LT
✅ p282: grisuc
✅ p281: Const Array Decl Bugs (#25), reported by darko20 on 03/24/2018.
✅ p280: Parameter passing, many cases, including packed.
✅ p279: misaligned, packed components of array and record constructors.
✅ p278: 64-bit-sized but only 32-bit-aligned values, on 32-bit machines.
✅ p277: mixtures of nested constructors
✅ p275: More set operators on a small set type in a packed record.
✅ p274: Mixed, nested, constructor values.
✅ p273: Mixed, nested, constructors with statically inevitable RT errors.
✅ p272: Set constructors with statically inevitable RT errors.
✅ p271: Constant array constructor, passed READONLY, is passed by value.
✅ p270: Array constructors with statically inevitable RT errors.
✅ p269: Nested array constructors.
✅ p268: Record constructors with statically inevitable RT errors.
✅ p265: grisu-based
✅ p264: mixtures of fixed and open arrays
✅ p247: gcc 4.5.1 assertion failure for SPARC64_SOLARIS
✅ p246: gcc 4.5 assertion failure inlining in Poly.m3 for I386_DARWIN, SOLgnu, all 32bit?
✅ p245: gcc 4.5 assertion failure inlining in TextConv.m3
✅ p244: gcc 4.5 backend crash with 'fre' optimization
✅ p243: nested functions removed by gcc backend 'unit at a time'
✅ p242: m3totex crashes gcc backend if 'pre' optimimization enabled
✅ p241: Formatter crashes gcc backend if 'ter' optimimization enabled
✅ p238: 'man vs. boy' aka nested procedures+recursion aka static chain test
✅ p229: minimal 64bit divide test
✅ p228: sign/zero extend return values of functions returning types smaller than 32bits
✅ p225: __try/__finally
✅ p212: float and double constants, jmpbuf
✅ p211: float and double constants work
✅ p210: open array initializers runtime failure
✅ p209: open array initializers compile failure
✅ p208: catching runtime errors
❌ p207: subrange declarations
	--- ../src/p2/p207/stdout.build	2023-11-20 10:30:26.048104752 +0000
✅ p206: ARRAY constructors in var decls using named open array types
✅ p205: SUBARRAY of imported CONST ARRAY
✅ p204: IP address initializers
✅ p203: fingerprint of NULL
✅ p202: SUBARRAY actual parameter
✅ p201: recursive values
✅ p200: recursive types again
✅ p199: exporting an obsolete function
✅ p198: compiler hash function
✅ p197: appending pickles to files
✅ p196: procedure valued defaults
✅ p195: messy method calls
✅ p194: open arrays in fixed array initializers !!BUG!!
✅ p193: implicit narrow on '&' operands
✅ p192: recursive declarations
✅ p191: array assignment generates bad C  !!BUG!!
✅ p190: order of evaluation for messy method calls
✅ p189: module initialization order
✅ p188: initialized globals
✅ p187: array assignment when index type changes
✅ p186: case statement with large labels
❌ p185: REAL vs. C float
	--- ../src/p1/p185/stderr.pgm	2023-11-20 10:30:26.044104749 +0000
✅ p184: fold constant to check type equality
✅ p183: hidden object field
✅ p182: renamed hello world
✅ p181: <*NOWARN*>
✅ p180: simple generic test
✅ p179: alignment of ARRAY OF BITS 32 FOR INTEGER
✅ p178: packed fields vs. C's unsigned arithmetic
✅ p177: unaligned object field references
✅ p176: need full assignment in NEW and constructors
✅ p175: CASE stmt with very large bounds
✅ p174: large enumeration
❌ p173: LONGREAL vs. C's double
	--- ../src/p1/p173/stdout.pgm	2023-11-20 10:30:26.040104745 +0000
❌ p172: REAL vs. C's float
	--- ../src/p1/p172/stderr.pgm	2023-11-20 10:30:26.040104745 +0000
✅ p171: array constructor as record default
✅ p170: simple BITS FOR test
✅ p169: runtime fingerprint
✅ p168: record constructor with loopholed argument
✅ p167: array constructors as parameters
✅ p166: RTMisc.Zero test
✅ p165: simple TYPECODE test
✅ p164: simple thread tests
✅ p163: simple statements
✅ p162: more operations on very big sets in the heap
✅ p160: more operations on very big sets in the heap
✅ p159: operations on very big sets in the heap
✅ p158: operations on subword-sized sets
✅ p157: operations on big sets in the heap
✅ p156: operations on medium-sized sets
✅ p155: operations on small sets
✅ p151: by-value open array parameters
✅ p150: up-level addressing with INLINEs
✅ p149: up-level addressing
✅ p148: simple procedure calls
✅ p146: NUMBER
✅ p145: pass-thru REF types
✅ p144: imported variables and order of evaluation
✅ p143: variable initialization
✅ p142: procedure defaults
✅ p141: RTProcess.Exit
✅ p140: exceptions
✅ p139: memory copy
✅ p138: bit field assignments
✅ p137: bit insert and extract
✅ p136: bit operations
✅ p134: BITS FOR tests
✅ p133: assignments of records and arrays
✅ p132: assignments of builtin types
✅ p131: TRUNC, ROUND, FLOOR, CEILING again
✅ p129: simple DIV test
✅ p128: simple FLOOR test
✅ p127: TRUNC, ROUND, FLOOR, CEILING
✅ p126: REAL arithmetic
✅ p125: MOD of subrange
✅ p124: negative DIV of subrange
✅ p123: simple arithmetic expresssions
✅ p122: RETURN from within TRY-FINALLY
✅ p121: real parameters vs. the C compiler
✅ p120: small exception arguments (big-endian problem)
✅ p119: small exception arguments (big-endian problem)
✅ p118: LAST (REAL)
✅ p117: SUBARRAY (LOOPHOLE)
✅ p116b: default IEEE floating point tests from Xerox PARC
✅ p115: reuse of open array conversion within an expression
✅ p114: array expressions
✅ p113: FIRST/LAST of REAL
✅ p112: local revelation that a type is an object
✅ p111: C reserved words in call to NEW
✅ p110: FIRST/LAST of enumerated types
✅ p109: FIRST/LAST of enumerated types in record constants
✅ p108: array of procedure constants
✅ p107: interface versus implementation names for keyword binding
✅ p106: ambiguous desugaring from manual
✅ p105: FROM-IMPORT vs. revelations
✅ p104: obsolete pragma
✅ p103: runtime test of TextRd
✅ p102: C reserved words in record constructors and NEW
✅ p101: nested procedure in a module's main body
✅ p100: unnamed types within LOOPHOLE
✅ p099: array constructors and procedure parameters
✅ p098: procedure compatibility within an array constructor
✅ p097: NEW with method overrides
✅ p096: procedure/method constants
✅ p095: thread.signal/wait exercise
✅ p094: array constants and forward references
✅ p093: Rd.GetLine (long line)
✅ p092: array of real parameters
✅ p091: NULL <: PROCEDURE in array constructor
✅ p090: REAL parameter passing - MIPS cc bug
✅ p089: revelations of renamed types
✅ p088: importing an interface under different names
✅ p087: set constructors with variable sized ranges
✅ p086: constant folding of FIRST (open array)
✅ p085: various combinations of FATAL pragma
✅ p084: method overrides and NARROW
✅ p083: mixing of exceptions in version stamps
✅ p082: operations constant set expressions
✅ p081: open array constants
✅ p080: order of initialization between interfaces
✅ p079: up-level reference of a FOR variable
✅ p078: use of constant open arrays in constants
✅ p077: BITS 2 FOR [-1..1]
✅ p076: b3tests/b005 - more array problems
✅ p075: casting open/fixed array to/from open/fixed array
✅ p074: b2tests/b004 - initialization of REF RECORD
✅ p073: MOD and DIV - new fast versions
✅ p072: CHAR literals > 127
✅ p071: SUBARRAY := SUBARRAY
✅ p069: two object types that differs only by default overwriting
✅ p067: mixup in imported names
✅ p066: exception handler stack screwed up
✅ p065: typecode
✅ p064: procedure parameters
✅ p063: structural equivalence
✅ p062: typecase and List
✅ p061: object types & NEW
✅ p060: opaque types
✅ p059: cc optimizer bug
✅ p058: subarray
✅ p057: open array parameter
✅ p056: subarray assignment
✅ p055: recursive fibonacci
✅ p054: Richards' simulation benchmark
✅ p053: set operations
✅ p052: indexing of ref open array
✅ p051: external variables
✅ p050: open array parameters
✅ p049: procedure parameters
✅ p048: nested procedures
✅ p047: Real - Integer LOOPHOLE
✅ p046: Word.Insert, array of [0..255]
✅ p045: nested procedures
✅ p044: MIN, MAX, WITH and record constructors
✅ p043: List.Sort, NARROW, and NEW
✅ p042: floating point ABS, MAX, divide
✅ p041: floating point comparison and SIGN function
❌ p040: binary <-> ASCII conversion routines
	--- ../src/p0/p040/stdout.pgm	2023-11-20 10:30:26.012104720 +0000
✅ p039: VERY LONG thread test - commented out
✅ p038: sizes of two-byte signed integer subranges
✅ p037: tests Time.LongPause
✅ p036: fibonacci
✅ p035: equality of procedures
✅ p034: equality of open arrays and records
✅ p032: passing of array parameters
✅ p031: parameter modes, except arrays
✅ p030: non-opaque OBJECTs
✅ p029: nested procedures with up-level variable references
✅ p028: fixed ARRAY types variables assignments and subscripting
✅ p027: RECORD types variables and assignments
✅ p026: user and language specified variable initialization
✅ p025: assignment of INTEGER subranges
✅ p024: WITH statements
✅ p023: WHILE and EXIT statements
✅ p022: TYPECASE statements
✅ p021: Imbricated TRY FINALLY statements
✅ p020: TRY FINALLY and RETURN statements
✅ p019: REPEAT and EXIT statements
✅ p018: IF statements
✅ p017: FOR and EXIT statements
✅ p016: CASE statements
✅ p015: simple procedure with integer argument
✅ p014: variables in nested blocks and procedures
✅ p013: indirect calls
✅ p012: up-level addressing
✅ p011: BITSIZE BYTESIZE ADRSIZE
✅ p010: TYPECODE NARROW
✅ p009: ORD VAL NUMBER FIRST LAST
✅ p008: thread alerts
✅ p007: a whole bunch of threads - does the memory grow ?
✅ p006: a bit more complicated
✅ p005: a simple thread program
✅ p004: exception mechanism
✅ p003: Fmt
✅ p002: Text
✅ p001: Hello world
✅ p216: runtime arguments: @M3nogc
✅ p215: runtime arguments: @M3nogenerational
✅ p214: runtime arguments: @M3noincremental
✅ p213: runtime arguments: @M3paranoidgc
✅ p223: .M3SHIP Library
✅ p222: .M3SHIP Library
✅ p221: .M3SHIP Library
✅ p220: .M3SHIP library
✅ p219: .M3SHIP Program group-writable
✅ p218: .M3SHIP Program
✅ p217: .M3SHIP program
✅ p227: longint, word, add, insert, extract, etc. (slow)
✅ p227: longint, word, add, insert, extract, etc. (slow)
✅ e041: Illegal mutually recursive revealed opaque types in separate units
✅ e040: Bad SUBARRAY actuals
✅ e035: illegal recursive declaration
✅ e034: structural equivalence of records
✅ e033: importing the builtin scope through an arbitrary interace
✅ e032: FROM IMPORT in an IMPORTed interface is visible in the module
✅ e031: spurious '..' in array initializer
✅ e030: missing main program
✅ e029: use type instead of value as an initializer
✅ e028: circular FROM imports
✅ e027: b1tests/b005 - ARRAY [1..0] OF x is empty
✅ e026: two types with the same brand
✅ e025: incompatible array parameter
✅ e024: illegal recursive declaration
✅ e023: illegal recursive declaration
✅ e022: illegal recursive declaration
✅ e021: illegal recursive declaration
✅ e020: illegal recursive declaration
✅ e019: illegal recursive declaration
✅ e018: illegal recursive declaration
✅ e017: illegal recursive declaration
✅ e016: FROM IMPORT in an EXPORTed interface is visible in the module
✅ e015: illegal recursive declaration x=y/y=x
✅ e014: coverage of procedure signature in interface by module
✅ e013: illegal recursive declaration
✅ e012: NULL is not a statment
✅ e011: m3compiler accepts any type for VAR ARRAY OF formal
✅ e010: verify that there are enough elements in an array constructor
✅ e009: method specified in NEW incompatible with type declaration
✅ e008: circular imports
✅ e007: procedure constants (no longer an error...)
✅ e006: non-imported exceptions are visible !
✅ e005: / instead of DIV on CARDINAL constants
✅ e004: Text.Cat with the wrong number of arguments
✅ e003: exception not at the top-level
✅ e002: non-constant variable initialization in an interface
✅ e001: assigning non-overlapping subrange types
✅ r005: assertion failure messages include expression
✅ r004: negative size for an open array
✅ r003: b3tests/b002 - improper size for an open array parameter
✅ r002: stack overflow in the main thread
✅ r001: unhandled exception

Annotations

Check failure on line 0 in m3-sys/m3tests/m3tests-results.xml

See this annotation in the file changed.

@github-actions github-actions / m3tests (I386_LINUX, gcc)

m3tests ► p207: subrange declarations

Failed test found in:
  m3-sys/m3tests/m3tests-results.xml
Error:
  --- ../src/p2/p207/stdout.build	2023-11-20 10:30:26.048104752 +0000
Raw output
 
--- ../src/p2/p207/stdout.build	2023-11-20 10:30:26.048104752 +0000
+++ ../src/p2/p207/I386_LINUX/stdout.build	2023-11-20 10:38:28.504498503 +0000
@@ -0,0 +1,11 @@
+"../Main.m3", line 68: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 69: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 70: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 71: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 72: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 73: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 74: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 75: ********* M3CG_Check ERROR *********** bad stack:  expected [ Int64  <dontCare>  <dontCare>  <dontCare>  ] got [ Int32     ]
+"../Main.m3", line 1:  8 code generation errors
+9 errors encountered
+Fatal Error: package build failed
--- ../src/p2/p207/stderr.build	2023-11-20 10:30:26.048104752 +0000
+++ ../src/p2/p207/I386_LINUX/stderr.build	2023-11-20 10:38:28.504498503 +0000
@@ -0,0 +1 @@
+m3front failed compiling: ../Main.m3
../src/p2/p207/I386_LINUX/stdout.pgm missing 
../src/p2/p207/I386_LINUX/stderr.pgm missing 

Check failure on line 0 in m3-sys/m3tests/m3tests-results.xml

See this annotation in the file changed.

@github-actions github-actions / m3tests (I386_LINUX, gcc)

m3tests ► p185: REAL vs. C float

Failed test found in:
  m3-sys/m3tests/m3tests-results.xml
Error:
  --- ../src/p1/p185/stderr.pgm	2023-11-20 10:30:26.044104749 +0000
Raw output
 
--- ../src/p1/p185/stderr.pgm	2023-11-20 10:30:26.044104749 +0000
+++ ../src/p1/p185/I386_LINUX/stderr.pgm	2023-11-20 10:38:33.940501156 +0000
@@ -1,3 +1,4 @@
+************************ ERROR: 64 instead of 24
 
 
-0 error(s) and 0 warning(s) detected
+1 error(s) and 0 warning(s) detected

Check failure on line 0 in m3-sys/m3tests/m3tests-results.xml

See this annotation in the file changed.

@github-actions github-actions / m3tests (I386_LINUX, gcc)

m3tests ► p173: LONGREAL vs. C's double

Failed test found in:
  m3-sys/m3tests/m3tests-results.xml
Error:
  --- ../src/p1/p173/stdout.pgm	2023-11-20 10:30:26.040104745 +0000
Raw output
 
--- ../src/p1/p173/stdout.pgm	2023-11-20 10:30:26.040104745 +0000
+++ ../src/p1/p173/I386_LINUX/stdout.pgm	2023-11-20 10:38:36.852503245 +0000
@@ -1 +0,0 @@
-23.40000000037253 23.40000000037253
--- ../src/p1/p173/stderr.pgm	2023-11-20 10:30:26.040104745 +0000
+++ ../src/p1/p173/I386_LINUX/stderr.pgm	2023-11-20 10:38:36.852503245 +0000
@@ -1,3 +1,4 @@
+************************ ERROR: 23.399999999999636 instead of 23.40000000037253
 
 
-0 error(s) and 0 warning(s) detected
+1 error(s) and 0 warning(s) detected

Check failure on line 0 in m3-sys/m3tests/m3tests-results.xml

See this annotation in the file changed.

@github-actions github-actions / m3tests (I386_LINUX, gcc)

m3tests ► p172: REAL vs. C's float

Failed test found in:
  m3-sys/m3tests/m3tests-results.xml
Error:
  --- ../src/p1/p172/stderr.pgm	2023-11-20 10:30:26.040104745 +0000
Raw output
 
--- ../src/p1/p172/stderr.pgm	2023-11-20 10:30:26.040104745 +0000
+++ ../src/p1/p172/I386_LINUX/stderr.pgm	2023-11-20 10:38:37.104503410 +0000
@@ -1,4 +1,5 @@
-23 23
+23.4 23
+************************ ERROR: 23.4 instead of 23
 
 
-0 error(s) and 0 warning(s) detected
+1 error(s) and 0 warning(s) detected

Check failure on line 0 in m3-sys/m3tests/m3tests-results.xml

See this annotation in the file changed.

@github-actions github-actions / m3tests (I386_LINUX, gcc)

m3tests ► p040: binary <-> ASCII conversion routines

Failed test found in:
  m3-sys/m3tests/m3tests-results.xml
Error:
  --- ../src/p0/p040/stdout.pgm	2023-11-20 10:30:26.012104720 +0000
Raw output
 
--- ../src/p0/p040/stdout.pgm	2023-11-20 10:30:26.012104720 +0000
+++ ../src/p0/p040/I386_LINUX/stdout.pgm	2023-11-20 10:39:14.504535098 +0000
@@ -1030,8 +1030,8 @@
   ToLongFloat => 1234.567890123456   / 19
   FromLongFloat [AltSci] => 1.234567890123456D3
   ToLongFloat => 1234.567890123456   / 19
-  FromLongFloat [Mix]    => 1234.567890123455982
-  ToLongFloat => 1234.567890123456   / 20
+  FromLongFloat [Mix]    => 1.234567890123456D3
+  ToLongFloat => 1234.567890123456   / 19
 
 
 1.234567890123456e27