Browse Source

* Allow external fields also for non-external classes is externalclass modeswitch is active

git-svn-id: trunk@35638 -
michael 8 years ago
parent
commit
f7db076989
2 changed files with 2 additions and 3 deletions
  1. 1 2
      packages/fcl-passrc/src/pparser.pp
  2. 1 1
      packages/fcl-passrc/tests/tcresolver.pas

+ 1 - 2
packages/fcl-passrc/src/pparser.pp

@@ -3133,8 +3133,7 @@ begin
     TPasVariable(VarList[OldListCount]).Expr:=Value;
     TPasVariable(VarList[OldListCount]).Expr:=Value;
     Value:=nil;
     Value:=nil;
     ExternalClass:=(msExternalClass in CurrentModeSwitches)
     ExternalClass:=(msExternalClass in CurrentModeSwitches)
-                    and (Parent is TPasClassType)
-                    and (TPasClassType(Parent).ExternalName<>'');
+                    and (Parent is TPasClassType) ;
     H:=H+CheckHint(Nil,Full);
     H:=H+CheckHint(Nil,Full);
     if Full  then
     if Full  then
       Mods:=GetVariableModifiers(Parent,VarMods,aLibName,aExpName,ExternalClass)
       Mods:=GetVariableModifiers(Parent,VarMods,aLibName,aExpName,ExternalClass)

+ 1 - 1
packages/fcl-passrc/tests/tcresolver.pas

@@ -5354,7 +5354,7 @@ begin
   StartProgram(false);
   StartProgram(false);
   Add('type');
   Add('type');
   Add('{$modeswitch externalclass}');
   Add('{$modeswitch externalclass}');
-  Add('  TObject = class external ''namespace'' name ''symbol''');
+  Add('  TObject = class');
   Add('    Id: longint external name ''$Id'';');
   Add('    Id: longint external name ''$Id'';');
   Add('    Data: longint external name ''$Data'';');
   Add('    Data: longint external name ''$Data'';');
   Add('  end;');
   Add('  end;');