Cint7: Error: Too many '}' DataFile.cpp(369)

Hi all. I try to run this sources throught cint7:
The sources are atached.
CDataFile is from here: alturl.com/ihpj
This compiles in vs2008 without problems.

cint.exe -IC:\cint\main -IC:\cint\inc -IC:\cint\include -IC:\cint\stl DataFile.cpp main.cpp
Error: Too many ‘}’ DataFile.cpp(369)

What can cause this error? Is there a list of unsupported or problematic keywords?

[size=150]New source below.[/size]

Hi Louis,

Indeed I can reproduce your problem, I am not sure exactly what the problem is. Would you be able to par down your test to the minimum needed to reproduce the problem?

Thanks,
Philippe.

PS. Note that the cint executable should not need to be told where the cint header are and ‘cint DataFile.cpp main.cpp’ should be sufficient.

I found the unsupported operators, thought.

[code]//#pragma once

#if !defined(DataFile_H__INCLUDED)
#define DataFile_H__INCLUDED

// supress warnings (pop statement at end)
//#pragma warning(push)

//#pragma warning(disable:4786) // 255 char truncation in VC6
//#pragma warning(disable:4702) // unreachable code in std::vector (VC7)[/code]

I changed the code at top and bottom of DataFile.h.
Now cint gives me:

C:\Users\Lis\Documents\work\CDataFile_src>cint.exe -IC:\cint\main -IC:\cint\inc -IC:\cint\include -IC:\cint\stl DataFile.cpp main.cpp #error win32api.dll is not ready. Run 'setup.bat' in %CINTSYSDIR%\lib\win32api d irectory if you use WinNT/95.
I try to compile the win32api and see what happens.
Greets Louis.

I forgotten that I added a directory file scan who needs windows.h.
I removed the filescan function, and cint seem to process the example file but only with exceptions.

C:\Users\Lis\Documents\work\CDataFile_src>cint.exe -IC:\cint\main -IC:\cint\inc -IC:\cint\include -IC:\cint\stl DataFile.cpp main.cpp Error: Cannot call exception::exception(df.m_szError.c_str()) in current scope ( 2) src\func.cxx:2827 DataFile.cpp(409) Possible candidates are... (in exception) exception.dll -1:-1 0 public: exception exception::exception(void); exception.dll -1:-1 0 public: exception exception::exception(const exceptio n& x); Error: illegal pointer to class object e 0x0 87 DataFile.cpp(379)
And after changing to another csv file:

[code]C:\Users\Lis\Documents\work\CDataFile_src>run

C:\Users\Lis\Documents\work\CDataFile_src>C:\cint\cint.bat DataFile.cpp main.cpp

Setting environment for using Microsoft Visual Studio 2008 x86 tools.

C:\Users\Lis\Documents\work\CDataFile_src>cint.exe -IC:\cint\main -IC:\cint\inc
-IC:\cint\include -IC:\cint\stl DataFile.cpp main.cpp
Assertion failed: G__value_typenum(*result).FinalType().IsPointer(), file c:\use
rs\lis\documents\work\cint-svn\cint7\src\pcode.h, line 128

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.

C:\Users\Lis\Documents\work\CDataFile_src>[/code]
I will upload new sources later.

EDIT:
It seems the first file can not be read. At least that’s what happens if I compile this programm with visual studio.
The second file can be read, it contains about 2000 lines, maybe this causes cint to crash.

EDIT:
The testfile distributed in the archive below is read in the compiled version. Cint crashes with the error above.

Greets
CDataFile_src_cint7ver.zip (18.2 KB)

The last ticks of the programm:

[code]# DataFile.cpp
399
400 // make sure data columns are equal to nVars
401 // in order to prevent mis-aligned data
402 inFile.ignore(MAX_LINE_BUFFER,’\n’);FILE:DataFile.cpp LINE:402 cint.exe>

403
404 if(CountCols(inFile, df.m_delim.at(0)) != nVars)FILE:DataFile.cpp LINE:404 cint.exe>

409
410 // rewind the file
411 inFile.seekg(0);FILE:DataFile.cpp LINE:411 cint.exe>

412
413 int iVar = 0;
414 int varOffset = df.GetNumberOfVariables();

.\DataFile.h

325 CDataFile::GetNumberOfVariables() const { return static_cast(m_vstrVariableNames.size());FILE:DataFile.h LINE:325 cint.exe>
!!!Calling compiled function size()

}
FILE:DataFile.h LINE:325 cint.exe>

!!!Begin function return value type conversion.

!!!End function return value type conversion.

DataFile.cpp

415
416 char buff[MAX_FIELD_BUFFER] = {0};
417
418 for(iVar=0;FILE:DataFile.cpp LINE:418 cint.exe>
iVar<nVars; iVar++)Assertion failed: G__value_typenum(*result).FinalType().IsPointer(), file c:\users\lis\documents\work\cint-svn\cint7\src\pcode.h, line 128

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.
FILE:DataFile.cpp LINE:418 cint.exe> [/code]

Hi Louis,

Do you have the same problem with Cint5?

Cheers,
Philippe.