examples/before/e32main.cpp
author William Roberts <williamr@symbian.org>
Mon, 22 Mar 2010 21:41:09 +0000
changeset 0 fe474e3b08fb
permissions -rw-r--r--
Created the examples directory, containing components called "before" and "after" The before directory is a component which illustrates typical issues that GCC has with the Symbian source code. Compiling this component (sbs -b bld.inf -k -c armv5_udeb_gcce4_4_1) will produce multiple errors, hence the use of "-k" to keep going. The after directory is the same component with fixes applied - compiling in the after directory should produce no errors. The aim is to keep the code very closely aligned to the before component, so that they can be compared with visual diff tools such as Beyond Compare. Sometimes it's valuable to be able to compile this code with the default production compiler, (currently RVCT 2.2) so the MMP files will switch the name of the generated executable if a different compiler is used.

// Copyright (c) 2010 Symbian Foundation Ltd.
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of the License "Eclipse Public License v1.0"
// which accompanies this distribution, and is available
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
//
// Initial Contributors:
// Symbian Foundation - Initial contribution
// 
// Description:
// Entrypoint for Symbian .exe, keeps the compiler & linker happy

#include <e32std.h>

// helper function for other files which need to confuse the optimiser
int unknown(void) { return 42; }

extern int source1(void);		// from source1.cpp

GLDEF_C TInt E32Main()
    {
    // Call trivial functions in other source files, to stop them being optimised away
		return source1();
		}