View Issue Details

IDProjectCategoryView StatusLast Update
0037535pas2jstranspilerpublic2020-08-10 17:16
Reporterhenrique Assigned ToMichael Van Canneyt  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
PlatformMakestubgOSWindows 
Summary0037535: Don't remove the $SCOPEDENUMS directive
DescriptionIn the SysUtils unit has a TUseBoolStrs declaration surrounded with a SCOPEDENUMS define, this should not be removed, so as not to give compilation errors in Delphi, because of the type "True" and "False", declared there.
Steps To Reproducemakestub.exe -i SysUtils -o SysUtilsConv.pas
TagsNo tags attached.
Fixed in Revision819
Attached Files

Activities

Michael Van Canneyt

2020-08-10 16:01

administrator   ~0124735

The information about SCOPEDENUMS info is no longer available in the converter: The converter has only the AST (Abstract Syntax Tree) available.

The best I can do is add a command-line switch to force the converter to add the SCOPEDENUMS directive at the start of the generated unit.

henrique

2020-08-10 16:09

reporter   ~0124738

I don't think that's the best way.

I could make the statement like this:

{$IFDEF PAS2JS}
  TUseBoolStrs = (False,True);
{$ELSE}
  TUseBoolStrs = Boolean;
{$ENDIF}

In Delphi, declaring this way everything works, can it be?

Michael Van Canneyt

2020-08-10 17:16

administrator   ~0124741

The TUseBoolstrs was a workaround for a bug in the compiler, which is now solved. I removed it

Issue History

Date Modified Username Field Change
2020-08-10 15:40 henrique New Issue
2020-08-10 15:54 Michael Van Canneyt Assigned To => Michael Van Canneyt
2020-08-10 15:54 Michael Van Canneyt Status new => assigned
2020-08-10 16:01 Michael Van Canneyt Note Added: 0124735
2020-08-10 16:09 henrique Note Added: 0124738
2020-08-10 17:16 Michael Van Canneyt Status assigned => resolved
2020-08-10 17:16 Michael Van Canneyt Resolution open => fixed
2020-08-10 17:16 Michael Van Canneyt Fixed in Revision => 819
2020-08-10 17:16 Michael Van Canneyt Note Added: 0124741