Ошибки PascalABC.NET

Если я не ошибаюсь, на скриншоте семёрка.

А по моему - вы таки ошибаетесь))) Это лишь XP у которой врубили все настройки “для красоты” на макс. Хотя, кстати, если с этими настройками комп работает нормально - то на семёрке, если их же вырубить - тоже должно быть нормально…

Так это XP в стиле 7? Удивительно!

на скрине виндовс виста,а пробовал компилятор на хр

2 лайка

Посмотрите, нет ли в рабочей папке PABCSystem.pcu и PABCExtensions.pcu. Если есть, удалите их.

вроде нету

Вроде? Рабочая папка указывается при установке, по умолчанию C:\PABCWork.NET.

И, всё же, опубликуйте текст ошибки, которую выдаёт то окно. Его можно выделить так:

```
текст
текст
текст
```

Это будет выглядеть так:

текст
текст
текст

Знак ` находится за ё, в англ. раскладке.

Выложили исправление на сайт. Обновите версию.

2 лайка

заработало :grinning: благодарю!!!

Понятно. Мы еще кое-что исправим - и снова переспрошу. Это - проблема старой версии NET 4.0, которая только и устанавливается под XP. К сожалению, XP у нас под рукой нет, поэтому иногда возникают такие ошибки.

1 лайк
begin
  
  var f: file of string[255];
  var i := 130;
  var s:string := ChrAnsi(i)*3;
  
  Rewrite(f, 'temp.bin');
  f.Write(s);//Generic-функция Write не может быть вызвана с данным набором фактических параметров
  f.Close;
  
  Reset(f);
  var s2 := f.Read;
  if s <> s2 then writeln($'ошибка: "{s}"<>"{s2}"');
  f.Close;
  
end.
begin
  
  var f: file of string[255];
  var i := 130;
  var s:string[255] := ChrAnsi(i)*3;
  
  Rewrite(f, 'temp.bin');
  f.Write(s);//Тип коротких строк не может выступать в качестве параметра управляемого шаблона
  f.Close;
  
  Reset(f);
  var s2 := f.Read;
  if s <> s2 then writeln($'ошибка: "{s}"<>"{s2}"');
  f.Close;
  
end.

Я что то не так пишу или это таки ошибка?

Не так пишете.

begin
  var f: file of string[255];
  var i := 130;
  var s: string := ChrAnsi(i) * 3;
  Assign(f, 'temp.bin');
  Rewrite(f);
  Write(f, s);
  Reset(f);
  var s2: string[255];
  Read(f, s2);
  if s <> s2 then writeln($'ошибка: "{s}"<>"{s2}"');
  f.Close;
end.
2 лайка

Билд 1785:

uses Graph3D;

begin end.
() : Внутренняя ошибка компилятора в модуле [pabcnetc.exe] :'System.Exception: System.IndexOutOfRangeException: Индекс находился вне границ массива.
   в PascalABCCompiler.PCU.PCUReader.ReadNetExtType()
   в PascalABCCompiler.PCU.PCUReader.GetTypeReference()
   в PascalABCCompiler.PCU.PCUReader.GetNamespaceVariable(Int32 offset)
   в PascalABCCompiler.PCU.PCUReader.GetExtNamespaceVariableByOffset(Int32 offset)
   в PascalABCCompiler.PCU.PCUReader.CreateNamespaceVariableReference()
   в PascalABCCompiler.PCU.PCUReader.CreateBasicFunctionCall()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.CreateStatementList()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.GetCode(Int32 offset)
   в PascalABCCompiler.TreeRealization.common_namespace_function_call..ctor(common_namespace_function_node namespace_func, location loc)
   в PascalABCCompiler.PCU.PCUReader.CreateCommonNamespaceFunctionCall()
   в PascalABCCompiler.PCU.PCUReader.CreateCompiledConstructorCall()
   в PascalABCCompiler.PCU.PCUReader.CreateCompiledConstructorCall()
   в PascalABCCompiler.PCU.PCUReader.CreateBasicFunctionCall()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.CreateStatementList()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.GetCode(Int32 offset)
   в PascalABCCompiler.TreeRealization.common_namespace_function_call..ctor(common_namespace_function_node namespace_func, location loc)
   в PascalABCCompiler.PCU.PCUReader.CreateCommonNamespaceFunctionCall()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.CreateStatementList()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.GetCode(Int32 offset)
   в PascalABCCompiler.TreeRealization.common_namespace_function_call..ctor(common_namespace_function_node namespace_func, location loc)
   в PascalABCCompiler.PCU.PCUReader.CreateCommonNamespaceFunctionCall()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.CreateStatementList()
   в PascalABCCompiler.PCU.PCUReader.CreateStatement()
   в PascalABCCompiler.PCU.PCUReader.GetCode(Int32 offset)
   в PascalABCCompiler.PCU.PCUReader.GetNamespaceFunction(Int32 offset, Boolean restore_code)
   в PascalABCCompiler.Compiler.ClosePCUReadersAndWriters()
   в PascalABCCompiler.Compiler.Compile()'

Это как так? И не у меня ли одного, из за моего установщика…

Сборка 1785. Все работает… И сразу вспомнилась расхожее “Сам себе злобный буратино”. :rofl:

1 лайк