diff options
Diffstat (limited to 'apps/examples/helloxx')
-rw-r--r-- | apps/examples/helloxx/Makefile | 2 | ||||
-rw-r--r-- | apps/examples/helloxx/helloxx_main.cxx | 40 |
2 files changed, 22 insertions, 20 deletions
diff --git a/apps/examples/helloxx/Makefile b/apps/examples/helloxx/Makefile index 44d880658..5cbe7dd59 100644 --- a/apps/examples/helloxx/Makefile +++ b/apps/examples/helloxx/Makefile @@ -100,7 +100,7 @@ $(CXXOBJS): %$(OBJEXT): %.cxx $(call ARCHIVE, $(BIN), $(OBJS)) @touch .built -ifeq ($(CONFIG_EXAMPLES_HELLOXX_BUILTIN),y) +ifeq ($(CONFIG_NSH_BUILTIN_APPS),y) $(BUILTIN_REGISTRY)$(DELIM)$(APPNAME)_main.bdat: $(DEPCONFIG) Makefile $(call REGISTER,$(APPNAME),$(PRIORITY),$(STACKSIZE),$(APPNAME)_main) diff --git a/apps/examples/helloxx/helloxx_main.cxx b/apps/examples/helloxx/helloxx_main.cxx index 60fd0487b..eeca52263 100644 --- a/apps/examples/helloxx/helloxx_main.cxx +++ b/apps/examples/helloxx/helloxx_main.cxx @@ -1,7 +1,7 @@ //*************************************************************************** // examples/helloxx/helloxx_main.cxx // -// Copyright (C) 2009, 2011-2012 Gregory Nutt. All rights reserved. +// Copyright (C) 2009, 2011-2013 Gregory Nutt. All rights reserved. // Author: Gregory Nutt <gnutt@nuttx.org> // // Redistribution and use in source and binary forms, with or without @@ -128,38 +128,40 @@ static CHelloWorld g_HelloWorld; * Name: helloxx_main ****************************************************************************/ -int helloxx_main(int argc, char *argv[]) +extern "C" { - // If C++ initialization for static constructors is supported, then do - // that first + int helloxx_main(int argc, char *argv[]) + { + // If C++ initialization for static constructors is supported, then do + // that first #ifdef CONFIG_HAVE_CXXINITIALIZE - up_cxxinitialize(); + up_cxxinitialize(); #endif - // Exercise an explictly instantiated C++ object + // Exercise an explictly instantiated C++ object - CHelloWorld *pHelloWorld = new CHelloWorld; - printf("helloxx_main: Saying hello from the dynamically constructed instance\n"); - pHelloWorld->HelloWorld(); + CHelloWorld *pHelloWorld = new CHelloWorld; + printf("helloxx_main: Saying hello from the dynamically constructed instance\n"); + pHelloWorld->HelloWorld(); - // Exercise an C++ object instantiated on the stack + // Exercise an C++ object instantiated on the stack #ifndef CONFIG_EXAMPLES_HELLOXX_NOSTACKCONST - CHelloWorld HelloWorld; + CHelloWorld HelloWorld; - printf("helloxx_main: Saying hello from the instance constructed on the stack\n"); - HelloWorld.HelloWorld(); + printf("helloxx_main: Saying hello from the instance constructed on the stack\n"); + HelloWorld.HelloWorld(); #endif - // Exercise an statically constructed C++ object + // Exercise an statically constructed C++ object #ifdef CONFIG_HAVE_CXXINITIALIZE - printf("helloxx_main: Saying hello from the statically constructed instance\n"); - g_HelloWorld.HelloWorld(); + printf("helloxx_main: Saying hello from the statically constructed instance\n"); + g_HelloWorld.HelloWorld(); #endif - delete pHelloWorld; - return 0; + delete pHelloWorld; + return 0; + } } - |