summaryrefslogtreecommitdiff
path: root/rsc/source/parser/erscerr.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'rsc/source/parser/erscerr.cxx')
-rw-r--r--rsc/source/parser/erscerr.cxx403
1 files changed, 0 insertions, 403 deletions
diff --git a/rsc/source/parser/erscerr.cxx b/rsc/source/parser/erscerr.cxx
deleted file mode 100644
index a6dcb46cf227..000000000000
--- a/rsc/source/parser/erscerr.cxx
+++ /dev/null
@@ -1,403 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <tools/rcid.h>
-#include <rschash.hxx>
-#include <rscerror.h>
-#include <rscall.h>
-#include <rscdb.hxx>
-#include <rscpar.hxx>
-
-#include "rsclex.hxx"
-
-ERRTYPE& ERRTYPE::operator = ( const ERRTYPE & rError )
-{
- if( !IsError() ){
- if( rError.IsError() || !IsWarning() )
- nError = rError.nError;
- }
- return *this;
-}
-
-void RscError::StdOut( const char * pStr, const RscVerbosity _verbosityLevel )
-{
- if ( m_verbosity >= _verbosityLevel )
- {
- if( pStr ){
- printf( "%s", pStr );
- fflush( stdout );
- }
- }
-}
-
-void RscError::StdErr( const char * pStr )
-{
- if( pStr )
- fprintf( stderr, "%s", pStr );
-}
-
-void RscError::LstOut( const char * pStr ){
- if( fListing && pStr )
- fprintf( fListing, "%s", pStr );
-}
-
-void RscError::StdLstOut( const char * pStr ){
- StdOut( pStr );
- LstOut( pStr );
-}
-
-void RscError::StdLstErr( const char * pStr ){
- StdErr( pStr );
- LstOut( pStr );
-}
-
-void RscError::WriteError( const ERRTYPE& rError, const char * pMessage )
-{
- switch( rError.GetError() )
- {
- case ERR_ERROR: {
- StdLstErr( "!! " );
- if( 1 == nErrors )
- StdLstErr(OString::number(nErrors).getStr());
- else
- StdLstErr(OString::number(nErrors -1).getStr());
- StdLstErr( " Error" );
- StdLstErr( " found!!" );
- }
- break;
-
- case ERR_UNKNOWN_METHOD:
- StdLstErr( "The used type is not allowed." );
- break;
-
- case ERR_OPENFILE:
- StdLstErr( "This file <" );
- StdLstErr( pMessage );
- StdLstErr( "> cannot be opened." );
- break;
-
- case ERR_RENAMEFILE:
- StdLstErr( "rename <" );
- StdLstErr( pMessage );
- StdLstErr( "> s not possible." );
- break;
-
- case ERR_FILESIZE:
- StdLstErr( "Wrong file <" );
- StdLstErr( pMessage );
- StdLstErr( "> length." );
- break;
-
- case ERR_FILEFORMAT:
- StdLstErr( "Wrong file type <" );
- StdLstErr( pMessage );
- StdLstErr( ">." );
- break;
-
- case ERR_NOCHAR:
- StdLstErr( "Character: '\\xxx'; The value xxx is greater than 255.");
- break;
-
- case ERR_NORSCINST:
- StdLstErr( "Internal error, instance invalid.");
- break;
-
-
- case ERR_NOINPUT:
- StdLstErr( "Input file was not specified.\n");
- SAL_FALLTHROUGH;
- case ERR_USAGE:
- StdLstOut( "Copyright (C) 2000 - 2012 LibreOffice contributors.\n" );
- {
- char buf[40];
-
- StdLstOut( "DataVersion: " );
- sprintf( buf, "%d.%d\n\n",
- RSCVERSION_ID / 100, RSCVERSION_ID % 100 );
- StdLstOut( buf );
- }
-
- StdLstOut( "Command line: rsc [Switches] <Source File(s)>\n" );
- StdLstOut( "Command line: rsc @<Command File>\n" );
- StdLstOut( "-h shows this help.\n" );
- StdLstOut( "-p No preprocessor.\n" );
- StdLstOut( "-s Syntax analysis, creates .srs file\n");
- StdLstOut( "-l Linker, links files created with rsc -s,\n" );
- StdLstOut( " creates .rc file and .res file.\n" );
- StdLstOut( "-r Prevents .res file.\n" );
- StdLstOut( "-d Symbol definitions for the Preprocessor.\n" );
- StdLstOut( "-i Include directives for the Preprocessor.\n" );
- StdLstOut( "-presponse Use response file for Preprocessor.\n" );
- StdLstOut( "-lg<language> Use a different language.\n" );
- StdLstOut( "-fs=<filename> Name of the .res file.\n" );
- StdLstOut( "-lip=<path> additional search path for system dependent files\n" );
- StdLstOut( "-fp=<filename> Renaming of the .srs file.\n" );
- StdLstOut( "-sub<ENV>=<path> replace <path> by <ENV> in image list files\n" );
- StdLstOut( "-BIGENDIAN Format of number values.\n" );
- StdLstOut( "-LITTLEENDIAN Format of number values.\n" );
- StdLstOut( "-SrsDefault Only write one language to srs file.\n" );
- StdLstOut( "\nwhen creating multiple .res files in one pass, please give these\n" );
- StdLstOut( "options in consecutive blocks:\n" );
- StdLstOut( "-lg<language> -fs<filename> [-lip<path> [-lip<path>] ]\n" );
- StdLstOut( "a new block begins when either -lg or -fs is used again.\n" );
- break;
-
- case ERR_UNKNOWNSW:
- StdLstErr( "Unknown switch <" );
- StdLstErr( pMessage );
- StdLstErr( ">." );
- break;
-
- case ERR_REFTODEEP:
- StdLstErr( "Too many reference levels have been used (see Switch -RefDeep)." );
- break;
-
- case ERR_CONT_INVALIDPOS:
- StdLstErr( "Internal error, Container class: invalid position." );
- break;
-
- case ERR_CONT_INVALIDTYPE:
- StdLstErr( "Invalid type <" );
- StdLstErr( pMessage );
- StdLstErr( ">." );
- break;
-
- case ERR_ARRAY_INVALIDINDEX:
- StdLstErr( "Internal error, Array class: invalid index." );
- break;
-
- case ERR_RSCINST_NOVARNAME:
- StdLstErr( "Internal error, invalid name of variable." );
- break;
-
- case ERR_YACC:
- StdLstErr( pMessage );
- break;
-
- case ERR_DOUBLEID:
- StdLstErr( "Two global resources have the same identifier." );
- break;
-
- case ERR_FALSETYPE:
- StdLstErr( "Wrong type <" );
- StdLstErr( pMessage );
- StdLstErr( ">." );
- break;
-
- case ERR_NOVARIABLENAME:
- StdLstErr( "The variable <" );
- StdLstErr( pMessage );
- StdLstErr( "> must not be used here." );
- break;
-
- case ERR_RSCRANGE_OUTDEFSET:
- StdLstErr( "The used value is not in the expected domain." );
- break;
-
- case ERR_USHORTRANGE:
- StdLstErr( "Value is <" );
- StdLstErr( pMessage );
- StdLstErr( "> the allowed domain is from 0 up to 65535." );
- break;
-
- case ERR_IDRANGE:
- StdLstErr( "Value is <" );
- StdLstErr( pMessage );
- StdLstErr( "> the allowed domain is from 1 up to 32767." );
- break;
-
- case ERR_NOCOPYOBJ:
- StdLstErr( "Default resource <" );
- StdLstErr( pMessage );
- StdLstErr( "> not found." );
- break;
-
- case ERR_REFNOTALLOWED:
- StdLstErr( "The use of a reference is not allowed." );
- break;
-
- case ERR_COPYNOTALLOWED:
- StdLstErr( "The use of a default resource is not allowed." );
- break;
-
- case ERR_IDEXPECTED:
- StdLstErr( "An identifier needs to be specified." );
- break;
-
- case ERR_DOUBLEDEFINE:
- StdLstErr( "The symbol <" );
- StdLstErr( pMessage );
- StdLstErr( "> is defined twice." );
- break;
-
- case ERR_RSCINST_RESERVEDNAME:
- StdLstErr( "The symbol <" );
- StdLstErr( pMessage );
- StdLstErr( "> is a reserved name." );
- break;
-
- case ERR_ZERODIVISION:
- StdLstErr( "Attempt to divide by zero." );
- break;
-
- case ERR_PRAGMA:
- StdLstErr( "Error in a #pragma statement." );
- break;
-
- case ERR_DECLAREDEFINE:
- StdLstErr( "Error in the declaration part of the macro." );
- break;
-
- case ERR_NOTYPE:
- StdLstErr( "type expected." );
- break;
-
- case ERR_NOIMAGE:
- StdLstErr( "The image(s) <" );
- StdLstErr( pMessage );
- StdLstErr( "> could not be found." );
- break;
-
- case WRN_LOCALID:
- StdLstErr( "Sub resources should have an identifier < 256." );
- break;
-
- case WRN_GLOBALID:
- StdLstErr( "Global resources should have an identifier >= 256." );
- break;
-
- case WRN_SUBINMEMBER:
- StdLstErr( "Sub resources are ignored." );
- break;
-
- case WRN_CONT_NOID:
- StdLstErr( "Resources without name are ignored." );
- break;
-
- case WRN_CONT_DOUBLEID:
- StdLstErr( "Two local resources have the same identifier." );
- break;
-
- case WRN_STR_REFNOTFOUND:
- StdLstErr( "String reference <" );
- StdLstErr( pMessage );
- StdLstErr( " > could not be resolved." );
- break;
-
- case WRN_MGR_REFNOTFOUND:
- StdLstErr( "Reference <" );
- StdLstErr( pMessage );
- StdLstErr( " > could not be resolved." );
- break;
-
- default:
- if( pMessage ){
- StdLstErr( "\nMessage: " );
- StdLstErr( pMessage );
- };
- break;
- }
-}
-
-void RscError::ErrorFormat( const ERRTYPE& rError, RscTop * pClass,
- const RscId & aId ){
- char buf[ 10 ];
- sal_uInt32 i;
-
- if( pFI )
- {
- pFI->SetError( rError );
- StdErr( "\n" );
- StdErr( pFI->GetLine() );
- StdErr( "\n" );
- // Show location of error
- for( i = 0; (i +1) < pFI->GetScanPos(); i++ )
- StdLstErr( " " );
- LstOut( " ^" ); // for the linenumber
- StdErr( "^" );
- StdLstErr( "\n" );
- }
- StdLstErr( "f" );
- sprintf( buf, "%u", (unsigned int)rError.GetError() );
- StdLstErr( buf );
-
- if( pFI && pTC ){
- StdLstErr( ": \"" );
- StdLstErr( pTC->aFileTab.Get( pFI->GetFileIndex() )->aFileName.getStr() );
- StdLstErr( "\", line " );
- sprintf( buf, "%u", (unsigned int)pFI->GetLineNo() );
- StdLstErr( buf );
- }
-
- if( rError.IsError() )
- StdLstErr( ": Error" );
- else
- StdLstErr( ": Warning" );
-
- if( pClass || aId.IsId() )
- {
- StdLstErr( " in the object (" );
- if( pClass )
- {
- StdLstErr( "Type: " );
- StdLstErr( pHS->getString( pClass->GetId() ).getStr() );
- if( aId.IsId() )
- StdLstErr( ", " );
- }
- if( aId.IsId() )
- StdLstErr( aId.GetName().getStr() );
- StdLstErr( "):\n" );
- }
- else
- StdLstErr( ": " );
-}
-
-void RscError::Error( const ERRTYPE& rError, RscTop * pClass,
- const RscId & aId, const char * pMessage )
-{
- if( WRN_LOCALID == rError.GetError() ) // ignore warnings
- return;
- if( rError.IsError() )
- nErrors++;
- if( rError.IsError() || rError.IsWarning() ){
- ErrorFormat( rError, pClass, aId );
- WriteError( rError, pMessage );
- StdLstErr( "\n" );
- }
-}
-
-void RscError::FatalError( const ERRTYPE& rError, const RscId &aId,
- const char * pMessage )
-{
- if( ERR_USAGE != rError.GetError() ){
- nErrors++;
- ErrorFormat( rError, nullptr, aId );
- WriteError( rError, pMessage );
- StdLstErr( "\nTerminating compiler\n" );
- }
- else
- WriteError( rError, pMessage );
-
- exit( 1 );
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */