Skip to content

Internal error 2021121904

Summary

Internal error 2021121904

System Information

  • Operating system: Linux
  • Processor architecture: x86-64
  • Compiler version: 3.3.1 37f14570
  • Device: Computer

Steps to reproduce

  1. create file asd.pas:
    unit asd;
    interface
    	type
    		int32container = record
    			val: int32;
    		end;
    implementation
    	procedure asdf;
    	var
    		a: int32container;
    		b: int32;
    	begin
    		if b > a.val then
    			b := a.val;
    	end;
    end.
  2. run
    ppcx64 -O2 asd

What is the current bug behavior?

Free Pascal Compiler version 3.3.1 [2024/03/31] for x86_64
Copyright (c) 1993-2024 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling asd.pas
asd.pas(13,5) Warning: Local variable "b" does not seem to be initialized
asd.pas(13,9) Warning: Local variable "a" does not seem to be initialized
asd.pas(13,7) Fatal: Internal error 2021121904
Fatal: Compilation aborted

What is the expected (correct) behavior?

Free Pascal Compiler version 3.3.1 [2024/03/26] for x86_64
Copyright (c) 1993-2024 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling asd.pas
asd.pas(14,5) Warning: Local variable "b" does not seem to be initialized
asd.pas(14,9) Warning: Local variable "a" does not seem to be initialized
16 lines compiled, 0.0 sec
2 warning(s) issued

when was bug introduced?

commit hash commit message
bad 11b341cc * x86: Added new OptPass1CMOVcc peephole optimisation routine to dust up min/max code
can't compile compiler c79361c0 * Min/max intrinsics now simplify deterministic results
can't compile compiler e4a0ce2f * x86: Min/max intrinsic support
good 77c86caf * a64: Fixed bug where unsigned min/max inlines used a signed comparison
Edited by BZZZZ
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information